ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue > Class Template Reference
[RTP sessions.RTP sessions.]

This template class adds the threading aspect to the RTPSessionBase template in one of the many possible ways. More...

#include <rtp.h>

Inheritance diagram for ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >:

ost::Thread ost::TRTPSessionBaseIPV6< RTPDataChannel, RTCPChannel, ServiceQueue > List of all members.

Public Member Functions

 SingleThreadRTPSessionIPV6 (const IPV6Host &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0, int pri=0, uint32 memberssize=MembershipBookkeeping::defaultMembersHashSize, RTPApplication &app=defaultApplication())
 SingleThreadRTPSessionIPV6 (const IPV6Multicast &ia, tpport_t dataPort=DefaultRTPDataPort, tpport_t controlPort=0, int pri=0, uint32 memberssize=MembershipBookkeeping::defaultMembersHashSize, RTPApplication &app=defaultApplication(), uint32 iface=0)
 ~SingleThreadRTPSessionIPV6 ()
void startRunning ()
 Activate stack and start service thread.

Protected Member Functions

void enableStack (void)
microtimeout_t getSchedulingTimeout (void)
void controlReceptionService (void)
void controlTransmissionService (void)
timeval getRTCPCheckInterval (void)
size_t dispatchDataPacket (void)
virtual void timerTick (void)
virtual bool isPendingData (microtimeout_t timeout)
virtual void run (void)
 Single runnable method for this RTP stacks, schedules outgoing and incoming RTP data and RTCP packets.
size_t takeInDataPacket (void)
size_t dispatchBYE (const std::string &str)

Detailed Description

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
class ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >

This template class adds the threading aspect to the RTPSessionBase template in one of the many possible ways.

It inherits from a single execution thread that schedules sending of outgoing packets and receipt of incoming packets.

Author:
David Sugar <dyfet@gnutelephony.org>


Constructor & Destructor Documentation

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::SingleThreadRTPSessionIPV6 const IPV6Host ia,
tpport_t  dataPort = DefaultRTPDataPort,
tpport_t  controlPort = 0,
int  pri = 0,
uint32  memberssize = MembershipBookkeeping::defaultMembersHashSize,
RTPApplication app = defaultApplication()
[inline]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::SingleThreadRTPSessionIPV6 const IPV6Multicast ia,
tpport_t  dataPort = DefaultRTPDataPort,
tpport_t  controlPort = 0,
int  pri = 0,
uint32  memberssize = MembershipBookkeeping::defaultMembersHashSize,
RTPApplication app = defaultApplication(),
uint32  iface = 0
[inline]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::~SingleThreadRTPSessionIPV6  )  [inline]
 


Member Function Documentation

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::controlReceptionService void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::controlTransmissionService void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
size_t ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::dispatchBYE const std::string &  str  )  [inline, protected, virtual]
 

Reimplemented from ost::TRTPSessionBaseIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >.

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
size_t ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::dispatchDataPacket void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::enableStack void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
timeval ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::getRTCPCheckInterval void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
microtimeout_t ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::getSchedulingTimeout void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
virtual bool ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::isPendingData microtimeout_t  timeout  )  [inline, protected, virtual]
 

Reimplemented from ost::TRTPSessionBaseIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >.

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
virtual void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::run void   )  [inline, protected, virtual]
 

Single runnable method for this RTP stacks, schedules outgoing and incoming RTP data and RTCP packets.

Implements ost::Thread.

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::startRunning  )  [inline]
 

Activate stack and start service thread.

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
size_t ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::takeInDataPacket void   )  [inline, protected]
 

template<class RTPDataChannel = DualRTPUDPIPv6Channel, class RTCPChannel = DualRTPUDPIPv6Channel, class ServiceQueue = AVPQueue>
virtual void ost::SingleThreadRTPSessionIPV6< RTPDataChannel, RTCPChannel, ServiceQueue >::timerTick void   )  [inline, protected, virtual]
 


The documentation for this class was generated from the following file:
Generated on Thu Apr 6 09:03:06 2006 for Bayonne Framework by  doxygen 1.4.6