OpalMediaTypeDefinition Class Reference

#include <mediatype.h>

Inheritance diagram for OpalMediaTypeDefinition:
OpalFaxMediaType 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:
mediaType name of the media type (audio, video etc)
sdpType name of the SDP type
requiredSessionId Session ID to use, asserts if already in use
autoStart Default value for auto-start transmit & receive
virtual OpalMediaTypeDefinition::~OpalMediaTypeDefinition (  )  [inline, virtual]

Member Function Documentation

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

Create a media session suitable for the media type.

Parameters:
connection Connection media session is being created for
sessionID ID for the media session

Reimplemented in OpalMSRPMediaType, OpalSIPIMMediaType, OpalRTPAVPMediaType, and OpalFaxMediaType.

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 OpalIMMediaType, SimpleMediaType< Type, sdp >, and OpalFaxMediaType.

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 OpalIMMediaType, SimpleMediaType< Type, sdp >, OpalRTPAVPMediaType, and OpalFaxMediaType.

virtual std::string OpalMediaTypeDefinition::GetSDPType (  )  const [inline, virtual]

References m_sdpType.

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

References m_autoStart.

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().

virtual bool OpalMediaTypeDefinition::UsesRTP (  )  const [inline, virtual]

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

Reimplemented in OpalIMMediaType.


Field Documentation

Referenced by GetAutoStart(), and SetAutoStart().

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:

Generated on 14 Jul 2011 for OPAL by  doxygen 1.6.1