GlobalObjects
Loading...
Searching...
No Matches
tcp::Server::ServerReceiverTransmitter Class Reference

Tuple of socket Receiver and Transmitter for the Server. More...

#include <TcpServer.h>

Inheritance diagram for tcp::Server::ServerReceiverTransmitter:

Public Member Functions

 ServerReceiverTransmitter (Transmitter *pTransmitter, ServerReceiver *pReceiver)
 
virtual ~ServerReceiverTransmitter ()
 
int getPeerName (std::string &rstrIPAdress, unsigned int &ruiPort) const
 
int send (char *pszRawMsg, unsigned int uiRawMsgSize, unsigned int uiMessageID=0, int iActionCode=0, const std::string &rstrInfo="")
 
int send (Message *pTcpMessage)
 
void setValid (bool bValid)
 
SOCKET Socket () const
 

Protected Member Functions

 ServerReceiverTransmitter ()
 

Private Member Functions

 ServerReceiverTransmitter (const ServerReceiverTransmitter &rT)
 
Server::ServerReceiverTransmitteroperator= (const ServerReceiverTransmitter &)
 

Private Attributes

ServerReceiverm_pReceiver
 
Transmitterm_pTransmitter
 

Detailed Description

Tuple of socket Receiver and Transmitter for the Server.

Author
Helmut Jakoby

Constructor & Destructor Documentation

◆ ServerReceiverTransmitter() [1/3]

tcp::Server::ServerReceiverTransmitter::ServerReceiverTransmitter ( )
protected

This constructor is not available.

◆ ServerReceiverTransmitter() [2/3]

tcp::Server::ServerReceiverTransmitter::ServerReceiverTransmitter ( Transmitter * pTransmitter,
ServerReceiver * pReceiver )

This constructor starts the passed tcp Receiver and Transmitter.

Parameters
[in]pTransmitterThe Transmitter (sends data to a Client).
[in]pReceiverThe Receiver (receives data from a Client).
Attention
ServerReceiverTransmitter assumes responsibility for the objects transferred in pTransmitter and pReceiver. This means that the calling instance must not remove the passed objects from memory!
Exceptions
eut::ErrorNExceptionAn exception is thrown if an error occurs.

◆ ~ServerReceiverTransmitter()

virtual tcp::Server::ServerReceiverTransmitter::~ServerReceiverTransmitter ( )
virtual

In the destructor the Tcp Receiver and Transmitter are stopped and removed from the memory.

◆ ServerReceiverTransmitter() [3/3]

tcp::Server::ServerReceiverTransmitter::ServerReceiverTransmitter ( const ServerReceiverTransmitter & rT)
private

The copy constructor is not available.

Member Function Documentation

◆ getPeerName()

int tcp::Server::ServerReceiverTransmitter::getPeerName ( std::string & rstrIPAdress,
unsigned int & ruiPort ) const

Returns the IP address and the port.

Parameters
[in,out]rstrIPAdressThe IP address (e.g. "LOCALHOST" or "192.168.2.102").
[in,out]ruiPortThe port which is addressed.
Returns
A return value < 0 indicates an error.

◆ operator=()

Server::ServerReceiverTransmitter & tcp::Server::ServerReceiverTransmitter::operator= ( const ServerReceiverTransmitter & )
private

The assignment operator is not available.

◆ send() [1/2]

int tcp::Server::ServerReceiverTransmitter::send ( char * pszRawMsg,
unsigned int uiRawMsgSize,
unsigned int uiMessageID = 0,
int iActionCode = 0,
const std::string & rstrInfo = "" )

Sends transferred data to the client via its Transmitter.

Parameters
[in]pszRawMsgPointer to the data to be sent.
[in]uiRawMsgSizeThe size of the data to be sent.
[in]uiMessageIDA MessageID can be passed.
[in]iActionCodeA ActionCode can be passed.
[in]rstrInfoA free info can be passed.
Returns
A return value < 0 indicates an error.
Attention
The data in pszRawMsg is internally removed from memory; the calling instance may no longer use the data to be sent or remove it from memory.

◆ send() [2/2]

int tcp::Server::ServerReceiverTransmitter::send ( Message * pTcpMessage)

Sends passed Message to the client via its Transmitter.

Parameters
[in]pTcpMessageThe message packet to be sent.
Returns
A return < 0 indicates an error.
Attention
The passed Message must not be removed from memory by the calling instance! Since the Message is passed to the Transmitter for further processing, and the Transmitter decides when to send, the Transmitter must also remove the Message from memory.

◆ setValid()

void tcp::Server::ServerReceiverTransmitter::setValid ( bool bValid)

Is called if socket is no longer ok.

◆ Socket()

SOCKET tcp::Server::ServerReceiverTransmitter::Socket ( ) const

Returns the socket.

Exceptions
eut::ErrorNExceptionIf no socket, an exception is thrown.

Member Data Documentation

◆ m_pReceiver

ServerReceiver* tcp::Server::ServerReceiverTransmitter::m_pReceiver
private

The Tcp Receiver of the server (receives data from a Client).

◆ m_pTransmitter

Transmitter* tcp::Server::ServerReceiverTransmitter::m_pTransmitter
private

The Tcp Transmitter of the server (sends data to a Client).


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