class UDPSession

RTP or UDPTL session. More...

Full nameTelEngine::UDPSession
Definition#include <libs/yrtp/yatertp.h>
InheritsTelEngine::RTPProcessor [public ]
Inherited byRTPSession, UDPTLSession
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Protected Methods

Protected Members


Detailed Description

A base class for RTP, SRTP or UDPTL sessions

 ~UDPSession ()

~UDPSession

[virtual]

Destructor - cleans up any remaining resources

RTPTransport*  createTransport ()

createTransport

[virtual]

Create a new RTP or UDP transport for this session. Override this method to create objects derived from RTPTransport.

Returns: Pointer to the new transport or NULL on failure

bool  initTransport ()

initTransport

Initialize the RTP session, attach a transport if there is none

Returns: True if initialized, false on some failure

bool  initGroup (int msec = 0, Thread::Priority prio = Thread::Normal)

initGroup

Initialize the RTP session, attach a group if none is present

Parameters:
msecMinimum time to sleep in group loop in milliseconds
prioThread priority to run the new group

Returns: True if initialized, false on some failure

inline bool  remoteAddr (SocketAddr& addr, bool sniff = false)

remoteAddr

Set the remote network address of the RTP transport of this session

Parameters:
addrNew remote RTP transport address
sniffAutomatically adjust the address from the first incoming packet

Returns: True if address set, false if a failure occured

inline bool  setTOS (int tos)

setTOS

Set the Type Of Service for the RTP transport socket

Parameters:
tosType Of Service bits to set

Returns: True if operation was successfull, false if an error occured

inline Socket*  rtpSock ()

rtpSock

Get the main transport socket used by this session

Returns: Pointer to the RTP or UDPTL socket, NULL if no transport exists

inline bool  drillHole ()

drillHole

Drill a hole in a firewall or NAT for the RTP and RTCP sockets

Returns: True if at least a packet was sent for the RTP socket

void  setTimeout (int interval)

setTimeout

Set the interval until receiver timeout is detected

Parameters:
intervalMilliseconds until receiver times out, zero to disable

inline RTPTransport*  transport ()

transport

[const]

Get the RTP/RTCP transport of data handled by this session.

Returns: A pointer to the RTPTransport of this session

void  transport (RTPTransport* trans)

transport

[virtual]

Set the UDP transport of data handled by this session

Parameters:
transA pointer to the new RTPTransport for this session

 UDPSession ()

UDPSession

[protected]

Default constructor

void  timeout (bool initial)

timeout

[protected virtual]

Method called when the receiver timed out

Parameters:
initialTrue if no packet was ever received in this session

RTPTransport* m_transport

m_transport

[protected]

u_int64_t m_timeoutTime

m_timeoutTime

[protected]

u_int64_t m_timeoutInterval

m_timeoutInterval

[protected]


Generated by: paulc on bussard on Tue Mar 8 18:42:27 2011, using kdoc 2.0a54.