Flow-IPC 1.0.0
Flow-IPC project: Full implementation reference.
|
sync_io
-pattern counterparts to async-I/O-pattern object types in parent namespace ipc::transport.
More...
Classes | |
class | Async_adapter_receiver |
Internal-use type that adapts a given PEER-state sync_io::Native_handle_receiver or sync_io::Blob_receiver core into the async-I/O-pattern Native_handle_receiver or Blob_receiver. More... | |
class | Async_adapter_sender |
Internal-use type that adapts a given PEER-state sync_io::Native_handle_sender or sync_io::Blob_sender core into the async-I/O-pattern Native_handle_sender or Blob_sender. More... | |
class | Blob_receiver |
A 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. More... | |
class | Blob_sender |
A 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. More... | |
class | Blob_stream_mq_receiver |
Implements sync_io::Blob_receiver concept by using an adopted Persistent_mq_handle MQ handle to an MQ (message queue) of that type, such as a POSIX or bipc MQ. More... | |
class | Blob_stream_mq_receiver_impl |
Internal, non-movable pImpl-lite implementation of sync_io::Blob_stream_mq_receiver class template. More... | |
class | Blob_stream_mq_sender |
Implements sync_io::Blob_sender concept by using an adopted Persistent_mq_handle MQ handle to an MQ (message queue) of that type, such as a POSIX or bipc MQ. More... | |
class | Blob_stream_mq_sender_impl |
Internal, non-movable pImpl-lite implementation of sync_io::Blob_stream_mq_sender class template. More... | |
class | Native_handle_receiver |
A 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. More... | |
class | Native_handle_sender |
A 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. More... | |
class | Native_socket_stream |
Implements 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. More... | |
class | Native_socket_stream_acceptor |
sync_io -pattern counterpart to async-I/O-pattern transport::Native_socket_stream_acceptor. More... | |
Typedefs | |
using | Posix_mq_sender = Blob_stream_mq_sender< Posix_mq_handle > |
Convenience alias: sync_io::Blob_sender via unidirectional POSIX MQ (message queue). More... | |
using | Posix_mq_receiver = Blob_stream_mq_receiver< Posix_mq_handle > |
Convenience alias: sync_io::Blob_receiver via unidirectional POSIX MQ (message queue). More... | |
using | Bipc_mq_sender = Blob_stream_mq_sender< Bipc_mq_handle > |
Convenience alias: sync_io::Blob_sender via unidirectional bipc MQ (message queue). More... | |
using | Bipc_mq_receiver = Blob_stream_mq_receiver< Bipc_mq_handle > |
Convenience alias: sync_io::Blob_receiver via unidirectional bipc MQ (message queue). More... | |
using | Posix_mqs_channel_of_blobs = transport::Mqs_channel< true, Posix_mq_handle > |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver) at one end of full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues). More... | |
using | Bipc_mqs_channel_of_blobs = transport::Mqs_channel< true, Bipc_mq_handle > |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver) at one end of full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues). More... | |
using | Posix_mqs_socket_stream_channel = Mqs_socket_stream_channel< true, Posix_mq_handle > |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver, sync_io::Native_handle_sender, sync_io::Native_handle_receiver) at one end of a full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues), transmitting blobs only; and a full-duplex pipe over a Unix domain stream connection, transmitting native-handle-and/or-meta-blob messages. More... | |
using | Bipc_mqs_socket_stream_channel = Mqs_socket_stream_channel< true, Bipc_mq_handle > |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver, sync_io::Native_handle_sender, sync_io::Native_handle_receiver) at one end of a full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional bipc MQs (message queues), transmitting blobs only; and a full-duplex pipe over a Unix domain stream connection, transmitting native-handle-and/or-meta-blob messages. More... | |
Functions | |
template<typename Persistent_mq_handle > | |
std::ostream & | operator<< (std::ostream &os, const Blob_stream_mq_receiver_impl< Persistent_mq_handle > &val) |
Prints string representation of the given Blob_stream_mq_receiver_impl to the given ostream . More... | |
template<typename Persistent_mq_handle > | |
std::ostream & | operator<< (std::ostream &os, const Blob_stream_mq_sender_impl< Persistent_mq_handle > &val) |
Prints string representation of the given Blob_stream_mq_sender to the given ostream . More... | |
template<typename Persistent_mq_handle > | |
std::ostream & | operator<< (std::ostream &os, const Blob_stream_mq_receiver< Persistent_mq_handle > &val) |
Prints string representation of the given Blob_stream_mq_receiver to the given ostream . More... | |
template<typename Persistent_mq_handle > | |
std::ostream & | operator<< (std::ostream &os, const Blob_stream_mq_sender< Persistent_mq_handle > &val) |
Prints string representation of the given Blob_stream_mq_sender to the given ostream . More... | |
std::ostream & | operator<< (std::ostream &os, const Native_socket_stream::Impl &val) |
Prints string representation of the given Native_socket_stream::Impl to the given ostream . More... | |
std::ostream & | operator<< (std::ostream &os, const Native_socket_stream &val) |
Prints string representation of the given Native_socket_stream to the given ostream . More... | |
std::ostream & | operator<< (std::ostream &os, const Native_socket_stream_acceptor &val) |
Prints string representation of the given Native_socket_stream_acceptor to the given ostream . More... | |
sync_io
-pattern counterparts to async-I/O-pattern object types in parent namespace ipc::transport.
For example transport::sync_io::Native_socket_stream <=> transport::Native_socket_stream.
sync_io
pattern we are following. Convenience alias: sync_io::Blob_receiver via unidirectional bipc MQ (message queue).
Definition at line 319 of file transport_fwd.hpp.
using ipc::transport::sync_io::Bipc_mq_sender = typedef Blob_stream_mq_sender<Bipc_mq_handle> |
Convenience alias: sync_io::Blob_sender via unidirectional bipc MQ (message queue).
Definition at line 317 of file transport_fwd.hpp.
using ipc::transport::sync_io::Bipc_mqs_channel_of_blobs = typedef transport::Mqs_channel<true, Bipc_mq_handle> |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver) at one end of full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues).
Definition at line 331 of file transport_fwd.hpp.
using ipc::transport::sync_io::Bipc_mqs_socket_stream_channel = typedef Mqs_socket_stream_channel<true, Bipc_mq_handle> |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver, sync_io::Native_handle_sender, sync_io::Native_handle_receiver) at one end of a full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional bipc MQs (message queues), transmitting blobs only; and a full-duplex pipe over a Unix domain stream connection, transmitting native-handle-and/or-meta-blob messages.
Definition at line 347 of file transport_fwd.hpp.
Convenience alias: sync_io::Blob_receiver via unidirectional POSIX MQ (message queue).
Definition at line 315 of file transport_fwd.hpp.
using ipc::transport::sync_io::Posix_mq_sender = typedef Blob_stream_mq_sender<Posix_mq_handle> |
Convenience alias: sync_io::Blob_sender via unidirectional POSIX MQ (message queue).
Definition at line 313 of file transport_fwd.hpp.
using ipc::transport::sync_io::Posix_mqs_channel_of_blobs = typedef transport::Mqs_channel<true, Posix_mq_handle> |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver) at one end of full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues).
Definition at line 325 of file transport_fwd.hpp.
using ipc::transport::sync_io::Posix_mqs_socket_stream_channel = typedef Mqs_socket_stream_channel<true, Posix_mq_handle> |
Convenience alias: Channel peer (sync_io::Blob_sender, sync_io::Blob_receiver, sync_io::Native_handle_sender, sync_io::Native_handle_receiver) at one end of a full-duplex (bidirectional) pipe composed of 2 opposite-facing unidirectional POSIX MQs (message queues), transmitting blobs only; and a full-duplex pipe over a Unix domain stream connection, transmitting native-handle-and/or-meta-blob messages.
Definition at line 339 of file transport_fwd.hpp.
std::ostream & operator<< | ( | std::ostream & | os, |
const Blob_stream_mq_receiver< Persistent_mq_handle > & | val | ||
) |
Prints string representation of the given Blob_stream_mq_receiver
to the given ostream
.
If object is default-cted (or moved-from), this will output something graceful indicating this.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 385 of file blob_stream_mq_rcv.hpp.
std::ostream & ipc::transport::sync_io::operator<< | ( | std::ostream & | os, |
const Blob_stream_mq_receiver_impl< Persistent_mq_handle > & | val | ||
) |
Prints string representation of the given Blob_stream_mq_receiver_impl
to the given ostream
.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 1254 of file blob_stream_mq_rcv_impl.hpp.
std::ostream & operator<< | ( | std::ostream & | os, |
const Blob_stream_mq_sender< Persistent_mq_handle > & | val | ||
) |
Prints string representation of the given Blob_stream_mq_sender
to the given ostream
.
If object is default-cted (or moved-from), this will output something graceful indicating this.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 417 of file blob_stream_mq_snd.hpp.
std::ostream & ipc::transport::sync_io::operator<< | ( | std::ostream & | os, |
const Blob_stream_mq_sender_impl< Persistent_mq_handle > & | val | ||
) |
Prints string representation of the given Blob_stream_mq_sender
to the given ostream
.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 1702 of file blob_stream_mq_snd_impl.hpp.
std::ostream & operator<< | ( | std::ostream & | os, |
const Native_socket_stream & | val | ||
) |
Prints string representation of the given Native_socket_stream
to the given ostream
.
Friend of Native_socket_stream.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 155 of file native_socket_stream.cpp.
std::ostream & operator<< | ( | std::ostream & | os, |
const Native_socket_stream::Impl & | val | ||
) |
Prints string representation of the given Native_socket_stream::Impl to the given ostream
.
Friend of Native_socket_stream.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 518 of file native_socket_stream_impl.cpp.
std::ostream & operator<< | ( | std::ostream & | os, |
const Native_socket_stream_acceptor & | val | ||
) |
Prints string representation of the given Native_socket_stream_acceptor
to the given ostream
.
os | Stream to which to write. |
val | Object to serialize. |
os
. Definition at line 81 of file native_socket_stream_acceptor.cpp.