conduit 0.6.0
Modern C++23 header-only event-dispatching / event-transport library
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
conduit::local::Transport Class Reference

#include <transport.hpp>

Inheritance diagram for conduit::local::Transport:
Inheritance graph
[legend]
Collaboration diagram for conduit::local::Transport:
Collaboration graph
[legend]

Public Member Functions

 Transport (const Execution mode=Execution::Direct, ThreadPoolConfig cfg={})
 
TransportScope scope () const noexcept override
 
void detach () noexcept override
 
void dispatch (const EventEnvelopeView &v) override
 
void flush () override
 
Execution mode () const noexcept
 
- Public Member Functions inherited from conduit::Transport
 Transport ()=default
 
 Transport (const Transport &)=delete
 
 Transport (Transport &&) noexcept=default
 
Transportoperator= (const Transport &)=delete
 
Transportoperator= (Transport &&) noexcept=default
 
 ~Transport () override=default
 
virtual void attach (Bus &bus)
 Attach to a bus.
 
virtual void attach_with_sink (Bus &bus, InboundSink sink)
 Attach to a bus using a caller-supplied inbound sink.
 

Static Public Member Functions

static Transport thread_pool (ThreadPoolConfig cfg={})
 
static Transport queued (const std::size_t queue_capacity=0)
 

Additional Inherited Members

- Protected Member Functions inherited from conduit::Transport
void deliver_inbound (const EventEnvelopeView &v) const
 Subclasses call this for inbound delivery instead of touching the bus directly.
 
Busbus () const noexcept
 

Constructor & Destructor Documentation

◆ Transport()

conduit::local::Transport::Transport ( const Execution  mode = Execution::Direct,
ThreadPoolConfig  cfg = {} 
)
inlineexplicit

Member Function Documentation

◆ detach()

void conduit::local::Transport::detach ( )
inlineoverridevirtualnoexcept

Reimplemented from conduit::Transport.

◆ dispatch()

void conduit::local::Transport::dispatch ( const EventEnvelopeView v)
inlineoverridevirtual

Implements conduit::Transport.

◆ flush()

void conduit::local::Transport::flush ( )
inlineoverridevirtual

Reimplemented from conduit::Transport.

◆ mode()

Execution conduit::local::Transport::mode ( ) const
inlinenoexcept

◆ queued()

static Transport conduit::local::Transport::queued ( const std::size_t  queue_capacity = 0)
inlinestatic

◆ scope()

TransportScope conduit::local::Transport::scope ( ) const
inlineoverridevirtualnoexcept

Implements conduit::Transport.

◆ thread_pool()

static Transport conduit::local::Transport::thread_pool ( ThreadPoolConfig  cfg = {})
inlinestatic

The documentation for this class was generated from the following file: