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_tlocal, tpport_tremote)

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 ()\fC [virtual]\fP

Member Function Documentation

UDPTransmit::Error RTPDuplex::connect (const InetHostAddress &host, tpport_tport = \fC0\fP)

Parameters:

host peer address

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

Returns:

socket status

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

Implements IncomingDataQueue.

\fBSyncSource\fP& RTPDuplex::getPeer ()\fC [protected]\fP

Returns:

the associated peer information

bool RTPDuplex::isPendingData (\fBmicrotimeout_t\fPtimeout)\fC [inline]\fP, \fC [protected]\fP, \fC [virtual]\fP

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_tlen, InetHostAddress &na, tpport_t &tp)\fC [inline]\fP, \fC [protected]\fP, \fC [virtual]\fP

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 *constbuffer, size_tlen)\fC [inline]\fP, \fC [protected]\fP, \fC [virtual]\fP

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)\fC [inline]\fP, \fC [protected]\fP, \fC [virtual]\fP

Parameters:

- peer host network address.

- peer host RTCP transport port.

Reimplemented from OutgoingDataQueue.

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

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.