hmbdc
simplify-high-performance-messaging-programming
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456]
 Chmbdc::add_if_not_in_tuple< T, Tuple >
 Chmbdc::add_if_not_in_tuple< T, std::tuple< Types ... > >
 Chmbdc::function_traits< ReturnType(ClassType::*)(Args...) const >::arg< i >
 Chmbdc::function_traits< ReturnType(ClassType::*)(Args...)>::arg< i >
 Chmbdc::os::BasePtrAllocatorHelping allocating object and its aggregated objects in a continouse memory
 Chmbdc::pattern::BlockingBuffer
 Chmbdc::app::BlockingContext< MessageTuples >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
 Chmbdc::app::context_property::broadcast< max_parallel_consumer >Context template parameter inidcating each message is sent to all clients within the Context. This is the default property of a Context
 Chmbdc::app::BlockingContext< MessageTuples >::can_handle< Message >
 Chmbdc::pattern::lf_misc::chunk_base_ptr< Seq >
 Chmbdc::pattern::lf_misc::chunk_base_ptr< uint64_t >
 Chmbdc::app::Client< CcClient, Messages >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
 Chmbdc::app::Client< AsyncLoggerT< Ctx >, LoggingT< Ctx::MAX_MESSAGE_SIZE > >
 Chmbdc::app::Client< CcClient, Messages... >
 Chmbdc::app::Client< Pinger< Sender >, Ball >
 Chmbdc::app::Client< Ponger< Sender >, Ball >
 Chmbdc::app::Client< ReceiverClient, Message, MessageAtt >
 Chmbdc::app::Client< RecvTransportEngine< OutBuffer, MsgArbitrator > >
 Chmbdc::app::Client< RecvTransportEngine< OutputBuffer, MsgArbitrator > >
 Chmbdc::app::Client< RecvTransportEngineImpl< OutputBuffer, MsgArbitrator > >
 Chmbdc::app::Client< SenderClient >
 Chmbdc::app::Client< SendTransportEngine >
 Chmbdc::app::Client< StuckClientPurger< Buffer > >
 Chmbdc::concat_tuple< Tuple0, Tuple1 >
 Chmbdc::concat_tuple< std::tuple< T... >, std::tuple< U... > >
 Chmbdc::text::stringtriesetclang_detail::const_iterator
 Chmbdc::app::blocking_context_detail::context_property_aggregator< MessageTuples >
 Chmbdc::app::context_detail::context_property_aggregator< ContextProperties >
 Chmbdc::app::context_detail::context_property_aggregator< ContextProperties... >
 Chmbdc::app::blocking_context_detail::context_property_aggregator< MessageTuple, MessageTuples ... >
 Chmbdc::app::BlockingContext< MessageTuples >::createEntry
 Chmbdc::os::DefaultAllocatorDefault vanilla allocate
 Chmbdc::app::BlockingContext< MessageTuples >::deliverAll
 Chmbdc::app::request_reply_proxy_client_detail::deliverBasedOnUuid
 Chmbdc::app::request_reply_proxy_client_detail::dispatcher< CcClient, Message >
 Chmbdc::app::messagehandler_detail::dispatcher< CcClient, Message >
 Chmbdc::app::messagehandler_detail::dispatcher< CcClient, JustBytes >
 Chmbdc::app::request_reply_proxy_client_detail::dispatcher< CcClient, REPLY< JustBytes > >
 Chmbdc::os::DownloadFile
 Chmbdc::os::DownloadMemory
 Chmbdc::time::Duration
 Chmbdc::app::EmptyLogTrailer
 Chmbdc::Endian
 Chmbdc::comm::inet::Endpoint
 Chmbdc::app::utils::EpollFd
 Cexception
 Chmbdc::os::ExecutionIoExecute a program as a child and capture its stdin stdout and/or stderr
 Chmbdc::function_traits< T >
 Chmbdc::function_traits< ReturnType(ClassType::*)(Args...) const >
 Chmbdc::function_traits< ReturnType(ClassType::*)(Args...)>
 Chmbdc::pattern::GuardedSingleton< Singleton >Base for the Singleton that works with SingletonGuardian
 Chmbdc::pattern::GuardedSingleton< AsyncLoggerT< Ctx > >
 Chmbdc::pattern::GuardedSingleton< EpollTask >
 Chmbdc::pattern::GuardedSingleton< NetContext >
 Chmbdc::pattern::GuardedSingleton< SyncLogger >
 Chmbdc::os::HandleSignalsFunctions to handle signals
 Chash
 Cstd::hash< hmbdc::text::TypedString< NAME, SIZE > >
 Chmbdc::comm::inet::HashEndpoint< asio_endpoint >
 Chmbdc::comm::inet::HashSockAddrIn< sockaddr_in >
 Chmbdc::app::hasMemoryAttachmentIf 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
 Chmbdc::app::hasTag< tag >Each message type has 16 bit tag
 Chmbdc::app::hasTag< 0 >
 Chmbdc::app::hasTag< 1001 >
 Chmbdc::app::hasTag< 1002 >
 Chmbdc::app::hasTag< 101 >
 Chmbdc::app::hasTag< 102 >
 Chmbdc::app::hasTag< 201 >
 Chmbdc::app::hasTag< 202 >
 Chmbdc::app::hasTag< 203 >
 Chmbdc::app::hasTag< 204 >
 Chmbdc::app::hasTag< 205 >
 Chmbdc::app::hasTag< 206 >
 Chmbdc::app::hasTag< 3 >
 Chmbdc::app::hasTag< 301 >
 Chmbdc::app::hasTag< 302 >
 Chmbdc::app::hasTag< 4 >
 Chmbdc::app::hasTag< 5 >
 Chmbdc::app::hasTag< 6 >
 Chmbdc::app::hasTag< 7 >
 Chmbdc::app::hasTag< 999 >
 Chmbdc::app::hasTag< Message::typeTag >
 Chmbdc::index_in_tuple< T, Tuple >
 Chmbdc::index_in_tuple< T, std::tuple< T, Types... > >
 Chmbdc::index_in_tuple< T, std::tuple< U, Types... > >
 Chmbdc::index_in_tuple< T, std::tuple<> >
 Chmbdc::forwardtupletofunc_detail::index_tuple<... >
 Chmbdc::insert_in_ordered_tuple< pred, T, Ts >
 Chmbdc::insert_in_ordered_tuple< pred, T, std::tuple< T0, Ts... > >
 CInterestsStd tuple holding messages types it can dispatch except REPLYs
 Chmbdc::app::context_property::ipc_attacherContext template parameter indicating the Context is ipc enabled and it can attach to an ipc transport thru a name
 Chmbdc::app::context_property::ipc_creatorContext template parameter indicating the Context is ipc enabled and it can be attached (see ipc_attacher below) to an ipc transport (thru its name)
 Chmbdc::is_first_base_of< Base, Derived >
 Chmbdc::pattern::blocking_buffer_detail::iterator
 Chmbdc::pattern::lf_misc::iterator< Seq >
 Chmbdc::pattern::seqarb_detail::SeqArb< PARTICIPANT_COUNT, Seq, THREADSAFE >::J
 Chmbdc::pattern::LockFreeBufferT< MAX_PARALLE_CONSUMER >
 Chmbdc::app::utils::AsyncLoggerT< Ctx >::LogHeader
 Chmbdc::app::LogTrailer
 Chmbdc::forwardtupletofunc_detail::make_indices_impl< I, IndexTuple, Types >
 Chmbdc::forwardtupletofunc_detail::make_indices_impl< 0, index_tuple<>, Types... >
 Chmbdc::forwardtupletofunc_detail::make_indices_impl< I, index_tuple< Indexes... > >
 Chmbdc::forwardtupletofunc_detail::make_indices_impl< I, index_tuple< Indexes... >, T, Types... >
 Chmbdc::max_size_in_tuple< Tuple >
 Chmbdc::max_size_in_tuple< std::tuple< T, Ts... > >
 Chmbdc::app::BlockingContext< MessageTuples >::MCGen< Tuple >
 Chmbdc::app::BlockingContext< MessageTuples >::MCGen< Interests >
 Chmbdc::app::BlockingContext< MessageTuples >::MCGen< std::tuple< Messages ... > >
 Chmbdc::merge_tuple_unique< Tuple1, Tuple2 >
 Chmbdc::merge_tuple_unique< Tuple1, std::tuple< T, Types... > >
 Chmbdc::merge_tuple_unique< Tuple1, std::tuple<> >
 Chmbdc::app::MessageHead
 Chmbdc::pattern::MonoLockFreeBuffer
 Chmbdc::app::context_property::msgless_poolContext 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
 Chmbdc::app::utils::NetContextUtil
 Chmbdc::app::utils::NetPortal< NetContext, SendMessageTuple, RecvMessageTuple >Utility that gives finer control to the user that do not rely on hmbdc Contexts
 Chmbdc::app::utils::NetPortal< NetContext, std::tuple< SendMessages... >, std::tuple< RecvMessages... > >
 Chmbdc::app::netmap::RecvTransport::NoOpArbTake all arbitrator (no arbitration at all)
 Chmbdc::app::tcpcast::RecvTransport::NoOpArbTake all arbitrator (no arbitration at all)
 Chmbdc::app::udpcast::RecvTransport::NoOpArbTake all arbitrator (no arbitration at all)
 Cnumeric_limits
 Chmbdc::app::utils::NetPortal< NetContext, std::tuple< SendMessages... >, std::tuple< RecvMessages... > >::OneBuffer
 Chmbdc::text::lfb_stream::OStringStream< Buffer, BufferItem, STREAMABLE_TYPE_TAG >
 Chmbdc::text::lfb_stream::OStringStream< Ctx::Buffer, MessageWrap< LoggingT< Ctx::MAX_MESSAGE_SIZE > >, LoggingT< Ctx::MAX_MESSAGE_SIZE >::typeTag >
 Chmbdc::app::context_property::partitionContext 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
 Chmbdc::app::context_property::pci_ipcWhen processes are distributed on a PCIe board and host PC, add this property
 Chmbdc::comm::eth::pkt
 Chmbdc::comm::eth::pkt_n< N >
 Chmbdc::pattern::PoolConsumer
 Chmbdc::pattern::PoolMinus
 Chmbdc::pattern::PoolT< Buffer >
 Cptree
 Chmbdc::time::Rater
 Chmbdc::app::tcpcast::recvsession_detail::RecvSession< OutputBuffer, MsgArbitrator >
 Chmbdc::app::netmap::RecvTransportPower a netmap port receiving functions
 CRepliesStd tuple holding REPLY messages types it can dispatch
 Chmbdc::app::request_reply_proxy_client_detail::ReplyDispatcher< CcClient, Messages >
 Chmbdc::app::request_reply_proxy_client_detail::ReplyDispatcher< CcClient, std::tuple< M, Messages... > >
 Chmbdc::app::request_reply_proxy_client_detail::RequestReplyProxyClient< CcClient >
 Chmbdc::app::RequestReplySender< CcSender >Synchronous request reply interface for the Network Sender
 Chmbdc::app::RequestReplySender< Sender >
 CRequestsStd tuple holding REQUEST messages types it can dispatch
 Cruntime_error
 Chmbdc::app::tcpcast::sendserver_detail::SendServer
 Chmbdc::app::tcpcast::sendsession_detail::SendSession
 Chmbdc::pattern::seqarb_detail::SeqArb< PARTICIPANT_COUNT, Seq, THREADSAFE >
 Chmbdc::pattern::seqarb_detail::SeqArb< PARTICIPANT_COUNT, Seq, false >
 Cset_base_hook
 Chmbdc::numeric::set_bits_count< v >
 Chmbdc::numeric::set_bits_count< 0 >
 Chmbdc::app::BlockingContext< MessageTuples >::setupConduit< MsgConduits, DeliverPred, Tuple >
 Chmbdc::app::BlockingContext< MessageTuples >::setupConduit< MsgConduits, DeliverPred, std::tuple< M, Messages... > >
 Chmbdc::app::BlockingContext< MessageTuples >::setupConduit< MsgConduits, void *, std::tuple< M, Messages... > >
 Chmbdc::app::single_thread_powered_clientTrait 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
 Chmbdc::pattern::seqarb_detail::SingleThreadSeqArb< PARTICIPANT_COUNT, Seq >
 Chmbdc::pattern::SingletonGuardian< Singleton >RAII representing the lifespan of the underlying Singleton which also ganrantees the singularity of underlying Singleton
 Chmbdc::pattern::SingletonPlacementGuardian< Singleton >Similar to SingletonGuardian, but supports placement new of the underlying Singleton
 Chmbdc::comm::inet::SockAddrInEqual< sockaddr_in >
 Chmbdc::sort_tuple< pred, Tuple >
 Chmbdc::sort_tuple< pred, std::tuple< T, Ts... > >
 Chmbdc::sort_tuple< pred, std::tuple<> >
 Chmbdc::numeric::Stat< T >
 Chmbdc::numeric::Stat< hmbdc::time::Duration >
 Chmbdc::numeric::stathistogram_detail::StatHistogramBase
 Chmbdc::text::lfb_stream::Streamable
 Chmbdc::text::stringtrieset_detail::stringAccessTraits
 Chmbdc::text::StringTrieSetClang
 Chmbdc::app::request_reply_proxy_client_detail::SyncData
 Chmbdc::time::SysTime
 Chmbdc::templatized_aggregator< target_template, Tuple >
 Chmbdc::templatized_aggregator< target_template, std::tuple< T, Ts... > >
 Chmbdc::templatized_aggregator< target_template, std::tuple< target_template< T >, Ts... > >
 Chmbdc::templatized_subtractor< target_template, Tuple >
 Chmbdc::templatized_subtractor< target_template, std::tuple< T, Ts... > >
 Chmbdc::templatized_subtractor< target_template, std::tuple< target_template< T >, Ts... > >
 Chmbdc::time::TimerManager
 Chmbdc::app::context_detail::tm_runner< is_timer_manager >
 Chmbdc::app::blocking_context_detail::tm_runner< is_timer_manager >
 Chmbdc::app::context_detail::tm_runner< true >
 Chmbdc::app::blocking_context_detail::tm_runner< true >
 Chmbdc::app::Trace
 Chmbdc::app::BlockingContext< MessageTuples >::Transport
 Chmbdc::app::tcpcast::Transport
 Chmbdc::app::BlockingContext< MessageTuples >::TransportEntry< Message >
 Chmbdc::app::udpcast::TransportMessageHeader
 Chmbdc::app::netmap::TransportMessageHeader
 Chmbdc::app::tcpcast::TransportMessageHeader
 Ctrie
 Ctrie_policy_base
 Chmbdc::Typed< NAME, T >
 Chmbdc::text::TypedString< NAME, SIZE >
 Chmbdc::text::TypedString< TOPIC, 64u >
 Chmbdc::comm::Uuid
 Chmbdc::comm::eth::virt_header
 Chmbdc::XmitEndian< T >
 Chmbdc::XmitEndian< pid_t >
 Chmbdc::XmitEndian< size_t >
 Chmbdc::XmitEndian< uint16_t >
 Chmbdc::XmitEndianByteField< T, N >
 Chmbdc::XmitEndianByteField< uint64_t, 6 >