Classes | |
| class | Filter |
| class | Translator |
| class | Binder |
| class | BinderRegistry |
| class | Channel |
| class | ActiveTimer |
| class | ActiveTimerPointer |
| class | Quit_Handler |
| class | Connector |
| class | ConnHandler |
| class | ConnInfo |
| struct | StringPathId |
| class | IdTrait< StringPathId< separator > > |
| trait class for string pathname id type More... | |
| class | Interface |
| parent class of all kinds of interfaces More... | |
| class | LocalInterface |
| class | RemoteInterface |
| class | IdTrait< int > |
| trait class for integer ids More... | |
| struct | StructId |
| class | IdTrait< StructId > |
| trait class for sample POD struct ids More... | |
| class | LocalConnector |
| class | MapRouter |
| class | Marshaler |
| marshaling strategy objects More... | |
| class | MarshalerRegistry |
| class | Member |
| a member of channels, either Source or Destination More... | |
| class | Source< Channel, NAMESPACE_LINEAR > |
| channel src_points, where msgs are published and sent More... | |
| class | Destination< Channel, NAMESPACE_LINEAR > |
| class | Source< Channel, NAMESPACE_HIERARCHICAL > |
| channel src_points, where msgs are published and sent More... | |
| class | Destination< Channel, NAMESPACE_HIERARCHICAL > |
| class | Callback |
| class | MsgDataHolder |
| a simple reference counted msgs holder More... | |
| class | DefaultMarshaler |
| default msg marhsal/demarshal : treat data as binary block More... | |
| struct | Msg |
| the Message class for channel internal message routing More... | |
| struct | Channel_Info_Msg |
| struct | PubSub_Info_Msg |
| class | ChannelMsg_Marshaler |
| marshal/demarshal for Channel_Info_Msg More... | |
| class | PubSubMsg_Marshaler |
| marshal/demarshal for PubSub_Info_Msg More... | |
| class | Out_Bound_Msg |
| class | OutputMgr |
| mgr of output thread pool More... | |
| class | Port |
| class | RouterBase |
| class | Tcp_ConnHandler |
| class | Tcp_Acceptor |
| Tcp_Acceptor: waiting for remote connections at announced address. More... | |
| class | Tcp_Connector |
| Tcp_Connector: connect actively to remote channel. More... | |
| class | TcpSockTransport |
| transport class for connection using tcp socket More... | |
| class | TrieRouter |
| class | Unix_ConnHandler |
| class | Unix_Acceptor |
| Unix_Acceptor: waiting for remote connections at announced address. More... | |
| class | Unix_Connector |
| Unix_Connector: connect actively to remote channel. More... | |
| class | UnixSockTransport |
| transport class for connection using unix domain socket More... | |
| class | IdTrait< std::string > |
| trait class for string ids More... | |
Typedefs | |
| typedef ACE_Singleton< ActiveTimerPointer, ACE_Recursive_Thread_Mutex > | Clock |
| typedef void(* | MsgFreeCallback )(char *data) |
| channel users should provide msg free callback | |
| typedef void(* | MsgFreeCallback )(char *data) |
| msg free callback | |
Enumerations | |
| enum | Status { SUCCESS, FAILURE } |
| enum | PubSub_Scope { SCOPE_UNDEFINED = -1, SCOPE_LOCAL = 0, SCOPE_REMOTE, SCOPE_GLOBAL, SCOPE_NUMBER } |
| enum | Member_Type { MEMBER_LOCAL = 0, MEMBER_REMOTE, MEMBER_NUMBER } |
| enum | Interface_State { CONN_NULL = 0, CONN_INIT, CONN_ACTIVE } |
| enum | Interface_Type { UNIX_SOCK, INET_SOCK } |
| enum | Interface_Role { ACTIVE_ROLE, PASSIVE_ROLE } |
| enum | Oper_Type { OPER_PUBLISH = 0, OPER_UNPUBLISH, OPER_SUBSCRIBE, OPER_UNSUBSCRIBE } |
| enum | Namespace_Type { NAMESPACE_LINEAR, NAMESPACE_HIERARCHICAL, NAMESPACE_ASSOCIATIVE } |
| enum | MessageFamily { SYSTEM_MESSAGE, APPLICATION_MESSAGE } |
| ids have 2 fields: family and type More... | |
Functions | |
| template<class T> | |
| void | DefaultMsgFreeCallback (char *c) |
| delete a msg | |
| template<class T> | |
| void | DefaultMsgArrayFreeCallback (char *a) |
| delete an array passed as msg | |
| void | DefaultNoOpMsgFreeCallback (char *) |
Variables | |
| u_short | UNDEFINED_TCP_PORT = 0 |
| u_short | DEFAULT_TCP_PORT = 3456 |
| char * | unix_path_prefix = "/tmp/" |
| char * | UNDEFINED_UNIX_ADDR = "undefined" |
| char * | DEFAULT_UNIX_ADDR = "chan_def_addr" |
Clock: a simple process-wide MT-safe timer
|
|
|
|
|
msg free callback 2 reasons we cannot directly use ACE_Message_Block for all msg passing: 1> channel msg types are not limited to integers. 2> the design of ACE_Message_Block refuses to free any foreign msg payload whose memory is not mallocated by msg_block. We have to support "Deleting foriegn msgs from inside channel" by asking the msg sender/creator to provide msg_free callback functions, which are better solution than simple-delete because we can call some foriegn message class destructors we only use ACE_Message_Block for queing msgs in ACE_Message_Que so here is a simplified design based on ACE_Message_Block. this Msg class only acting as holder of foriegn data, never allocate data space. |
|
|
channel users should provide msg free callback
Definition at line 30 of file Marshaler.h. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ids have 2 fields: family and type definition of sample POD struct ids Definition at line 151 of file LinearIdTrait.h. |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
delete an array passed as msg
|
|
||||||||||
|
delete a msg
|
|
|
use no-op free callback when : 1. msg data is static or on stack 2. senders want to keep the msgs and dont want receiver to delete it |
|
|
Definition at line 67 of file TcpSockConnector.h. |
|
|
Definition at line 68 of file UnixSockConnector.h. |
|
|
Definition at line 66 of file TcpSockConnector.h. Referenced by channel::TcpSockTransport< Channel >::close(), channel::TcpSockTransport< Channel >::open(), and channel::TcpSockTransport< Channel >::TcpSockTransport(). |
|
|
Definition at line 67 of file UnixSockConnector.h. Referenced by channel::UnixSockTransport< Channel >::close(), cvm::cvm::CvmBaseConnector< Chan > >::init(), channel::UnixSockTransport< Channel >::open(), and channel::UnixSockTransport< Channel >::UnixSockTransport(). |
|
|
Definition at line 66 of file UnixSockConnector.h. Referenced by channel::UnixSockTransport< Channel >::connect(), and channel::UnixSockTransport< Channel >::open(). |
1.4.6-NO