44 #ifndef CCXX_RTP_EXT_H
45 #define CCXX_RTP_EXT_H
47 #ifndef COMMONCPP_SOCKET_H_
48 #include <commoncpp/socket.h>
49 #include <commoncpp/udp.h>
73 protected UDPReceive,
public UDPTransmit
81 RTPDuplex(
const InetAddress &bind, tpport_t local, tpport_t remote);
96 connect(
const InetHostAddress &host, tpport_t port = 0);
106 {
return isPendingReceive(timeout); }
114 sendData(
const unsigned char *
const buffer,
size_t len)
115 {
return UDPTransmit::transmit((
const char *)buffer, len); }
126 InetHostAddress& na, tpport_t& tp)
128 return UDPReceive::receive(buffer, len); }
150 size_t len;
ccioctl(
const_cast<RTPDuplex*
>(
this)->UDPReceive::getReceiver(),FIONREAD,len);
return len;
159 tpport_t dataBasePort;
uint32 microtimeout_t
Time interval expressed in microseconds.
Definition: base.h:67
Definition of socket classes for different underlying transport and/or network protocols that can be ...
size_t ccioctl(int so, int request, size_t &len)
Definition: channel.h:45
A packet queue handler for building different kinds of RTP protocol systems.
Definition: ioqueue.h:77
A peer associated RTP socket pair for physically connected peer hosts.
Definition: ext.h:74
Synchronization source in an RTP session.
Definition: sources.h:193
size_t getNextDataPacketSize() const
Definition: ext.h:147
bool isPendingData(microtimeout_t timeout)
Definition: ext.h:105
void setControlPeer(const InetAddress &, tpport_t)
Definition: ext.h:143
UDPTransmit::Error connect(const InetHostAddress &host, tpport_t port=0)
void setDataPeer(const InetAddress &, tpport_t)
Definition: ext.h:135
RTPDuplex(const InetAddress &bind, tpport_t local, tpport_t remote)
size_t recvData(unsigned char *buffer, size_t len, InetHostAddress &na, tpport_t &tp)
Definition: ext.h:125
size_t sendData(const unsigned char *const buffer, size_t len)
Definition: ext.h:114
Generic RTP input/output queues.