Provided by: libccrtp-doc_2.0.9-2.2_all bug

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_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]
   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:
           audiorx.cpp, audiotx.cpp, ccrtptest.cpp, and rtphello.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.

ccRTP                      SingleThreadRTPSession<1RTPDataChannel, RTCPChannel, ServiceQueue >(3)