OPAL  Version 3.10.4
OpalMediaTypeDefinition Class Reference

#include <mediatype.h>

Inheritance diagram for OpalMediaTypeDefinition:
OpalIMMediaType OpalRTPAVPMediaType SimpleMediaType< Type, sdp > OpalMSRPMediaType OpalSIPIMMediaType OpalAudioMediaType OpalH224MediaType OpalT140MediaType OpalVideoMediaType

Public Member Functions

 OpalMediaTypeDefinition (const char *mediaType, const char *sdpType, unsigned requiredSessionId=0, OpalMediaType::AutoStartMode autoStart=OpalMediaType::DontOffer)
 Create a new media type definition.
virtual ~OpalMediaTypeDefinition ()
OpalMediaType::AutoStartMode GetAutoStart () const
void SetAutoStart (OpalMediaType::AutoStartMode v)
void SetAutoStart (OpalMediaType::AutoStartMode v, bool on)
virtual bool UsesRTP () const
virtual OpalMediaSessionCreateMediaSession (OpalConnection &connection, unsigned sessionID) const
virtual PString GetRTPEncoding () const =0
virtual RTP_UDPCreateRTPSession (OpalRTPConnection &conn, unsigned sessionID, bool remoteIsNAT)
unsigned GetDefaultSessionId () const
virtual std::string GetSDPType () const
virtual SDPMediaDescriptionCreateSDPMediaDescription (const OpalTransportAddress &localAddress)=0

Protected Attributes

std::string m_mediaType
unsigned m_defaultSessionId
OpalMediaType::AutoStartMode m_autoStart
std::string m_sdpType

Detailed Description

This class defines the type used to define the attributes of a media type


Constructor & Destructor Documentation

OpalMediaTypeDefinition::OpalMediaTypeDefinition ( const char *  mediaType,
const char *  sdpType,
unsigned  requiredSessionId = 0,
OpalMediaType::AutoStartMode  autoStart = OpalMediaType::DontOffer 
)

Create a new media type definition.

Parameters:
mediaTypename of the media type (audio, video etc)
sdpTypename of the SDP type
requiredSessionIdSession ID to use, asserts if already in use
autoStartDefault value for auto-start transmit & receive
virtual OpalMediaTypeDefinition::~OpalMediaTypeDefinition ( )
virtual

Member Function Documentation

virtual OpalMediaSession* OpalMediaTypeDefinition::CreateMediaSession ( OpalConnection connection,
unsigned  sessionID 
) const
virtual

Create a media session suitable for the media type.

Parameters:
connectionConnection media session is being created for
sessionIDID for the media session

Reimplemented in OpalRTPAVPMediaType, OpalMSRPMediaType, and OpalSIPIMMediaType.

virtual RTP_UDP* OpalMediaTypeDefinition::CreateRTPSession ( OpalRTPConnection conn,
unsigned  sessionID,
bool  remoteIsNAT 
)
virtual

Create an RTP session for this media format. By default, this will create a RTP_UDP session with the correct initial format

Only valid if UsesRTP return true

Reimplemented in SimpleMediaType< Type, sdp >, and OpalIMMediaType.

virtual SDPMediaDescription* OpalMediaTypeDefinition::CreateSDPMediaDescription ( const OpalTransportAddress localAddress)
pure virtual
OpalMediaType::AutoStartMode OpalMediaTypeDefinition::GetAutoStart ( ) const
inline

Get flags for media type can auto-start on call initiation.

References m_autoStart.

Referenced by OpalMediaType::GetAutoStart().

unsigned OpalMediaTypeDefinition::GetDefaultSessionId ( ) const
inline

Return the default session ID for this media type.

References m_defaultSessionId.

virtual PString OpalMediaTypeDefinition::GetRTPEncoding ( ) const
pure virtual

Get the string used for the RTP_FormatHandler PFactory which is used to create the RTP handler for the this media type possible values include "rtp/avp" and "udptl"

Only valid if UsesRTP return true

Implemented in OpalRTPAVPMediaType, SimpleMediaType< Type, sdp >, and OpalIMMediaType.

virtual std::string OpalMediaTypeDefinition::GetSDPType ( ) const
inlinevirtual

References m_sdpType.

void OpalMediaTypeDefinition::SetAutoStart ( OpalMediaType::AutoStartMode  v)
inline

Set flag for media type can auto-start receive on call initiation.

References m_autoStart.

Referenced by OpalManager::SetAutoStartReceiveVideo(), and OpalManager::SetAutoStartTransmitVideo().

void OpalMediaTypeDefinition::SetAutoStart ( OpalMediaType::AutoStartMode  v,
bool  on 
)
inline

References m_autoStart.

virtual bool OpalMediaTypeDefinition::UsesRTP ( ) const
inlinevirtual

Indicate type uses RTP for transport. If false, then it uses a generic OpaMediaSession

Reimplemented in OpalIMMediaType.


Field Documentation

OpalMediaType::AutoStartMode OpalMediaTypeDefinition::m_autoStart
protected

Referenced by GetAutoStart(), and SetAutoStart().

unsigned OpalMediaTypeDefinition::m_defaultSessionId
protected

Referenced by GetDefaultSessionId().

std::string OpalMediaTypeDefinition::m_mediaType
protected
std::string OpalMediaTypeDefinition::m_sdpType
protected

Referenced by GetSDPType().


The documentation for this class was generated from the following file: