51 #include <clArchHeaders.h>
90 #define CL_MIN(a,b) ( (a) < (b) ? (a) : (b) )
92 #define CL_MAX(a,b) ( (a) > (b) ? (a) : (b) )
95 #define CL_ROUNDUP(VAL,BASE) (((VAL) + (BASE) - 1)/(BASE) * (BASE))
97 #define CL_ROUNDDOWN(VAL,BASE) ((VAL)/(BASE) * (BASE))
100 #define CL_SIZEOF_ARRAY(__ArrayName__) sizeof((__ArrayName__)) / sizeof((__ArrayName__)[0])
112 typedef unsigned long long ClUint64T;
113 typedef signed long long ClInt64T;
115 typedef unsigned int ClUint32T;
116 typedef signed int ClInt32T;
117 typedef unsigned short ClUint16T;
118 typedef signed short ClInt16T;
119 typedef unsigned char ClUint8T;
120 typedef signed char ClInt8T;
121 typedef char ClCharT;
122 typedef signed int ClFdT;
128 typedef unsigned long ClWordT;
131 typedef ClUint16T ClBoolT;
133 typedef ClWordT ClPidT;
136 #define CL_MICRO_TO_NANO 1000ULL
138 #define CL_MILLI_TO_MICRO 1000ULL
140 #define CL_SEC_TO_MILLI 1000ULL
142 #define CL_MILLI_TO_NANO (CL_MICRO_TO_NANO * CL_MILLI_TO_MICRO)
144 #define CL_SEC_TO_NANO (CL_MILLI_TO_NANO * CL_SEC_TO_MILLI)
146 #define CL_TIME_END 0x7fffffffffffffffULL
148 #define CL_TIME_FOREVER 0x7fffffffffffffffULL
152 typedef ClUint64T ClHandleT;
157 typedef ClUint64T ClInvocationT;
158 typedef ClUint64T ClSelectionObjectT;
159 typedef ClUint64T ClNtfIdentifierT;
160 typedef ClInt8T *ClAddrT;
161 typedef void* ClPtrT;
178 typedef union cl_u64_u
191 #define CL_MAX_NAME_LENGTH 256
236 ClCharT *
clStrdup(
const ClCharT *str);
238 ClBoolT clParseEnvBoolean(ClCharT* envvar);
240 ClCharT *clParseEnvStr(
const ClCharT* envvar);
242 ClInt32T clCreatePipe(ClInt32T fds[2], ClUint32T numMsgs, ClUint32T msgSize);
244 ClUint32T clBinaryPower(ClUint32T size);
260 CL_DISPATCH_BLOCKING = 3,
266 #define CL_FORCED_TO_8BITS 0xff
267 #define CL_FORCED_TO_16BITS 0xffff
268 #define CL_FORCED_TO_32BITS 0xffffffff
269 #define CL_BITS_PER_BYTE 8
270 #define CL_BIT(X) (0x1 << (X))
273 typedef enum ClMetricId
281 typedef struct ClMetric
283 const ClCharT *pType;
285 ClUint32T maxThreshold;
286 ClUint32T currentThreshold;
287 ClUint32T maxOccurences;
288 ClUint32T numOccurences;
291 #define CL_METRIC_STR(id) \
292 ((id) == CL_METRIC_ALL) ? "all" : \
293 ((id) == CL_METRIC_CPU) ? "cpu" : \
294 ((id) == CL_METRIC_MEM) ? "mem" : \
467 CL_CID_BACKING_STORAGE = 0x37,
470 CL_CID_JOBQUEUE = 0x38,
472 CL_CID_THREADPOOL = 0x39,
473 CL_CID_TASKPOOL = 0x39,
480 CL_CID_LEAKY_BUCKET = 0x3b,
496 typedef struct ClWaterMark
505 CL_WM_HIGH_LIMIT = 1,
518 #define CL_WEAK __attribute__((weak))
520 #define CL_EO_ACTION_CUSTOM (1<<0)
521 #define CL_EO_ACTION_EVENT (1<<1)
522 #define CL_EO_ACTION_LOG (1<<2)
523 #define CL_EO_ACTION_NOT (1<<3)
524 #define CL_EO_ACTION_MAX (1<<31) // ClUnt8T type bieng used for bitMap
526 typedef struct ClEoActionInfo {
542 extern ClStringT *clStringDup(
const ClStringT *);
549 #define clNamePrintf(name, ...) \
552 name.length = snprintf(name.value, CL_MAX_NAME_LENGTH - 1, __VA_ARGS__);\
553 name.value[CL_MIN(name.length, CL_MAX_NAME_LENGTH - 1)] = '\0'; \
557 #define CL_DEPRECATED __attribute__((__deprecated__))
558 #define CL_PRINTF_FORMAT(fmtPos, argPos) __attribute__((format(printf, fmtPos, argPos)))
560 #define CL_DEPRECATED
561 #define CL_PRINTF_FORMAT(fmtPos, argPos)