Man Linux: Main Page and Category List

NAME

       TRTPSessionBase -

SYNOPSIS

       #include <rtp.h>

       Inherited by SingleThreadRTPSession< RTPDataChannel, RTCPChannel,
       ServiceQueue >.

   Public Member Functions
       TRTPSessionBase (const InetHostAddress &ia, tpport_t dataPort, tpport_t
           controlPort, uint32 membersSize, RTPApplication &app)
           Builds a session waiting for packets in a host address.
       TRTPSessionBase (uint32 ssrc, const InetHostAddress &ia, tpport_t
           dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication
           &app)
           Builds a session with the specified ssrc identifier for the local
           source.
       TRTPSessionBase (const InetMcastAddress &ia, tpport_t dataPort,
           tpport_t controlPort, uint32 membersSize, RTPApplication &app,
           uint32 iface)
           Builds a session waiting for packets in a multicast address.
       TRTPSessionBase (uint32 ssrc, const InetMcastAddress &ia, tpport_t
           dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication
           &app, uint32 iface)
           Builds a session waiting for packets in a multicast address, with
           the specified ssrc identifier for the local source.
       virtual size_t dispatchBYE (const std::string &str)
       Socket::Error setMcastTTL (uint8 ttl)
           Set the value of the TTL field in the sent packets.
       virtual ~TRTPSessionBase ()
       RTPDataChannel * getDSO (void)

   Protected Member Functions
       bool isPendingData (microtimeout_t timeout)
       InetHostAddress getDataSender (tpport_t *port=NULL) const
       size_t getNextDataPacketSize () const
       size_t recvData (unsigned char *buffer, size_t len, InetHostAddress
           &na, tpport_t &tp)
           Receive data from the data channel/socket.
       void setDataPeer (const InetAddress &host, tpport_t port)
       size_t sendData (const unsigned char *const buffer, size_t len)
       SOCKET getDataRecvSocket () const
       bool isPendingControl (microtimeout_t timeout)
       InetHostAddress getControlSender (tpport_t *port=NULL) const
       size_t recvControl (unsigned char *buffer, size_t len, InetHostAddress
           &na, tpport_t &tp)
           Receive data from the control channel/socket.
       void setControlPeer (const InetAddress &host, tpport_t port)
       size_t sendControl (const unsigned char *const buffer, size_t len)
       SOCKET getControlRecvSocket () const
       Socket::Error joinGroup (const InetMcastAddress &ia, uint32 iface)
           Join a multicast group.
       Socket::Error leaveGroup (const InetMcastAddress &ia)
           Leave a multicast group.
       void endSocket ()

   Protected Attributes
       RTPDataChannel * dso
       RTCPChannel * cso

   Friends
       class RTPSessionBaseHandler

   template<class RTPDataChannel = DualRTPUDPIPv4Channel, class RTCPChannel =
       DualRTPUDPIPv4Channel, class ServiceQueue = AVPQueue> class
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >

Constructor & Destructor Documentation

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::TRTPSessionBase (const InetHostAddress & ia, tpport_t dataPort,
       tpport_t controlPort, uint32 membersSize, RTPApplication & app)
       [inline]
       Builds a session waiting for packets in a host address. Parameters:
           ia Network address this socket is to be bound.
           dataPort Transport port the data socket is to be bound.
           controlPort Transport port the control socket is to be bound.
           membersSize Initial size of the membership table.
           app Application this session is associated to.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::TRTPSessionBase (uint32 ssrc, const InetHostAddress & ia, tpport_t
       dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &
       app) [inline]
       Builds a session with the specified ssrc identifier for the local
       source. Parameters:
           ssrc SSRC identifier for the local source.
           ia Network address this socket is to be bound.
           dataPort Transport port the data socket is to be bound.
           controlPort Transport port the control socket is to be bound.
           membersSize Initial size of the membership table.
           app Application this session is associated to.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::TRTPSessionBase (const InetMcastAddress & ia, tpport_t dataPort,
       tpport_t controlPort, uint32 membersSize, RTPApplication & app, uint32
       iface) [inline]
       Builds a session waiting for packets in a multicast address. TODO: ssrc
       constructor for multicast!

       Parameters:
           ia Multicast address this socket is to be bound.
           dataPort Transport port the data socket is to be bound.
           controlPort Transport port the control socket is to be bound.
           membersSize Initial size of the membership table.
           app Application this session is associated to.
           iface Index (from 0 to n) of network interface to join to multicast
           group.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::TRTPSessionBase (uint32 ssrc, const InetMcastAddress & ia, tpport_t
       dataPort, tpport_t controlPort, uint32 membersSize, RTPApplication &
       app, uint32 iface) [inline]
       Builds a session waiting for packets in a multicast address, with the
       specified ssrc identifier for the local source. Parameters:
           ssrc SSRC identifier for the local source.
           ia Multicast address this socket is to be bound.
           dataPort Transport port the data socket is to be bound.
           controlPort Transport port the control socket is to be bound.
           membersSize Initial size of the membership table.
           app Application this session is associated to.
           iface Index (from 0 to n) of network interface to join to multicast
           group.

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

