nidas  v1.2-1520
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
nidas::util::McSocketDatagram Class Reference

Datagram that is multicast by a host when it wants a service. More...

#include <McSocket.h>

Inheritance diagram for nidas::util::McSocketDatagram:
Inheritance graph
[legend]

Public Member Functions

 McSocketDatagram (int requestType=-1)
 
 McSocketDatagram (const McSocketDatagram &x)
 Copy constructor. More...
 
McSocketDatagramoperator= (const McSocketDatagram &rhs)
 Assignment operator. More...
 
int getMagic () const
 
void setMagic (int val)
 
int getRequestType () const
 
void setRequestType (int val)
 
int getRequesterListenPort () const
 What port is the requester listening on for the connection back? More...
 
void setRequesterListenPort (int val)
 
int getSocketType () const
 What socket type does the requester want to establish? SOCK_STREAM or SOCK_DGRAM. More...
 
void setSocketType (int val)
 
virtual void * getDataVoidPtr ()
 Get the pointer to the data portion of the packet. More...
 
virtual const void * getConstDataVoidPtr () const
 
McSocketDatagetData ()
 
void setData (McSocketData *val)
 Set the pointer to the data portion of the packet. More...
 
SocketAddressgetSocketAddress () const
 
void setSocketAddress (const SocketAddress &val)
 
struct sockaddr * getSockAddrPtr ()
 
struct sockaddr * getConstSockAddrPtr () const
 
int getSockAddrLen () const
 
virtual void setLength (int val)
 Set the value for the current number of bytes in data. More...
 
virtual int getLength () const
 Get the value for the current number of bytes in data. More...
 
void setMaxLength (int val)
 Set the allocated length in bytes of the data. More...
 
int getMaxLength () const
 Return the allocated length in bytes of the data. More...
 

Static Public Attributes

static const int magicVal = 0x01234567
 Magic value that should be found at the beginning of all received McSocketDatagrams. More...
 

Protected Attributes

struct McSocketData mcdata
 
McSocketDatadata
 
int maxlength
 allocated length in bytes of contents. More...
 
int length
 length of datagram that was read or will be sent. More...
 
SocketAddressaddr
 The destination address for a send, or the remote senders address after a receive. More...
 

Detailed Description

Datagram that is multicast by a host when it wants a service.

A McSocketDatagram contains the address of the sending host, a port number that the sending host is listening on, the type of connection required (SOCK_STREAM or SOCK_DGRAM), and the type of the service requested.

Constructor & Destructor Documentation

McSocketDatagram::McSocketDatagram ( int  requestType = -1)

References setRequestType().

McSocketDatagram::McSocketDatagram ( const McSocketDatagram x)

Copy constructor.

References nidas::util::DatagramPacketT< McSocketData >::data, and mcdata.

Member Function Documentation

virtual const void* nidas::util::DatagramPacketT< McSocketData >::getConstDataVoidPtr ( ) const
inlinevirtualinherited
struct sockaddr* nidas::util::DatagramPacketBase::getConstSockAddrPtr ( ) const
inlineinherited
McSocketData * nidas::util::DatagramPacketT< McSocketData >::getData ( )
inlineinherited
virtual void* nidas::util::DatagramPacketT< McSocketData >::getDataVoidPtr ( )
inlinevirtualinherited

Get the pointer to the data portion of the packet.

Implements nidas::util::DatagramPacketBase.

virtual int nidas::util::DatagramPacketBase::getLength ( ) const
inlinevirtualinherited

Get the value for the current number of bytes in data.

Either the number of bytes read in a received packet, or the number of bytes to send().

References nidas::util::DatagramPacketBase::length.

Referenced by PacketReader::checkPacket(), PacketReader::logBadPacket(), PacketReader::loop(), nidas::core::DerivedDataReader::run(), WriterThread::run(), nidas::util::McSocketListener::run(), and nidas::util::McSocketMulticaster< SocketTT >::run().

int nidas::util::McSocketDatagram::getMagic ( ) const
inline
int nidas::util::DatagramPacketBase::getMaxLength ( ) const
inlineinherited

Return the allocated length in bytes of the data.

References nidas::util::DatagramPacketBase::maxlength.

Referenced by PacketReader::loop().

int nidas::util::McSocketDatagram::getRequesterListenPort ( ) const
inline

What port is the requester listening on for the connection back?

References nidas::util::McSocketData::_listenPort, and mcdata.

Referenced by nidas::util::McSocketListener::run(), and nidas::util::McSocketMulticaster< SocketTT >::run().

int nidas::util::McSocketDatagram::getRequestType ( ) const
inline
int nidas::util::DatagramPacketBase::getSockAddrLen ( ) const
inlineinherited
struct sockaddr* nidas::util::DatagramPacketBase::getSockAddrPtr ( )
inlineinherited
SocketAddress& nidas::util::DatagramPacketBase::getSocketAddress ( ) const
inlineinherited
int nidas::util::McSocketDatagram::getSocketType ( ) const
inline

What socket type does the requester want to establish? SOCK_STREAM or SOCK_DGRAM.

References nidas::util::McSocketData::_socketType, and mcdata.

Referenced by nidas::util::McSocketListener::run(), and nidas::util::McSocketMulticaster< SocketTT >::run().

McSocketDatagram & McSocketDatagram::operator= ( const McSocketDatagram rhs)

Assignment operator.

References nidas::util::DatagramPacketT< McSocketData >::data, and mcdata.

void nidas::util::DatagramPacketT< McSocketData >::setData ( McSocketData val)
inlineinherited

Set the pointer to the data portion of the packet.

/param val Pointer to an allocated section of memory. This pointer is owned by the caller, it is not deleted by the DatagramPacket destructor.

virtual void nidas::util::DatagramPacketBase::setLength ( int  val)
inlinevirtualinherited

Set the value for the current number of bytes in data.

/param val Number of bytes, must be <= max length.

References nidas::util::DatagramPacketBase::length.

Referenced by PacketReader::checkPacket().

void nidas::util::McSocketDatagram::setMagic ( int  val)
inline
void nidas::util::DatagramPacketBase::setMaxLength ( int  val)
inlineinherited

Set the allocated length in bytes of the data.

/param val Number of bytes allocated in data.

References nidas::util::DatagramPacketBase::maxlength.

void nidas::util::McSocketDatagram::setRequesterListenPort ( int  val)
inline
void nidas::util::McSocketDatagram::setRequestType ( int  val)
inline
void nidas::util::DatagramPacketBase::setSocketAddress ( const SocketAddress val)
inlineinherited
void nidas::util::McSocketDatagram::setSocketType ( int  val)
inline

Member Data Documentation

SocketAddress* nidas::util::DatagramPacketBase::addr
protectedinherited

Referenced by McSocketDatagram(), and operator=().

int nidas::util::DatagramPacketBase::length
protectedinherited

length of datagram that was read or will be sent.

Must be <= maxlength.

Referenced by nidas::util::DatagramPacketBase::getLength(), nidas::util::DatagramPacketBase::operator=(), and nidas::util::DatagramPacketBase::setLength().

const int McSocketDatagram::magicVal = 0x01234567
static

Magic value that should be found at the beginning of all received McSocketDatagrams.

Referenced by nidas::util::McSocketListener::run(), and nidas::util::McSocketMulticaster< SocketTT >::run().

int nidas::util::DatagramPacketBase::maxlength
protectedinherited
struct McSocketData nidas::util::McSocketDatagram::mcdata
protected

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