|
OpenH323
1.18.0
|
#include <rtp.h>
Public Member Functions | |
| void | Reopen (BOOL isReading) |
Construction | |
| RTP_UDP (unsigned id, BOOL remoteIsNat=FALSE) | |
| ~RTP_UDP () | |
| Destroy the RTP. | |
Overrides from class RTP_Session | |
| virtual BOOL | ReadData (RTP_DataFrame &frame) |
| virtual BOOL | WriteData (RTP_DataFrame &frame) |
| virtual BOOL | WriteControl (RTP_ControlFrame &frame) |
| virtual void | Close (BOOL reading) |
| virtual PString | GetLocalHostName () |
QoS Settings | |
| virtual BOOL | ModifyQOS (RTP_QOS *rtpqos) |
| virtual void | EnableGQoS () |
New functions for class | |
| BOOL | Open (PIPSocket::Address localAddress, WORD portBase, WORD portMax, BYTE ipTypeOfService, void *=NULL, RTP_QOS *rtpqos=NULL) |
Member variable access | |
| PIPSocket::Address | GetLocalAddress () const |
| void | SetLocalAddress (const PIPSocket::Address &addr) |
| PIPSocket::Address | GetRemoteAddress () const |
| WORD | GetLocalDataPort () const |
| WORD | GetLocalControlPort () const |
| WORD | GetRemoteDataPort () const |
| WORD | GetRemoteControlPort () const |
| PUDPSocket & | GetDataSocket () |
| PUDPSocket & | GetControlSocket () |
| BOOL | SetRemoteSocketInfo (PIPSocket::Address address, WORD port, BOOL isDataPort) |
| void | ApplyQOS (const PIPSocket::Address &addr) |
Protected Member Functions | |
| SendReceiveStatus | ReadDataPDU (RTP_DataFrame &frame) |
| SendReceiveStatus | ReadControlPDU () |
| SendReceiveStatus | ReadDataOrControlPDU (PUDPSocket &socket, PBYTEArray &frame, BOOL fromDataChannel) |
Protected Attributes | |
| PIPSocket::Address | localAddress |
| WORD | localDataPort |
| WORD | localControlPort |
| PIPSocket::Address | remoteAddress |
| WORD | remoteDataPort |
| WORD | remoteControlPort |
| PIPSocket::Address | remoteTransmitAddress |
| BOOL | shutdownRead |
| BOOL | shutdownWrite |
| PUDPSocket * | dataSocket |
| PUDPSocket * | controlSocket |
| BOOL | appliedQOS |
| BOOL | enableGQOS |
| BOOL | remoteIsNAT |
This class is for the IETF Real Time Protocol interface on UDP/IP.
| RTP_UDP::RTP_UDP | ( | unsigned | id, |
| BOOL | remoteIsNat = FALSE |
||
| ) |
Create a new RTP channel.
| id | Session ID for RTP channel |
| remoteIsNat | If TRUE, we have hints the remote endpoint is behind a NAT |
Destroy the RTP.
| void RTP_UDP::ApplyQOS | ( | const PIPSocket::Address & | addr | ) |
Apply QOS - requires address to connect the socket on Windows platforms
| virtual void RTP_UDP::Close | ( | BOOL | reading | ) | [virtual] |
Close down the RTP session.
| reading | Closing the read side of the session |
Implements RTP_Session.
| virtual void RTP_UDP::EnableGQoS | ( | ) | [virtual] |
Enable QOS on Call Basis
| PUDPSocket& RTP_UDP::GetControlSocket | ( | ) | [inline] |
Get control UDP socket of session.
References controlSocket.
| PUDPSocket& RTP_UDP::GetDataSocket | ( | ) | [inline] |
Get data UDP socket of session.
References dataSocket.
| PIPSocket::Address RTP_UDP::GetLocalAddress | ( | ) | const [inline] |
Get local address of session.
References localAddress.
| WORD RTP_UDP::GetLocalControlPort | ( | ) | const [inline] |
Get local control port of session.
References localControlPort.
| WORD RTP_UDP::GetLocalDataPort | ( | ) | const [inline] |
Get local data port of session.
References localDataPort.
| virtual PString RTP_UDP::GetLocalHostName | ( | ) | [virtual] |
Get the session description name.
Implements RTP_Session.
| PIPSocket::Address RTP_UDP::GetRemoteAddress | ( | ) | const [inline] |
Get remote address of session.
References remoteAddress.
| WORD RTP_UDP::GetRemoteControlPort | ( | ) | const [inline] |
Get remote control port of session.
References remoteControlPort.
| WORD RTP_UDP::GetRemoteDataPort | ( | ) | const [inline] |
Get remote data port of session.
References remoteDataPort.
| virtual BOOL RTP_UDP::ModifyQOS | ( | RTP_QOS * | rtpqos | ) | [virtual] |
Change the QoS settings
Reimplemented from RTP_Session.
| BOOL RTP_UDP::Open | ( | PIPSocket::Address | localAddress, |
| WORD | portBase, | ||
| WORD | portMax, | ||
| BYTE | ipTypeOfService, | ||
| void * | = NULL, |
||
| RTP_QOS * | rtpqos = NULL |
||
| ) |
Open the UDP ports for the RTP session.
| localAddress | Local interface to bind to |
| portBase | Base of ports to search |
| portMax | end of ports to search (inclusive) |
| ipTypeOfService | Type of Service byte |
| rtpqos | QOS spec (or NULL if no QoS) |
| SendReceiveStatus RTP_UDP::ReadControlPDU | ( | ) | [protected] |
| virtual BOOL RTP_UDP::ReadData | ( | RTP_DataFrame & | frame | ) | [virtual] |
Read a data frame from the RTP channel. Any control frames received are dispatched to callbacks and are not returned by this function. It will block until a data frame is available or an error occurs.
Implements RTP_Session.
| SendReceiveStatus RTP_UDP::ReadDataOrControlPDU | ( | PUDPSocket & | socket, |
| PBYTEArray & | frame, | ||
| BOOL | fromDataChannel | ||
| ) | [protected] |
| SendReceiveStatus RTP_UDP::ReadDataPDU | ( | RTP_DataFrame & | frame | ) | [protected] |
| void RTP_UDP::Reopen | ( | BOOL | isReading | ) |
Reopens an existing session in the given direction.
| void RTP_UDP::SetLocalAddress | ( | const PIPSocket::Address & | addr | ) | [inline] |
Set local address of session.
| BOOL RTP_UDP::SetRemoteSocketInfo | ( | PIPSocket::Address | address, |
| WORD | port, | ||
| BOOL | isDataPort | ||
| ) |
Set the remote address and port information for session.
| address | Address of remote |
| port | Port on remote |
| isDataPort | Flag for data or control channel |
| virtual BOOL RTP_UDP::WriteControl | ( | RTP_ControlFrame & | frame | ) | [virtual] |
Write a control frame from the RTP channel.
Implements RTP_Session.
| virtual BOOL RTP_UDP::WriteData | ( | RTP_DataFrame & | frame | ) | [virtual] |
Write a data frame from the RTP channel.
Implements RTP_Session.
BOOL RTP_UDP::appliedQOS [protected] |
PUDPSocket* RTP_UDP::controlSocket [protected] |
Referenced by GetControlSocket().
PUDPSocket* RTP_UDP::dataSocket [protected] |
Referenced by GetDataSocket().
BOOL RTP_UDP::enableGQOS [protected] |
PIPSocket::Address RTP_UDP::localAddress [protected] |
Referenced by GetLocalAddress().
WORD RTP_UDP::localControlPort [protected] |
Referenced by GetLocalControlPort().
WORD RTP_UDP::localDataPort [protected] |
Referenced by GetLocalDataPort().
PIPSocket::Address RTP_UDP::remoteAddress [protected] |
Referenced by GetRemoteAddress().
WORD RTP_UDP::remoteControlPort [protected] |
Referenced by GetRemoteControlPort().
WORD RTP_UDP::remoteDataPort [protected] |
Referenced by GetRemoteDataPort().
BOOL RTP_UDP::remoteIsNAT [protected] |
PIPSocket::Address RTP_UDP::remoteTransmitAddress [protected] |
BOOL RTP_UDP::shutdownRead [protected] |
BOOL RTP_UDP::shutdownWrite [protected] |
1.7.6.1