Member Function Documentation

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

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> void
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >::endSocket
       () [inline, protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> SOCKET
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::getControlRecvSocket () const [inline, protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       InetHostAddress TRTPSessionBase< RTPDataChannel, RTCPChannel,
       ServiceQueue >::getControlSender (tpport_t * port = NULL) const
       [inline, protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> SOCKET
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::getDataRecvSocket () const [inline, protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       InetHostAddress TRTPSessionBase< RTPDataChannel, RTCPChannel,
       ServiceQueue >::getDataSender (tpport_t * port = NULL) const [inline,
       protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       RTPDataChannel* TRTPSessionBase< RTPDataChannel, RTCPChannel,
       ServiceQueue >::getDSO (void) [inline]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> size_t
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::getNextDataPacketSize () const [inline, protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> bool
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::isPendingControl (microtimeout_t timeout) [inline, protected]
       Parameters:
           timeout maximum timeout to wait, in microseconds

       Returns:
           whether there are packets waiting to be picked

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> bool
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::isPendingData (microtimeout_t timeout) [inline, protected]
       Parameters:
           timeout maximum timeout to wait, in microseconds

       Reimplemented in SingleThreadRTPSession< RTPDataChannel, RTCPChannel,
       ServiceQueue >.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> Socket::Error
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >::joinGroup
       (const InetMcastAddress & ia, uint32 iface) [inline, protected]
       Join a multicast group. Parameters:
           ia address of the multicast group

       Returns:
           error code from the socket operation

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> Socket::Error
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::leaveGroup (const InetMcastAddress & ia) [inline, protected]
       Leave a multicast group. Parameters:
           ia address of the multicast group

       Returns:
           error code from the socket operation

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> size_t
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::recvControl (unsigned char * buffer, size_t len, InetHostAddress &
       na, tpport_t & tp) [inline, protected]
       Receive data from the control channel/socket. Parameters:
           buffer Buffer where to get data.
           len Maximum number of octets to get.
           na Source network address.
           tp Source transport port.

       Returns:
           Number of octets actually read.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> size_t
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >::recvData
       (unsigned char * buffer, size_t len, InetHostAddress & na, tpport_t &
       tp) [inline, protected]
       Receive data from the data channel/socket. Parameters:
           buffer Memory region to read to.
           len Maximum number of octets to get.
           na Source network address.
           tp Source transport port.

       Returns:
           Number of octets actually read.

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> size_t
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::sendControl (const unsigned char *const  buffer, size_t len)
       [inline, protected] Returns:
           number of octets actually written

       Parameters:
           buffer
           len

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> size_t
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >::sendData
       (const unsigned char *const  buffer, size_t len) [inline, protected]
       Parameters:
           buffer memory region to write from
           len number of octets to write

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> void
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::setControlPeer (const InetAddress & host, tpport_t port) [inline,
       protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> void
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::setDataPeer (const InetAddress & host, tpport_t port) [inline,
       protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> Socket::Error
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue
       >::setMcastTTL (uint8 ttl) [inline]
       Set the value of the TTL field in the sent packets. Parameters:
           ttl Time To Live

       Returns:
           error code from the socket operation

Friends And Related Function Documentation

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> friend class
       RTPSessionBaseHandler [friend]

Member Data Documentation

   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue> RTCPChannel*
       TRTPSessionBase< RTPDataChannel, RTCPChannel, ServiceQueue >::cso
       [protected]
   template<class RTPDataChannel  = DualRTPUDPIPv4Channel, class RTCPChannel
       = DualRTPUDPIPv4Channel, class ServiceQueue  = AVPQueue>
       RTPDataChannel* TRTPSessionBase< RTPDataChannel, RTCPChannel,
       ServiceQueue >::dso [protected]

Author

       Generated automatically by Doxygen for ccRTP from the source code.