OpenClovis Logo

Classes | Macros | Typedefs | Enumerations | Functions
clIocApi.h File Reference

Header file of Ioc Data Structures and APIs. More...

#include <clCommon.h>
#include <clBufferApi.h>
#include <clIocServices.h>
#include <clIocProtocols.h>
#include <clIocErrors.h>

Go to the source code of this file.

Classes

union  ClIocAddress
 IOC address. More...
struct  ClIocPhysicalAddress
 The IOC Physical address of an application's communication end point. More...
struct  ClIocRecvOption
 IOC receive options. More...
struct  ClIocRecvParam
 The IOC receive returns this structure along with the message. More...
struct  ClIocSendOption
 Send related options. More...
struct  ClIocTlInfo
 Transparency layer parameters. More...
struct  ClIocTLMappingT
 Data-type for holding the physical address and its state. More...

Macros

#define CL_IOC_ADDRESS_TYPE_GET(param)   ((ClUint32T)((*((ClUint64T*)(param))) >> CL_IOC_ADDRESS_TYPE_SHIFT_DWORD))
 Macro to determine Type of address.
#define CL_IOC_BROADCAST_ADDRESS   0xffffffff
 This address can be used to broadcast a message.
#define CL_IOC_BROADCAST_ADDRESS_TYPE   0xff
 Broadcast address.
#define CL_IOC_GEO_ADDR_MAX_LENGTH   128
 The maximum size of the geographical address.
#define CL_IOC_HEADER_VERSION   1
 The version of IOC.
#define CL_IOC_LINK_DOWN   3
 The link is down.
#define CL_IOC_LINK_UP   2
 The link is up.
#define CL_IOC_LOGICAL_ADDRESS_FORM(compId)   CL_IOC_ADDRESS_FORM(CL_IOC_LOGICAL_ADDRESS_TYPE, 0 , compId)
 Macro is used to form logical IOC address.
#define CL_IOC_LOGICAL_ADDRESS_TYPE   1
 Logical address type.
#define CL_IOC_MULTICAST_ADDRESS_FORM(addr, compId)   CL_IOC_ADDRESS_FORM(CL_IOC_MULTICAST_ADDRESS_TYPE, addr, compId)
 Macro is used to form multicast IOC address.
#define CL_IOC_MULTICAST_ADDRESS_TYPE   2
 Multicast address type.
#define CL_IOC_NODE_DOWN   0
 Node is down.
#define CL_IOC_NODE_UP   1
 Node is up.
#define CL_IOC_PHYSICAL_ADDRESS_TYPE   0
 Physical address type.
#define CL_IOC_RELIABLE_MESSAGING   (1<<0)
 Communication port creation related flags .
#define CL_IOC_RESERVED_ADDRESS   0
 This address can be used in place of local IOC address.
#define CL_IOC_TIMEOUT_FOREVER   ~0U
 Infinite timeout.
#define CL_IOC_TL_ACTIVE   0
 HA state for Registration with Transparency Layer.
#define CL_IOC_TL_STDBY   1
 HA state for Registration with Transparency Layer.
#define CL_IOC_UNRELIABLE_MESSAGING   0
 Communication port creation related flags.

Typedefs

typedef union ClIocAddress ClIocAddressT
 IOC address.
typedef ClUint32T ClIocCommPortFlagsT
 Port Type.
typedef ClWordT ClIocCommPortHandleT
 The Communication port handle.
typedef ClUint64T ClIocLogicalAddressT
 IOC Logical address.
typedef enum ClIocMessageOption ClIocMessageOptionT
 The send message option.
typedef ClUint64T ClIocMulticastAddressT
 IOC Multicast address.
typedef ClUint32T ClIocNodeAddressT
 The IOC node address.
typedef struct ClIocPhysicalAddress ClIocPhysicalAddressT
 The IOC Physical address of an application's communication end point.
typedef ClUint32T ClIocPortT
 The IOC communication port.
typedef struct ClIocRecvOption ClIocRecvOptionT
 IOC receive options.
typedef struct ClIocRecvParam ClIocRecvParamT
 The IOC receive returns this structure along with the message.
typedef struct ClIocSendOption ClIocSendOptionT
 Send related options.
