111 #include <clIocManagementApi.h> 
  114 #include <clVersion.h> 
  118 #include <clRadixTree.h> 
  156 #define CL_EO_MAX_NO_FUNC                64 
  174 #define CL_EO_CLIENT_BIT_SHIFT              6 
  179 #define CL_EO_FN_MASK                       (0x3F) 
  181 #define CL_EO_CLIENT_ID_MASK                (ClUint32T)(~0U >> CL_EO_CLIENT_BIT_SHIFT) 
  186 #define CL_EO_GET_FULL_FN_NUM(cl, fn)       (((cl) << CL_EO_CLIENT_BIT_SHIFT) | \ 
  243     CL_DEBUG_CLIENT_TABLE_ID,
 
  248     CL_TXN_CLIENT_TABLE_ID,
 
  300     CL_AMS_MGMT_SERVER_TABLE2_ID,
 
  312 #define CL_EO_USER_CLIENT_ID_START      CL_EO_CLOVIS_RESERVED_CLIENTID_END 
  321 #define CL_EO_SERVER_COOKIE_BIT_SIZE        8 
  323 #define CL_EO_SERVER_COOKIE_BASE(cId)       ((cId) << (CL_EO_SERVER_COOKIE_BIT_SIZE)) 
  331 #define CL_EO_EVENT_CHANNEL_NAME "CL_EO_EVENT_CHANNEL_NAME" 
  332 #define CL_EO_EVENT_SUBSCRIBE_FLAG (CL_EVENT_CHANNEL_SUBSCRIBER | CL_EVENT_GLOBAL_CHANNEL) 
  333 #define CL_EO_EVENT_DEFAULT_FILTER NULL 
  357     CL_EO_NATIVE_COMPONENT_COOKIE_BASE
 
  359     CL_EO_EO_MGR_SERVER_COOKIE_ID
 
  361     CL_EO_COR_SERVER_COOKIE_ID
 
  363     CL_EO_EVT_EVENT_DELIVERY_COOKIE_ID
 
  365     CL_EO_DEBUG_OBJECT_COOKIE_ID
 
  366                     = CL_EO_SERVER_COOKIE_BASE(CL_DEBUG_CLIENT_TABLE_ID),
 
  367     CL_EO_RMD_CLIENT_COOKIE_ID
 
  390        CL_IN   ClEoDataT data,
 
  394 typedef struct ClEoPayloadWithReplyCallbackServer
 
  399 } ClEoPayloadWithReplyCallbackServerT;
 
  401 typedef struct ClEoPayloadWithReplyCallbackClient
 
  405 } ClEoPayloadWithReplyCallbackClientT;
 
  407 typedef struct ClEoPayloadWithReplyCallbackTableClient
 
  410     ClEoPayloadWithReplyCallbackClientT *funTable;
 
  411     ClUint32T funTableSize;
 
  412 } ClEoPayloadWithReplyCallbackTableClientT;
 
  414 typedef struct ClEoPayloadWithReplyCallbackTableServer
 
  417     ClEoPayloadWithReplyCallbackServerT *funTable;
 
  418     ClUint32T funTableSize;
 
  419 } ClEoPayloadWithReplyCallbackTableServerT;
 
  456 #define __CLIENT_RADIX_TREE_INDEX(fun_id, version_code) ( (((fun_id & CL_EO_FN_MASK) << CL_VERSION_SHIFT) ) | ((version_code) & CL_VERSION_MASK) ) 
  459     ClUint32T maxClients;
 
  460     ClRadixTreeHandleT funTable;
 
  464     ClUint32T maxClients;
 
  465     ClRadixTreeHandleT funTable;
 
  617    CL_IN   ClEoDataT                   eoArg,
 
  651     CL_IN ClUint8T              priority,
 
  652     CL_IN ClUint8T              protoType,
 
  653     CL_IN ClUint32T             length,
 
  691 #define EO_CLIENT_SYM(sym) sym##Client 
  692 #define CL_EO_CLIENT_SYM_MOD(sym, mod) EO_CLIENT_SYM(sym##mod) 
  693 #define CL_EO_SERVER_SYM_MOD(sym, mod) sym##mod 
  695 #if defined (__SERVER__) 
  697 #define CL_EO_CALLBACK_TABLE_DECL(sym)  ClEoPayloadWithReplyCallbackServerT VDECL(sym) 
  698 #define CL_EO_CALLBACK_TABLE_VER_DECL(sym, rel, major, minor) ClEoPayloadWithReplyCallbackServerT VDECL_VER(sym, rel, major, minor) 
  699 #define CL_EO_CALLBACK_TABLE_LIST_DECL(sym, module) ClEoPayloadWithReplyCallbackTableServerT sym##module 
  700 #define CL_EO_CALLBACK_TABLE_LIST_DEF(clnt, sym) { \ 
  701         clnt, VDECL(sym), (ClUint32T)sizeof(VDECL(sym))/sizeof(VDECL(sym)[0]) } 
  702 #define CL_EO_CALLBACK_TABLE_LIST_VER_DEF(clnt, sym, rel, major, minor) { \ 
  703         clnt, VDECL_VER(sym, rel, major, minor), \ 
  704             (ClUint32T)sizeof(VDECL_VER(sym, rel, major, minor))/sizeof(VDECL_VER(sym, rel, major, minor)[0]) } 
  708 #define CL_EO_CALLBACK_TABLE_DECL(sym)  ClEoPayloadWithReplyCallbackClientT VDECL(EO_CLIENT_SYM(sym)) 
  709 #define CL_EO_CALLBACK_TABLE_VER_DECL(sym, rel, major, minor) ClEoPayloadWithReplyCallbackClientT VDECL_VER(EO_CLIENT_SYM(sym), rel, major, minor) 
  710 #define CL_EO_CALLBACK_TABLE_LIST_DECL(sym, module) ClEoPayloadWithReplyCallbackTableClientT EO_CLIENT_SYM(sym##module) 
  711 #define CL_EO_CALLBACK_TABLE_LIST_DEF(clnt, sym) { clnt, VDECL(EO_CLIENT_SYM(sym) ), \ 
  712             (ClUint32T)sizeof(VDECL(EO_CLIENT_SYM(sym))) / sizeof(VDECL(EO_CLIENT_SYM(sym))[0]) } 
  713 #define CL_EO_CALLBACK_TABLE_LIST_VER_DEF(clnt, sym, rel, major, minor) { \ 
  714         clnt, VDECL_VER(EO_CLIENT_SYM(sym), rel, major, minor), \ 
  715             (ClUint32T) sizeof(VDECL_VER(EO_CLIENT_SYM(sym), rel, major, minor)) / sizeof(VDECL_VER(EO_CLIENT_SYM(sym), rel, major, minor)[0]) } 
  718 #define CL_EO_CALLBACK_TABLE_LIST_DEF_NULL     { 0, NULL, 0 } 
  720 extern ClEoPayloadWithReplyCallbackTableClientT EO_CLIENT_SYM(gAspFuncTable)[];
 
  723                               ClEoPayloadWithReplyCallbackTableServerT *table);
 
  726                                         ClEoPayloadWithReplyCallbackTableServerT *table,
 
  730                                 ClEoPayloadWithReplyCallbackTableServerT *table);
 
  732 ClBoolT clEoClientTableFilter(
ClIocPortT eoPort, ClUint32T clientID);
 
  734 ClRcT clEoClientTableRegister(ClEoPayloadWithReplyCallbackTableClientT *clientTable,
 
  805         CL_IN   ClUint32T                   func,
 
  810 extern ClRcT clEoWalkWithVersion(
 
  812         CL_IN   ClUint32T                   func,
 
  847         CL_IN   ClUint32T           func);
 
  884         CL_IN ClUint32T             clientId,
 
  886         CL_IN ClEoDataT             data,
 
  887         CL_IN ClUint32T             nFuncs);
 
  889 extern ClRcT clEoClientInstallTable(
 
  891         CL_IN ClUint32T             clientId,
 
  892         CL_IN ClEoDataT             data,
 
  893         CL_IN ClEoPayloadWithReplyCallbackServerT    *pFuncs,
 
  894         CL_IN ClUint32T             nFuncs);
 
  925         CL_IN ClUint32T             clientId);
 
  929                                       ClEoPayloadWithReplyCallbackServerT *pfunTable,
 
  959         CL_IN ClUint32T             clientId,
 
  960         CL_IN ClEoDataT             data);
 
  990         CL_IN   ClUint32T           clientId,
 
 1031         CL_IN ClUint32T                     iFuncNum,
 
 1066         CL_IN ClUint32T                         iFuncNum);
 
 1097         CL_IN ClUint32T             type,
 
 1129         CL_IN   ClUint32T   type,
 
 1318 extern ClUint8T clEoBasicLibs[];
 
 1320 extern ClUint8T clEoClientLibs[];