32 #ifndef OPAL_SIP_SDP_H 33 #define OPAL_SIP_SDP_H 53 unsigned &
operator[](
const PCaselessString & type);
54 unsigned operator[](
const PCaselessString & type)
const;
56 bool Parse(
const PString & param);
57 void SetMax(
const PCaselessString & type,
unsigned value);
71 const char * name = NULL
79 virtual void PrintOn(ostream & str)
const;
86 void SetFMTP(
const PString & _fmtp);
87 PString GetFMTP()
const;
138 virtual bool PreEncode();
140 virtual bool PrintOn(ostream & strm,
const PString & str)
const;
142 virtual bool Decode(
const PStringArray & tokens);
143 virtual bool Decode(
char key,
const PString & value);
149 virtual PString GetSDPMediaType()
const = 0;
152 virtual PCaselessString GetSDPTransportType()
const = 0;
164 virtual void SetAttribute(
const PString & attr,
const PString & value);
176 virtual unsigned GetBandwidth(
const PString & type)
const {
return bandwidth[type]; }
177 virtual void SetBandwidth(
const PString & type,
unsigned value) { bandwidth[type] = value; }
181 virtual void CreateSDPMediaFormats(
const PStringArray & tokens);
182 virtual SDPMediaFormat * CreateSDPMediaFormat(
const PString & portString) = 0;
184 virtual PString GetSDPPortList()
const = 0;
215 virtual PString GetSDPMediaType()
const;
216 virtual PCaselessString GetSDPTransportType()
const;
217 virtual SDPMediaFormat * CreateSDPMediaFormat(
const PString & portString);
218 virtual PString GetSDPPortList()
const;
221 PStringArray m_tokens;
235 virtual PCaselessString GetSDPTransportType()
const;
236 virtual SDPMediaFormat * CreateSDPMediaFormat(
const PString & portString);
237 virtual PString GetSDPPortList()
const;
238 virtual bool PrintOn(ostream & str,
const PString & connectString)
const;
239 virtual void SetAttribute(
const PString & attr,
const PString & value);
253 virtual PString GetSDPMediaType()
const;
254 virtual bool PrintOn(ostream & str,
const PString & connectString)
const;
255 virtual void SetAttribute(
const PString & attr,
const PString & value);
275 virtual PString GetSDPMediaType()
const;
276 virtual bool PreEncode();
277 virtual bool PrintOn(ostream & str,
const PString & connectString)
const;
278 void SetAttribute(
const PString & attr,
const PString & value);
291 virtual PCaselessString GetSDPTransportType()
const;
292 virtual SDPMediaFormat * CreateSDPMediaFormat(
const PString & portString);
294 virtual PString GetSDPMediaType()
const;
295 virtual PString GetSDPPortList()
const;
310 void PrintOn(ostream & strm)
const;
311 PString Encode()
const;
314 void SetSessionName(
const PString & v);
317 void SetUserName(
const PString & v);
331 void SetDefaultConnectAddress(
344 unsigned GetBandwidth(
const PString & type)
const {
return bandwidth[type]; }
345 void SetBandwidth(
const PString & type,
unsigned value) { bandwidth[type] = value; }
349 static const PCaselessString & ConferenceTotalBandwidthType();
350 static const PCaselessString & ApplicationSpecificBandwidthType();
351 static const PCaselessString & TransportIndependentBandwidthType();
354 void ParseOwner(
const PString & str);
376 #endif // OPAL_SIP_SDP_H void SetMax(const PCaselessString &type, unsigned value)
OpalTransportAddress defaultConnectAddress
Definition: sdp.h:366
PList< SDPMediaFormat > SDPMediaFormatList
Definition: sdp.h:115
time_t ownerSessionId
Definition: sdp.h:363
PString GetSessionName() const
Definition: sdp.h:315
OpalTransportAddress ownerAddress
Definition: sdp.h:365
void SetOwnerSessionId(time_t value)
Definition: sdp.h:336
void SetOwnerVersion(PINDEX value)
Definition: sdp.h:339
unsigned GetBandwidth(const PString &type) const
Definition: sdp.h:344
void AddMediaDescription(SDPMediaDescription *md)
Definition: sdp.h:324
bool Parse(const PString ¶m)
PINDEX GetOwnerVersion() const
Definition: sdp.h:338
PString ownerUsername
Definition: sdp.h:362
OpalTransportAddress GetOwnerAddress() const
Definition: sdp.h:341
PARRAY(SDPMediaDescriptionArray, SDPMediaDescription)
SDPMediaDescription::Direction direction
Definition: sdp.h:357
PayloadTypes
Definition: rtp.h:86
void SetOwnerAddress(OpalTransportAddress addr)
Definition: sdp.h:342
PString sessionName
Definition: sdp.h:360
void SetBandwidth(const PString &type, unsigned value)
Definition: sdp.h:345
SDPMediaDescriptionArray mediaDescriptions
Definition: sdp.h:356
friend ostream & operator<<(ostream &out, const SDPBandwidth &bw)
SDPBandwidth bandwidth
Definition: sdp.h:368
const OpalTransportAddress & GetDefaultConnectAddress() const
Definition: sdp.h:330
Definition: transports.h:149
PINDEX protocolVersion
Definition: sdp.h:359
void SetDirection(const SDPMediaDescription::Direction &d)
Definition: sdp.h:326
const SDPMediaDescriptionArray & GetMediaDescriptions() const
Definition: sdp.h:320
unsigned & operator[](const PCaselessString &type)
PString GetUserName() const
Definition: sdp.h:318
unsigned ownerVersion
Definition: sdp.h:364
time_t GetOwnerSessionId() const
Definition: sdp.h:335