DelegateMQ
Loading...
Searching...
No Matches
NetXUdpTransport Class Reference

#include <NetXUdpTransport.h>

Inheritance diagram for NetXUdpTransport:
ITransport

Public Types

enum class  Type { PUB , SUB }
 

Public Member Functions

 NetXUdpTransport (NX_IP *ip_ptr, NX_PACKET_POOL *pool_ptr)
 Constructor.
 
 ~NetXUdpTransport ()
 
int Create (Type type, const char *addr_str, uint16_t port)
 Initialize the UDP socket.
 
void Close ()
 
virtual int Send (xostringstream &os, const DmqHeader &header) override
 
virtual int Receive (xstringstream &is, DmqHeader &header) override
 
void SetTransportMonitor (ITransportMonitor *tm)
 
void SetSendTransport (ITransport *st)
 
void SetRecvTransport (ITransport *rt)
 
- Public Member Functions inherited from ITransport

Member Enumeration Documentation

◆ Type

enum class NetXUdpTransport::Type
strong
Enumerator
PUB 
SUB 

Constructor & Destructor Documentation

◆ NetXUdpTransport()

NetXUdpTransport::NetXUdpTransport ( NX_IP * ip_ptr,
NX_PACKET_POOL * pool_ptr )
inline

Constructor.

Parameters
ip_ptrPointer to the initialized NetX IP instance.
pool_ptrPointer to the packet pool for allocating UDP packets.

◆ ~NetXUdpTransport()

NetXUdpTransport::~NetXUdpTransport ( )
inline

Member Function Documentation

◆ Close()

void NetXUdpTransport::Close ( )
inline

◆ Create()

int NetXUdpTransport::Create ( Type type,
const char * addr_str,
uint16_t port )
inline

Initialize the UDP socket.

◆ Receive()

virtual int NetXUdpTransport::Receive ( xstringstream & is,
DmqHeader & header )
inlineoverridevirtual

Receive data from a remote

Parameters
[out]isThe received incoming data bytes, not including the header.
[out]headerIncoming delegate message header.
Returns
0 if success.

Implements ITransport.

◆ Send()

virtual int NetXUdpTransport::Send ( xostringstream & os,
const DmqHeader & header )
inlineoverridevirtual

Send data to a remote

Parameters
[in]osOutput stream to send.
[in]headerThe header to send.
Returns
0 if success.

Implements ITransport.

◆ SetRecvTransport()

void NetXUdpTransport::SetRecvTransport ( ITransport * rt)
inline

◆ SetSendTransport()

void NetXUdpTransport::SetSendTransport ( ITransport * st)
inline

◆ SetTransportMonitor()

void NetXUdpTransport::SetTransportMonitor ( ITransportMonitor * tm)
inline

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