Flow-IPC 2.0.0
Flow-IPC project: Full implementation reference.
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 CAllocator
 Cipc::session::AppA description of an application in this ipc::session inter-process communication universe
 Cipc::shm::Arena_to_borrower_allocator_arena< Arena >Implementation of Arena_to_borrower_allocator_arena_t
 Cipc::shm::Arena_to_borrower_allocator_arena< classic::Pool_arena >Implementation of Arena_to_borrower_allocator_arena_t for SHM-classic arenas
 Cipc::session::shm::Arena_to_shm_session< Arena >Implementation of Arena_to_shm_session_t
 Cipc::session::shm::Arena_to_shm_session< ipc::shm::arena_lend::jemalloc::Ipc_arena >Implementation of Arena_to_shm_session_t for SHM-jemalloc arenas
 Cipc::session::shm::Arena_to_shm_session< ipc::shm::classic::Pool_arena >Implementation of Arena_to_shm_session_t for SHM-classic arenas
 Cipc::transport::Blob_receiverA documentation-only concept defining the behavior of an object capable of reliably/in-order receiving of discrete messages, each containing a binary blob
 Cipc::transport::sync_io::Blob_receiverA documentation-only concept: what transport::Blob_receiver is to transport::Native_handle_receiver (namely a degenerate version thereof), this is to sync_io::Native_handle_receiver
 Cipc::transport::Blob_senderA documentation-only concept defining the behavior of an object capable of reliably/in-order sending of discrete messages, each containing a binary blob
 Cipc::transport::sync_io::Blob_senderA documentation-only concept: what transport::Blob_sender is to transport::Native_handle_sender (namely a degenerate version thereof), this is to sync_io::Native_handle_sender
 Cipc::transport::Blob_stream_mq_base< Persistent_mq_handle >Base of Blob_stream_mq_sender and Blob_stream_mq_receiver containing certain static facilities, particularly for post-abort persistent resource cleanup
 Cipc::transport::Blob_stream_mq_base< Mq >
 Cipc::transport::Blob_stream_mq_base_impl< Persistent_mq_handle >Internal implementation of Blob_stream_mq_base class template; and common utilities used by Blob_stream_mq_sender_impl and Blob_stream_mq_receiver_impl (static items only as of this writing)
 Cipc::transport::struc::shm::Builder_baseShm::Builder base that contains non-parameterized public items such as tag types and constants
 CCapnp_msg_builder_interface
 Cipc::transport::struc::Channel_baseChannel base that contains non-parameterized public items such as tag types and constants
 Cipc::session::sync_io::Session_adapter< Session >::Channel_open_resultSet of result arg values from a successful passive-channel-open from a Session_obj invoking On_channel_func
 Cipc::session::shm::arena_lend::jemalloc::Client_session_mv< Client_session_impl_t >
 Cipc::session::shm::classic::Client_session_mv< Client_session_impl_t >
 Cipc::transport::struc::Heap_fixed_builder::ConfigImplements Struct_builder::Config sub-concept
 Cipc::transport::struc::Heap_reader::ConfigImplements Struct_reader::Config sub-concept
 Cipc::transport::struc::shm::Builder< Shm_arena >::ConfigImplements Struct_builder::Config sub-concept
 Cipc::transport::struc::shm::Reader< Shm_arena >::ConfigImplements Struct_reader::Config sub-concept
 Cipc::transport::struc::Struct_builder::ConfigCopy-ctible, copy-assignable, default-ctible type – informally, cheaply copyable and likely an aggregate struct – objects of which store data that Struct_builder main ctor knows how to interpret as knobs controlling its behavior
 Cipc::transport::struc::Struct_reader::ConfigAnalogous to Struct_builder::Config but for deserialization
 Cboost::asio::posix::descriptor
 Cboost::system::error_category
 Cipc::transport::struc::sync_io::Channel< Channel_obj, Message_body, Struct_builder_config, Struct_reader_config >::Expecting_responsePolicy for how to act upon receiving a response in-message that indicates its originating out-message is the message associated with this object in Expecting_response_map
 Cipc::shm::classic::Pool_arena::Handle_in_shm< T >The data structure stored in SHM corresponding to an original construct()-returned Handle; exactly one of which exists per construct() call invoked from any Pool_arena connected to the underlying pool
 Cboost::system::is_error_code_enum<::ipc::session::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cboost::system::is_error_code_enum<::ipc::session::shm::arena_lend::jemalloc::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cboost::system::is_error_code_enum<::ipc::shm::classic::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cboost::system::is_error_code_enum<::ipc::transport::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cboost::system::is_error_code_enum<::ipc::transport::struc::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cboost::system::is_error_code_enum<::ipc::transport::struc::shm::error::Code >Ummm – it specializes this struct to – look – the end result is boost.system uses this as authorization to make enum Code convertible to Error_code
 Cflow::log::Log_context
 Cipc::session::Client_session_impl< S_MQ_TYPE_OR_NONE, S_TRANSMIT_NATIVE_HANDLES, Mdt_payload, S_SHM_TYPE_OR_NONE, S_GRACEFUL_FINISH_REQUIRED_V >::Master_channel_reqAn open-channel/log-in request out-message
 Cipc::transport::struc::sync_io::Channel< Channel_obj, Message_body, Struct_builder_config, Struct_reader_config >::Msg_in_pipeData and policy with respect to receipt of the next/currently-incomplete in-message
 Cipc::transport::struc::Msg_out< Message_body, Struct_builder_t >A structured out-message suitable to be sent via struc::Channel::send() (et al)
 Cipc::transport::struc::Msg_out< Message_body, Struct_builder >
 Cipc::transport::struc::Msg_out< schema::detail::StructuredMessage, Struct_builder_config::Builder >
 Cipc::util::Native_handleA monolayer-thin wrapper around a native handle, a/k/a descriptor a/k/a FD
 Cipc::transport::Native_handle_receiverA documentation-only concept defining the behavior of an object capable of reliably/in-order receiving of discrete messages, each containing a native handle, a binary blob, or both
 Cipc::transport::sync_io::Native_handle_receiverA documentation-only concept defining the behavior of an object that is the sync_io-pattern counterpart of the async-I/O-pattern-following concept of the same name in our parent namespace: transport::Native_handle_receiver
 Cipc::transport::Native_handle_senderA documentation-only concept defining the behavior of an object capable of reliably/in-order sending of discrete messages, each containing a native handle, a binary blob, or both
 Cipc::transport::sync_io::Native_handle_senderA documentation-only concept defining the behavior of an object that is the sync_io-pattern counterpart of the async-I/O-pattern-following concept of the same name in our parent namespace: transport::Native_handle_sender
 Cipc::transport::Native_socket_streamImplements both Native_handle_sender and Native_handle_receiver concepts by using a stream-oriented Unix domain socket, allowing high-performance but non-zero-copy transmission of discrete messages, each containing a native handle, a binary blob, or both
 Cipc::transport::sync_io::Native_socket_streamImplements both sync_io::Native_handle_sender and sync_io::Native_handle_receiver concepts by using a stream-oriented Unix domain socket, allowing high-performance but non-zero-copy transmission of discrete messages, each containing a native handle, a binary blob, or both
 Cboost::noncopyable
 Cipc::transport::Null_peerDummy type for use as a template param to Channel when either the blobs pipe or handles pipe is disabled; as well as to mark a given peer object as not having a counterpart form: a sync_io object shall have its using Sync_io_obj = Null_peer and coversely for async-I/O guys and their Async_io_objs
 Cipc::transport::struc::Null_sessionValue for Struct_builder::Session when no extra information is needed when serializing Struct_builder for subsequent sending to another process
 Cipc::session::Server_session_impl< S_MQ_TYPE_OR_NONE, S_TRANSMIT_NATIVE_HANDLES, Mdt_payload, S_SHM_TYPE_OR_NONE, S_SHM_MAX_HNDL_SZ, S_GRACEFUL_FINISH_REQUIRED_V >::Open_channel_reqAn open-channel request out-message
 Cipc::transport::Persistent_mq_handleA documentation-only concept defining the behavior of an object representing a light-weight handle to a message queue, capable of receiving/sending discrete messages in non-blocking/blocking/timed-blocking fashion, as well as some support for polling/waiting and interruptions thereof
 Cipc::util::Process_credentialsA process's credentials (PID, UID, GID as of this writing)
 Cipc::transport::sync_io::Native_socket_stream::Impl::Rcv_user_requestIdentical to sync_io::Async_adapter_receiver::User_request, except we only keep at most 1 of these and thus don't need a Ptr alias inside
 Cipc::transport::struc::Channel< Channel_obj, Message_body, Struct_builder_config, Struct_reader_config >::Sync_op_state::Request_resultA successul result of sync_request()
 Cflow::util::Scoped_setter
 Cipc::transport::struc::Channel_base::Serialize_via_app_shmSimilar to Serialize_via_session_shm but assumes per-app-scope SHM-arena (as opposed to per-session-scope) at compile time
 Cipc::transport::struc::Channel_base::Serialize_via_heapTag type for ctor selection: Backing memory for serialization comes from fixed-size segment allocation(s) from regular heap (malloc()); and similarly for deserialization
 Cipc::transport::struc::Channel_base::Serialize_via_session_shmTag type for ctor selection: Backing RAM for serialization comes from a given session::Session's SHM arena (of per-session scope) via exponential-growing-size segment allocation(s)
 Cipc::session::shm::arena_lend::jemalloc::Server_session_mv< Server_session_impl_t >
 Cipc::session::shm::classic::Server_session_mv< Server_session_impl_t >
 CServer_session_t
 Cipc::session::Session< Mdt_payload >A documentation-only concept defining the local side of an IPC conversation (session) with another entity (typically a separate process), also represented by a Session-implementing object, through which one can easily open IPC channels (ipc::transport::Channel), among other IPC features
 Cipc::session::sync_io::Session_adapter< Session >Internal-use workhorse containing common elements of Client_session_adapter and Server_session_adapter
 CSession_impl_t
 Cipc::session::Session_mv< Session_impl_t >Implements the Session concept when it is in PEER state
 Cipc::session::Session_mv< Client_session_impl_t >
 Cipc::session::Session_mv< Server_session_impl< S_MQ_TYPE_OR_NONE, S_TRANSMIT_NATIVE_HANDLES, Mdt_payload > >
 Cipc::session::Session_mv< Server_session_impl_t >
 Cipc::session::sync_io::Session_server_adapter< Session_server >sync_io-pattern counterpart to async-I/O-pattern session::Session_server types and all their SHM-aware variations (at least shm::classic::Session_server and shm::arena_lend::jemalloc::Session_server)
 CSession_t
 Cipc::util::Shared_nameString-wrapping abstraction representing a name uniquely distinguishing a kernel-persistent entity from all others in the system, or a fragment of such a name
 Cipc::transport::sync_io::Blob_stream_mq_sender_impl< Persistent_mq_handle >::Snd_low_lvl_payloadData store representing a payload corresponding to exactly one attempted async write-op, albeit used if and only if we encounter would-block in send_blob() or on_ev_auto_ping_now_timer_fired() or *end_sending() and have to queue (and therefore one-time-copy) data in m_pending_payloads_q
 Cipc::transport::sync_io::Native_socket_stream::Impl::Snd_low_lvl_payloadData store representing a payload corresponding to exactly one attempted async write-op, albeit used if and only if we encounter would-block in send_*() or snd_on_ev_auto_ping_now_timer_fired() or *end_sending() and have to queue (and therefore one-time-copy) data in m_snd_pending_payloads_q
 Cipc::session::Session_server_impl< Session_server_t, Server_session_t >::StateAll internal mutable state of Session_server_impl
 Cipc::shm::stl::Stateless_allocator< T, Arena >Stateless allocator usable with STL-compliant containers to store (or merely read) them directly in SHM in a given SHM-aware Arena
 Cipc::transport::struc::Struct_builderA documentation-only concept defining the behavior of an object capable of zero-copy-serializing, similar to capnp::MessageBuilder but geared to transmission over pipe-like IPC transports
 Cipc::transport::struc::Struct_readerA documentation-only concept that is, conceptually, roughly what capnp::MessageReader is to capnp::MessageBuilder, to be used on an in-message serialized by a counterpart Struct_builder, having been transmitted over an IPC transmitter of blobs
 Cipc::transport::struc::Channel< Channel_obj, Message_body, Struct_builder_config, Struct_reader_config >::Sync_op_stateState in m_sync_op_state, when a sync-op is in fact in progress, meaning m_sync_op_state is not null
 Cipc::util::Use_counted_objectSimple counter that manually tracks utilization. It is not thread-safe
 Cipc::transport::Native_socket_stream_acceptor::User_requestData store representing a deficit user async-accept request that had to be saved due to lacking surplus of finalized peer socket handles
 Cipc::transport::sync_io::Async_adapter_receiver< Core_t >::User_requestData store representing a deficit user async-receive request: either one being currently handled by m_sync_io – which can handle one m_sync_io.async_receive_*() at a time, no more – or one queued up behind it, if async_receive_*() was called before the current one could complete
 Cipc::transport::sync_io::Blob_stream_mq_receiver_impl< Persistent_mq_handle >::User_requestIdentical to sync_io::Async_adapter_receiver::User_request, except we only keep at most 1 of these and thus don't need a Ptr alias inside; and we need not worry about transmitting Native_handles
 CBuilder
 CFunction< void()>