hmbdc
simplify-high-performance-messaging-programming
Public Member Functions | List of all members
hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportImpl< OutputBuffer, AttachmentAllocator > Struct Template Reference

impl class More...

#include <RecvTransportEngine.hpp>

Inheritance diagram for hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportImpl< OutputBuffer, AttachmentAllocator >:
hmbdc::tips::rmcast::RecvTransport hmbdc::time::TimerManager hmbdc::tips::rmcast::transport_detail::EngineTransport hmbdc::tips::rmcast::transport_detail::Transport hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportEngine< OutputBuffer, AttachmentAllocator >

Public Member Functions

 RecvTransportImpl (Config const &cfg, OutputBuffer &outputBuffer)
 ctor More...
 
void start ()
 start the show by schedule the mesage recv
 
void handleMessageCb (TypeTagBackupSource const &t)
 only used by MH
 
size_t sessionsRemainingActive () const
 check how many other parties are sending to this engine More...
 
- Public Member Functions inherited from hmbdc::time::TimerManager
void schedule (SysTime fireAt, Timer &timer)
 schedule the timer to start at a specific time More...
 
void cancel (Timer &timer)
 cancel a timer previously scheduled with the TimerManager More...
 

Detailed Description

template<typename OutputBuffer, typename AttachmentAllocator>
struct hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportImpl< OutputBuffer, AttachmentAllocator >

impl class

Template Parameters
OutputBuffertype of buffer to hold resulting network messages between different recv transport. By default, keeping all

Constructor & Destructor Documentation

◆ RecvTransportImpl()

template<typename OutputBuffer , typename AttachmentAllocator >
hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportImpl< OutputBuffer, AttachmentAllocator >::RecvTransportImpl ( Config const &  cfg,
OutputBuffer &  outputBuffer 
)
inline

ctor

io_service could be passed in by user, in this case NO more than two threads should power this io_service instance since that would violate the thread garantee of Client, which is no callbacks are called in parallel

Parameters
cfgspecify the details of the rmcast transport
outputBufferholding the results

Member Function Documentation

◆ sessionsRemainingActive()

template<typename OutputBuffer , typename AttachmentAllocator >
size_t hmbdc::tips::rmcast::recvtransportengine_detail::RecvTransportImpl< OutputBuffer, AttachmentAllocator >::sessionsRemainingActive ( ) const
inline

check how many other parties are sending to this engine

Returns
recipient session count are still active

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