NAME
SingleThreadRTPSession -
This template class adds the threading aspect to the RTPSessionBase
template in one of the many possible ways.
SYNOPSIS
#include <rtp.h>
Inherits 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)
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_t
dataPort = DefaultRTPDataPort, tpport_t controlPort = 0, int pri = 0,
uint32 memberssize = MembershipBookkeeping::defaultMembersHashSize,
RTPApplication & app = defaultApplication()) [inline]
template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel
= DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue>
SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue
>::SingleThreadRTPSession (uint32 ssrc, const InetHostAddress & ia,
tpport_t dataPort = DefaultRTPDataPort, tpport_t controlPort = 0, int
pri = 0, uint32 memberssize =
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_t
dataPort = DefaultRTPDataPort, tpport_t controlPort = 0, int pri = 0,
uint32 memberssize = MembershipBookkeeping::defaultMembersHashSize,
RTPApplication & app = defaultApplication(), uint32 iface = 0) [inline]
template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel
= DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue>
SingleThreadRTPSession< RTPDataChannel, RTCPChannel, ServiceQueue
>::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) [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_t timeout) [inline, protected, virtual]
Reimplemented from TRTPSessionBase< RTPDataChannel, RTCPChannel,
ServiceQueue >.
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:
rtplisten.cpp, and rtpsend.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.