ccRTP
Public Member Functions | List of all members
RTPBaseUDPIPv4Socket Class Reference

A UDP/IPv4 socket class targeted at RTP stacks. More...

#include <channel.h>

Inheritance diagram for RTPBaseUDPIPv4Socket:
Inheritance graph
[legend]
Collaboration diagram for RTPBaseUDPIPv4Socket:
Collaboration graph
[legend]

Public Member Functions

 RTPBaseUDPIPv4Socket (const InetAddress &ia, tpport_t port)
 Constructor for receiver. More...
 
 ~RTPBaseUDPIPv4Socket ()
 
bool isPendingRecv (microtimeout_t timeout)
 
InetHostAddress getSender (tpport_t &port) const
 
size_t recv (unsigned char *buffer, size_t len)
 
size_t getNextPacketSize () const
 Get size of next datagram waiting to be read. More...
 
Socket::Error setMulticast (bool enable)
 
Socket::Error join (const InetMcastAddress &ia, uint32 iface)
 
Socket::Error drop (const InetMcastAddress &ia)
 
Socket::Error setTimeToLive (unsigned char ttl)
 
 RTPBaseUDPIPv4Socket ()
 Constructor for transmitter. More...
 
void setPeer (const InetAddress &ia, tpport_t port)
 
size_t send (const unsigned char *const buffer, size_t len)
 
SOCKET getRecvSocket () const
 
void endSocket ()
 

Detailed Description

A UDP/IPv4 socket class targeted at RTP stacks.

This class provides a flat interface that includes all the services required by an RTP stack.

It can be used in two ways:

To instantiate the DualSocket template, which will be used to instantiate an RTP stack template (such as TRTPSessionBase).

To directly instantiate an RTP stack template (such as TRTPSessionBase).

This class offers an example of the interface that other classes should provide in order to specialize the ccRTP stack for different underlying protocols.

Author
Federico Montesino Pouzols fedem.nosp@m.p@al.nosp@m.tern..nosp@m.org

Constructor & Destructor Documentation

RTPBaseUDPIPv4Socket::RTPBaseUDPIPv4Socket ( const InetAddress &  ia,
tpport_t  port 
)
inline

Constructor for receiver.

RTPBaseUDPIPv4Socket::~RTPBaseUDPIPv4Socket ( )
inline
RTPBaseUDPIPv4Socket::RTPBaseUDPIPv4Socket ( )
inline

Constructor for transmitter.

Member Function Documentation

Socket::Error RTPBaseUDPIPv4Socket::drop ( const InetMcastAddress &  ia)
inline
void RTPBaseUDPIPv4Socket::endSocket ( )
inline
size_t RTPBaseUDPIPv4Socket::getNextPacketSize ( ) const
inline

Get size of next datagram waiting to be read.

SOCKET RTPBaseUDPIPv4Socket::getRecvSocket ( ) const
inline
InetHostAddress RTPBaseUDPIPv4Socket::getSender ( tpport_t &  port) const
inline
bool RTPBaseUDPIPv4Socket::isPendingRecv ( microtimeout_t  timeout)
inline
Socket::Error RTPBaseUDPIPv4Socket::join ( const InetMcastAddress &  ia,
uint32  iface 
)
inline
size_t RTPBaseUDPIPv4Socket::recv ( unsigned char *  buffer,
size_t  len 
)
inline
size_t RTPBaseUDPIPv4Socket::send ( const unsigned char *const  buffer,
size_t  len 
)
inline
Socket::Error RTPBaseUDPIPv4Socket::setMulticast ( bool  enable)
inline
void RTPBaseUDPIPv4Socket::setPeer ( const InetAddress &  ia,
tpport_t  port 
)
inline
Socket::Error RTPBaseUDPIPv4Socket::setTimeToLive ( unsigned char  ttl)
inline

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