▼Nhmbdc | |
►Napp | |
►Nblocking_context_detail | |
Ccontext_property_aggregator | |
Ccontext_property_aggregator< MessageTuple, MessageTuples ... > | |
Ctm_runner | |
Ctm_runner< true > | |
►Nconfig_detail | |
CConfig | Class to hold an hmbdc configuration |
►Ncontext_detail | |
Ccontext_property_aggregator | |
Ccontext_property_aggregator< context_property::broadcast< c >, ContextProperties... > | |
Ccontext_property_aggregator< context_property::ipc_attacher, ContextProperties... > | |
Ccontext_property_aggregator< context_property::ipc_creator, ContextProperties... > | |
Ccontext_property_aggregator< context_property::msgless_pool, ContextProperties... > | |
Ccontext_property_aggregator< context_property::partition, ContextProperties... > | |
Ccontext_property_aggregator< context_property::pci_ipc, ContextProperties... > | |
CPoolConsumerProxy | |
CThreadCommBase | Covers the inter-thread and ipc communication fascade |
Ctm_runner | |
Ctm_runner< true > | |
►Ncontext_property | |
Cbroadcast | Context template parameter inidcating each message is sent to all clients within the Context. This is the default property of a Context |
Cipc_attacher | Context template parameter indicating the Context is ipc enabled and it can attach to an ipc transport thru a name |
Cipc_creator | Context template parameter indicating the Context is ipc enabled and it can be attached (see ipc_attacher below) to an ipc transport (thru its name) |
Cmsgless_pool | Context template parameter indicating the Context must contain a pool to run Clients and the Clients in the pool shall not receive messages - Unlike the default pool |
Cpartition | Context template parameter inidcating each message is sent to one and only one of the clients within the Context and its attached ipc Contexts if appllies |
Cpci_ipc | When processes are distributed on a PCIe board and host PC, add this property |
►Nmessagehandler_detail | |
Cdispatcher | |
Cdispatcher< CcClient, JustBytes > | |
►Nnetmap | |
►Nsendtransportengine_detail | |
CSendTransportEngine | Power a netmap port sending functions |
CNetContext | Singleton that holding netmap resources |
►CRecvTransport | Power a netmap port receiving functions |
CNoOpArb | Take all arbitrator (no arbitration at all) |
CRecvTransportEngine | Impl class, |
CSender | Fascade class for sending network messages |
CSubscribe | |
CTransportMessageHeader | |
CUnsubscribe | |
►Nrequest_reply_proxy_client_detail | |
CdeliverBasedOnUuid | |
Cdispatcher | |
Cdispatcher< CcClient, REPLY< JustBytes > > | |
CReplyDispatcher | |
CReplyDispatcher< CcClient, std::tuple< M, Messages... > > | |
CRequestReplyProxyClient | |
CSyncData | |
►Ntcpcast | |
►Nrecvsession_detail | |
CRecvSession | |
►Nrecvtransportengine_detail | |
CRecvTransportEngine | Impl class |
►Nsend_detail | |
CSendTransport | Capture the transportation mechanism |
CSendTransportEngine | |
►Nsendserver_detail | |
CSendServer | |
►Nsendsession_detail | |
CSendSession | |
CEpollFd | |
CNetContext | Singleton that holding tcpcast resources |
►CRecvTransport | Interface to power a tcpcast transport receiving functions |
CNoOpArb | Take all arbitrator (no arbitration at all) |
CSender | Fascade class for sending network messages |
CSessionDropped | This message appears in the receiver's buffer indicating a previously connected source is dropped |
CSessionStarted | This message appears in the receiver's buffer indicating a new source is connected |
CSubscribe | |
CTopicSink | |
CTopicSource | |
CTransport | |
CTransportMessageHeader | |
CUnsubscribe | |
►Nudpcast | |
►Nrecvtransportengine_detail | |
CRecvTransportEngineImpl | |
CRecvTransportImpl | Impl class |
►Nsendtransportengine_detail | |
CSendTransport | |
CSendTransportEngine | |
CEpollFd | |
CNetContext | Singleton that holding udpcast resources |
►CRecvTransport | Interface to power a multicast transport receiving functions |
CNoOpArb | Take all arbitrator (no arbitration at all) |
CSender | Fascade class for sending network messages |
CSubscribe | |
CTransport | |
CTransportMessageHeader | |
CUnsubscribe | |
►Nutils | |
►Nnetperf_detail | |
CMessage | |
CMessageAtt | |
CPeriodicReporter | |
CReceiverClient | |
CSenderClient | |
►Nnetportal_detail | |
CProxy | |
►Npingpong_detail | |
CBall | |
CPinger | |
CPonger | |
►CAsyncLoggerT | High performance async logger that doesn't penalize logging threads as much when the logging load is heavy |
CLogHeader | |
CEpollFd | |
CEpollTask | |
CNetContextUtil | |
CNetPortal | Utility that gives finer control to the user that do not rely on hmbdc Contexts |
CNetPortal< NetContext, std::tuple< SendMessages... >, std::tuple< RecvMessages... > > | |
►CBlockingContext | A BlockingContext is like a media object that facilitates the communications for the Clients that it is holding. Each Client is powered by a single OS thread. a Client needs to be started once and only once to a single BlockingContext before any messages sending happens - typically in the initialization stage in main(), undefined behavior otherwise |
Ccan_handle | |
CcreateEntry | |
CdeliverAll | |
CMCGen | |
CMCGen< std::tuple< Messages ... > > | |
CsetupConduit | |
CsetupConduit< MsgConduits, DeliverPred, std::tuple< M, Messages... > > | |
CsetupConduit< MsgConduits, void *, std::tuple< M, Messages... > > | |
CTransport | |
CTransportEntry | |
CClient | A Client represents a thread of execution/a task. The execution is managed by a Context. a Client object could participate in message dispatching as the receiver of specifed message types |
CClientWithStash | It behaves like Client, with the extra capability of storing messages received and processing them later - it is used when the user wants to process messages in a specific order other than FIFO. If a message is deemed to come too early, just stash it and move on (to the next message). The stashed messages will be delivered later at the user's choice - see the added stash and openStash functions. The stash mechanism can enforce any particular order of message processing regarless of the order of message being sent |
CContext | A Context is like a media object that facilitates the communications for the Clients that it is holding. a Client can only be added to (or started within) once to a single Context, undefined behavior otherwise. the communication model is determined by the context_property by default it is in the nature of broadcast fashion within local process indicating by broadcast<> |
CEmptyLogTrailer | |
CFlush | |
ChasMemoryAttachment | If a specific hmbdc network transport (for example tcpcast, rmcast, and rnetmap) supports message with memory attachment, the message needs to be derived from this base - as the FIRST base, so it can be handled properly by the hmbdc network transport when sending and receiving it |
ChasTag | Each message type has 16 bit tag |
CJustBytes | A special type of message only used on the receiving side |
CLastSystemMessage | Hmbdc system messages use tag values less than this one |
CLoggingT | |
CLogTrailer | |
CMemorySeg | |
CMessageHead | |
CMessageWrap | |
CMessageWrap< JustBytes > | |
CMessageWrap< REPLY< JustBytes > > | |
CREPLY | Template that convert a regular message to be a reply used in request / reply sync messaging - see RequestReply.hpp for details |
CREPLY< JustBytes > | |
CREQUEST | Template that convert a regular message to be a request used in request / reply sync messaging - see RequestReply.hpp for details |
CRequestReplySender | Synchronous request reply interface for the Network Sender |
Csingle_thread_powered_client | Trait class, if a Client can only run on a single specific thread in Pool, derive the Client from it, hmbdc will check to ensure that is the case |
CStartMemorySegTrain | |
CStuckClientPurger | |
CSyncLogger | Very straightforward logger that works synchronisely |
CTrace | |
►Ncomm | |
►Neth | |
Cpkt | |
Cpkt_n | |
Cvirt_header | |
►Ninet | |
CEndpoint | |
CHashEndpoint | |
CHashSockAddrIn | |
CSockAddrInEqual | |
CTopic | Topic as in the publish / subscribe communication paradigm |
CUuid | |
►Nforwardtupletofunc_detail | |
Cindex_tuple | |
Cmake_indices | |
Cmake_indices_impl | |
Cmake_indices_impl< I, index_tuple< Indexes... > > | |
Cmake_indices_impl< I, index_tuple< Indexes... >, T, Types... > | |
►Nnumeric | |
►Nstathistogram_detail | |
CStatHistogram | Collect sample values and keep histogram for top percentages |
CStatHistogram< T, false > | |
CStatHistogramBase | |
Cset_bits_count | |
Cset_bits_count< 0 > | |
CStat | |
►Nos | |
CBasePtrAllocator | Helping allocating object and its aggregated objects in a continouse memory |
CDefaultAllocator | Default vanilla allocate |
CDevMemBasePtrAllocator | Similar to ShmBasePtrAllocator but using dev memory |
CDownloadFile | |
CDownloadMemory | |
CExecutionIo | Execute a program as a child and capture its stdin stdout and/or stderr |
CHandleSignals | Functions to handle signals |
CShmBasePtrAllocator | Helping allocating object and its aggregated objects in a continouse shared memory |
CThreadConfigException | |
►Npattern | |
►Nblocking_buffer_detail | |
Citerator | |
►Nlf_misc | |
Cchunk_base_ptr | |
CDeadConsumer | |
Citerator | |
►Nseqarb_detail | |
►CSeqArb | |
CJ | |
CSingleThreadSeqArb | |
CBlockingBuffer | |
CGuardedSingleton | Base for the Singleton that works with SingletonGuardian |
CLockFreeBufferT | |
CMonoLockFreeBuffer | |
CPoolConsumer | |
CPoolMinus | |
CPoolT | |
CSingletonGuardian | RAII representing the lifespan of the underlying Singleton which also ganrantees the singularity of underlying Singleton |
CSingletonPlacementGuardian | Similar to SingletonGuardian, but supports placement new of the underlying Singleton |
►Ntext | |
►Nlfb_stream | |
►Nlfbstream_detail | |
CTypedStreamable | |
CTypedStreamable< SIZE_LIMIT, char const * > | |
CTypedStreamable< SIZE_LIMIT, char(&) [N]> | |
CTypedStreamable< SIZE_LIMIT, const char [N]> | |
CTypedStreamable< SIZE_LIMIT, const char(&) [N]> | |
COStringStream | |
CStreamable | |
►Nstringtrieset_detail | |
Cstring_wildcard_trie_search | |
CstringAccessTraits | |
CStringTrieSet | |
►Nstringtriesetclang_detail | |
Cconst_iterator | |
CStringTrieSetClang | |
CTypedString | |
►Ntime | |
CDailyTimer | |
CDuration | |
COneTimeTimer | |
CRater | |
CReoccuringTimer | |
CSysTime | |
CTimer | |
CTimerManager | |
Cadd_if_not_in_tuple | |
Cadd_if_not_in_tuple< T, std::tuple< Types ... > > | |
Cconcat_tuple | |
Cconcat_tuple< std::tuple< T... >, std::tuple< U... > > | |
CEndian | |
CExitCode | Exception that just has an exit code |
Cfunction_traits | |
►Cfunction_traits< ReturnType(ClassType::*)(Args...) const > | |
Carg | |
►Cfunction_traits< ReturnType(ClassType::*)(Args...)> | |
Carg | |
Cindex_in_tuple | |
Cindex_in_tuple< T, std::tuple< T, Types... > > | |
Cindex_in_tuple< T, std::tuple< U, Types... > > | |
Cindex_in_tuple< T, std::tuple<> > | |
Cinsert_in_ordered_tuple | |
Cinsert_in_ordered_tuple< pred, T, std::tuple< T0, Ts... > > | |
Cis_first_base_of | |
Cmax_size_in_tuple | |
Cmax_size_in_tuple< std::tuple< T, Ts... > > | |
Cmerge_tuple_unique | |
Cmerge_tuple_unique< Tuple1, std::tuple< T, Types... > > | |
Cmerge_tuple_unique< Tuple1, std::tuple<> > | |
Csort_tuple | |
Csort_tuple< pred, std::tuple< T, Ts... > > | |
Csort_tuple< pred, std::tuple<> > | |
Ctemplatized_aggregator | |
Ctemplatized_aggregator< target_template, std::tuple< T, Ts... > > | |
Ctemplatized_aggregator< target_template, std::tuple< target_template< T >, Ts... > > | |
Ctemplatized_subtractor | |
Ctemplatized_subtractor< target_template, std::tuple< T, Ts... > > | |
Ctemplatized_subtractor< target_template, std::tuple< target_template< T >, Ts... > > | |
CTyped | |
CUnknownException | Unknown excpetion |
CXmitEndian | |
CXmitEndianByteField | |
▼Nstd | |
Chash< hmbdc::text::TypedString< NAME, SIZE > > | |
Cnumeric_limits< hmbdc::time::Duration > | |
CInterests | Std tuple holding messages types it can dispatch except REPLYs |
CReplies | Std tuple holding REPLY messages types it can dispatch |
CRequests | Std tuple holding REQUEST messages types it can dispatch |