$darkmode
vtd::RdbTransceiver Class Referenceabstract

#include <rdb_transceiver.hpp>

Inheritance diagram for vtd::RdbTransceiver:

Public Member Functions

virtual bool has () const =0
 
virtual std::vector< std::shared_ptr< RDB_MSG_t > > receive ()=0
 
virtual void send (const RDB_MSG_t *msg, size_t size)=0
 
virtual void to_json (cloe::Json &j) const =0
 

Friends

void to_json (cloe::Json &j, const RdbTransceiver &t)
 

Detailed Description

RdbTransceiver is an interface for a RDB connection to VTD.

There are currently two implementations of this: RDB over TCP and over shared memory. Currently, the shared memory implementation is not being used.

Member Function Documentation

◆ has()

virtual bool vtd::RdbTransceiver::has ( ) const
pure virtual

Returns true when the transceiver has a message that can be received.

That is, if true, then a call to receive() will return a vector that is not empty.

Implemented in vtd::RdbTransceiverTcp, and vtd::RdbTransceiverShm.

◆ receive()

virtual std::vector<std::shared_ptr<RDB_MSG_t> > vtd::RdbTransceiver::receive ( )
pure virtual

Non-blocking function to return all received RDB messages.

Implemented in vtd::RdbTransceiverTcp, and vtd::RdbTransceiverShm.

◆ send()

virtual void vtd::RdbTransceiver::send ( const RDB_MSG_t *  msg,
size_t  size 
)
pure virtual

Sends the RDB message with the given size.

Parameters
msgRDB message
sizenumber of bytes

Implemented in vtd::RdbTransceiverTcp, and vtd::RdbTransceiverShm.


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