typedef enum ClIocTLContext ClIocTLContextT
 Transparency layer context.
typedef struct ClIocTlInfo ClIocTLInfoT
 Transparency layer parameters.
typedef ClHandleT ClIocToBindHandleT
 The Transport handle.

Enumerations

enum  ClIocMessageOption {
  CL_IOC_PERSISTENT_MSG = 0,
  CL_IOC_NON_PERSISTENT_MSG
}
 The send message option. More...
enum  ClIocNotificationActionT {
  CL_IOC_NOTIFICATION_DISABLE = 0,
  CL_IOC_NOTIFICATION_ENABLE
}
 This defines all notification related actions that can be performed on a port. More...
enum  ClIocPriorityT {
  CL_IOC_DEFAULT_PRIORITY = 0,
  CL_IOC_HIGH_PRIORITY = 1,
  CL_IOC_LOW_PRIORITY = 2 ,
  CL_IOC_RESERVED_PRIORITY = 5 ,
  CL_IOC_MAX_PRIORITIES = CL_IOC_RESERVED_PRIORITY_USER_END + 1
}
 This defines all the priorities that can be used with IOC. More...
enum  ClIocTLContext {
  CL_IOC_TL_GLOBAL_SCOPE,
  CL_IOC_TL_LOCAL_SCOPE
}
 Transparency layer context. More...

Functions

ClRcT clIocCommPortCreate (CL_IN ClIocPortT portId, CL_IN ClIocCommPortFlagsT portType, CL_OUT ClIocCommPortHandleT *pIocCommPortHdl)
 Creates a communication port.
ClRcT clIocCommPortDelete (CL_IN ClIocCommPortHandleT iocCommPortHdl)
 Deletes the communication port.
ClRcT clIocCommPortFdGet (CL_IN ClIocCommPortHandleT portHandle, CL_INOUT ClInt32T *pSd)
 Gets the socket descriptor used by communication of a CommPort.
ClRcT clIocCommPortGet (CL_IN ClIocCommPortHandleT pIocCommPort, CL_OUT ClIocPortT *pPortId)
 Returns the port Id.
ClRcT clIocCommPortReceiverUnblock (CL_IN ClIocCommPortHandleT commPortHdl)
 Unblocks all receive calls.
ClIocNodeAddressT clIocLocalAddressGet (void)
 Returns the local IOC node addrress.
ClRcT clIocMulticastDeregister (CL_IN ClIocMcastUserInfoT *pMcastInfo)
 De-registers the application against a multicast address with the IOC Multicast Layer.
ClRcT clIocMulticastDeregisterAll (CL_IN ClIocMulticastAddressT *pMcastAddress)
 De-registers the application against a multicast address with the IOC Multicast Layer.
ClRcT clIocMulticastRegister (CL_IN ClIocMcastUserInfoT *pMcastInfo)
 Registers an application against a multicast address with IOC Multicast Layer.
ClRcT clIocPortNotification (CL_IN ClIocPortT port, CL_IN ClIocNotificationActionT action)
 Enables/Disables the notifications form IOC on the port.
ClRcT clIocReceive (CL_IN ClIocCommPortHandleT commPortHdl, CL_IN ClIocRecvOptionT *pRecvOption, CL_OUT ClBufferHandleT userMsg, CL_OUT ClIocRecvParamT *pRecvParam)
 Receives message on communication port.
ClRcT clIocSend (CL_IN ClIocCommPortHandleT commPortHandle, CL_IN ClBufferHandleT message, CL_IN ClUint8T protoType, CL_IN ClIocAddressT *pDestAddr, CL_IN ClIocSendOptionT *pSendOption)
 Sends message on a communication port.
ClRcT clIocTransparencyDeregister (CL_IN ClUint32T compId)
 De-registers the application with Transparency Layer.
ClRcT clIocTransparencyRegister (CL_IN ClIocTLInfoT *pTLInfo)
 Registers an application's logical address with Transparency Layer.
ClRcT clIocVersionCheck (CL_IN ClVersionT *pVersion)
 Checks for appropriate version of application.

Detailed Description

Header file of Ioc Data Structures and APIs.


Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen