RTPDuplex(3) A peer associated RTP socket pair for physically connected peer hosts.

SYNOPSIS


#include <cc++/rtp.h>

Inherits RTPDataQueue, UDPReceive, and UDPTransmit.

Public Member Functions


RTPDuplex (const InetAddress &bind, tpport_t local, tpport_t remote)

virtual ~RTPDuplex ()

UDPTransmit::Error connect (const InetHostAddress &host, tpport_t port=0)

Protected Member Functions


bool isPendingData (microtimeout_t timeout)

size_t sendData (const unsigned char *const buffer, size_t len)

size_t recvData (unsigned char *buffer, size_t len, InetHostAddress &na, tpport_t &tp)

void setDataPeer (const InetAddress &, tpport_t)

void setControlPeer (const InetAddress &, tpport_t)

size_t getNextDataPacketSize () const

SyncSource & getPeer ()

Additional Inherited Members

Detailed Description

A peer associated RTP socket pair for physically connected peer hosts.

This has no RTCP and assumes the receiver is connected to a known transmitter, hence no 'foreign' packets will arrive.

Author:

David Sugar RTP peer host over UDP.

Examples: rtpduphello.cpp.

Constructor & Destructor Documentation

RTPDuplex::RTPDuplex (const InetAddress & bind, tpport_t local, tpport_t remote)

Parameters:

bind network address this socket is to be bound
local transport port this socket is to be bound
remote peer transpor port

virtual RTPDuplex::~RTPDuplex () [virtual]

Member Function Documentation

UDPTransmit::Error RTPDuplex::connect (const InetHostAddress & host, tpport_t port = 0)

Parameters:

host peer address
port peer port. If not specified, the same as the local is used

Returns:

socket status

Examples: rtpduphello.cpp.

size_t RTPDuplex::getNextDataPacketSize () const [inline], [protected], [virtual]

Implements IncomingDataQueue.

SyncSource& RTPDuplex::getPeer () [protected]

Returns:

the associated peer information

bool RTPDuplex::isPendingData (microtimeout_t timeout) [inline], [protected], [virtual]

Parameters:

timeout how much time to wait for new data

Returns:

if there is some new data

Implements RTPDataQueue.

size_t RTPDuplex::recvData (unsigned char * buffer, size_t len, InetHostAddress & na, tpport_t & tp) [inline], [protected], [virtual]

Parameters:

buffer where to store the retrieved data
len how many octets to read
na Source network address.
tp Source transport port.

Returns:

number of octets read

Implements IncomingDataQueue.

size_t RTPDuplex::sendData (const unsigned char *const buffer, size_t len) [inline], [protected], [virtual]

Parameters:

buffer pointer to data to be written
len how many octets to write

Returns:

number of octets written

Reimplemented from OutgoingDataQueue.

void RTPDuplex::setControlPeer (const InetAddress &, tpport_t) [inline], [protected], [virtual]

Parameters:

- peer host network address.
- peer host RTCP transport port.

Reimplemented from OutgoingDataQueue.

void RTPDuplex::setDataPeer (const InetAddress &, tpport_t) [inline], [protected], [virtual]

Parameters:

- peer host network address.
- peer host RTP data transport port.

Reimplemented from OutgoingDataQueue.

Author

Generated automatically by Doxygen for ccRTP from the source code.