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

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

#include <channel.h>

Inheritance diagram for RTPBaseUDPIPv4Socket:

Public Member Functions

 RTPBaseUDPIPv4Socket (const InetAddress &ia, tpport_t port)
 Constructor for receiver.
 
 ~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.
 
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.
 
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 targetted 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() [1/2]

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

Constructor for receiver.

◆ ~RTPBaseUDPIPv4Socket()

RTPBaseUDPIPv4Socket::~RTPBaseUDPIPv4Socket ( )
inline

◆ RTPBaseUDPIPv4Socket() [2/2]

RTPBaseUDPIPv4Socket::RTPBaseUDPIPv4Socket ( )
inline

Constructor for transmitter.

Member Function Documentation

◆ drop()

Socket::Error RTPBaseUDPIPv4Socket::drop ( const InetMcastAddress &  ia)
inline

◆ endSocket()

void RTPBaseUDPIPv4Socket::endSocket ( )
inline

◆ getNextPacketSize()

size_t RTPBaseUDPIPv4Socket::getNextPacketSize ( ) const
inline

Get size of next datagram waiting to be read.

◆ getRecvSocket()

SOCKET RTPBaseUDPIPv4Socket::getRecvSocket ( ) const
inline

◆ getSender()

InetHostAddress RTPBaseUDPIPv4Socket::getSender ( tpport_t &  port) const
inline

◆ isPendingRecv()

bool RTPBaseUDPIPv4Socket::isPendingRecv ( microtimeout_t  timeout)
inline

◆ join()

Socket::Error RTPBaseUDPIPv4Socket::join ( const InetMcastAddress &  ia,
uint32  iface 
)
inline

◆ recv()

size_t RTPBaseUDPIPv4Socket::recv ( unsigned char *  buffer,
size_t  len 
)
inline

◆ send()

size_t RTPBaseUDPIPv4Socket::send ( const unsigned char *const  buffer,
size_t  len 
)
inline

◆ setMulticast()

Socket::Error RTPBaseUDPIPv4Socket::setMulticast ( bool  enable)
inline

◆ setPeer()

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

◆ setTimeToLive()

Socket::Error RTPBaseUDPIPv4Socket::setTimeToLive ( unsigned char  ttl)
inline

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