ccRTP 2.1.2
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
RTPBaseUDPIPv4Socket Class Reference

A UDP/IPv4 socket class targetted 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 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

Definition at line 94 of file channel.h.

Constructor & Destructor Documentation

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

Constructor for receiver.

Definition at line 100 of file channel.h.

RTPBaseUDPIPv4Socket::~RTPBaseUDPIPv4Socket ( )
inline

Definition at line 104 of file channel.h.

RTPBaseUDPIPv4Socket::RTPBaseUDPIPv4Socket ( )
inline

Constructor for transmitter.

Definition at line 145 of file channel.h.

Member Function Documentation

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

Definition at line 135 of file channel.h.

void RTPBaseUDPIPv4Socket::endSocket ( )
inline

Definition at line 162 of file channel.h.

size_t RTPBaseUDPIPv4Socket::getNextPacketSize ( ) const
inline

Get size of next datagram waiting to be read.

Definition at line 123 of file channel.h.

SOCKET RTPBaseUDPIPv4Socket::getRecvSocket ( ) const
inline

Definition at line 157 of file channel.h.

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

Definition at line 112 of file channel.h.

bool RTPBaseUDPIPv4Socket::isPendingRecv ( microtimeout_t  timeout)
inline

Definition at line 108 of file channel.h.

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

Definition at line 131 of file channel.h.

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

Definition at line 116 of file channel.h.

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

Definition at line 154 of file channel.h.

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

Definition at line 127 of file channel.h.

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

Definition at line 150 of file channel.h.

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

Definition at line 139 of file channel.h.


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