Scroll to navigation

SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >(3) Library Functions Manual SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >(3)

NAME

SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue > -
This template class adds the threading aspect to the RTPSessionBase template in one of the many possible ways.

SYNOPSIS

#include <rtp.h>
Inherits Thread, and TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >.

Public Member Functions


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

Protected Member Functions


void disableStack (void)
 
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)
 

Additional Inherited Members

Detailed Description

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue>class SingleThreadRTPSession< 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:
Federico Montesino Pouzols fedemp@altern.org
Examples:
audiorx.cpp, audiotx.cpp, ccrtptest.cpp, rtphello.cpp, rtplisten.cpp, and rtpsend.cpp.

Constructor & Destructor Documentation

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >:: SingleThreadRTPSession (const InetHostAddress &ia, tpport_tdataPort = DefaultRTPDataPort, tpport_tcontrolPort = 0, intpri = 0, uint32memberssize = MembershipBookkeeping::defaultMembersHashSize , RTPApplication &app = defaultApplication()) [inline]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >:: SingleThreadRTPSession (uint32ssrc, const InetHostAddress &ia, tpport_tdataPort = DefaultRTPDataPort, tpport_tcontrolPort = 0 , intpri = 0, uint32memberssize = MembershipBookkeeping::defaultMembersHashSize , RTPApplication &app = defaultApplication()) [inline]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >:: SingleThreadRTPSession (const InetMcastAddress &ia, tpport_tdataPort = DefaultRTPDataPort, tpport_tcontrolPort = 0, intpri = 0, uint32memberssize = MembershipBookkeeping::defaultMembersHashSize , RTPApplication &app = defaultApplication(), uint32iface = 0 ) [inline]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >:: SingleThreadRTPSession (uint32ssrc, const InetMcastAddress &ia, tpport_tdataPort = DefaultRTPDataPort, tpport_tcontrolPort = 0 , intpri = 0, uint32memberssize = MembershipBookkeeping::defaultMembersHashSize , RTPApplication &app = defaultApplication(), uint32iface = 0 ) [inline]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::~ SingleThreadRTPSession () [inline]

Member Function Documentation

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::controlReceptionService (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::controlTransmissionService (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::disableStack (void) [inline], [protected]

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

Reimplemented from TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >.

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> size_t SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::dispatchDataPacket (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::enableStack (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> timeval SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::getRTCPCheckInterval (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> microtimeout_t SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::getSchedulingTimeout (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> virtual bool SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::isPendingData ( microtimeout_ttimeout) [inline], [protected], [virtual]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> virtual void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::run (void) [inline], [protected], [virtual]

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

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::startRunning () [inline]

Activate stack and start service thread.
Examples:
ccrtptest.cpp.

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> size_t SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::takeInDataPacket (void) [inline], [protected]

template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel = DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> virtual void SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue >::timerTick (void) [inline], [protected], [virtual]

Author

Generated automatically by Doxygen for ccRTP from the source code.
Wed Jun 25 2014 ccRTP