class IAXIEList

Information Element container. More...

Full nameTelEngine::IAXIEList
Definition#include <libs/yiax/yateiax.h>
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods


Detailed Description

Management class for a list of Information Elements

inline  IAXIEList ()

IAXIEList

Constructor

inline  IAXIEList (const IAXFullFrame* frame, bool incoming = true)

IAXIEList

Constructor. Construct the list from an IAXFullFrame object

Parameters:
frameSource object
incomingTrue if it is an incoming frame

inline  ~IAXIEList ()

~IAXIEList

Destructor

inline bool  invalidIEList ()

invalidIEList

[const]

Get the invalid IE list flag

Returns: False if the last frame parse was unsuccessful

inline void  clear ()

clear

Clear the list

void  insertVersion ()

insertVersion

Insert a VERSION Information Element in the list if not already done

inline bool  validVersion ()

validVersion

Get the validity of the VERSION Information Element of the list if any

Returns: False if version is not IAX_PROTOCOL_VERSION or the list doesn't contain a VERSION Information Element

inline void  appendIE (IAXInfoElement* ie)

appendIE

Append an Information Element to the list

Parameters:
ieIAXInfoElement pointer to append

inline void  appendNull (IAXInfoElement::Type type)

appendNull

Append an Information Element to the list

Parameters:
typeThe type of the IAXInfoElement to append

inline void  appendString (IAXInfoElement::Type type, const String& src)

appendString

Append a text Information Element to the list from a String

Parameters:
typeThe type of the IAXInfoElementString to append
srcThe source

inline void  appendString (IAXInfoElement::Type type, unsigned char* src, unsigned len)

appendString

Append a text Information Element to the list from a buffer

Parameters:
typeThe type of the IAXInfoElementString to append
srcThe source
lenSource length

inline void  appendNumeric (IAXInfoElement::Type type, u_int32_t value, u_int8_t len)

appendNumeric

Append a numeric Information Element to the list

Parameters:
typeThe type of the IAXInfoElementNumeric to append
valueThe source
lenSource length

inline void  appendBinary (IAXInfoElement::Type type, unsigned char* data, unsigned len)

appendBinary

Append a binary Information Element to the list

Parameters:
typeThe type of the IAXInfoElementBinary to append
dataThe source data to append
lenSource length

bool  createFromFrame (const IAXFullFrame* frame, bool incoming = true)

createFromFrame

Construct the list from an IAXFullFrame object. On exit m_invalidIEList will contain the opposite of the returned value

Parameters:
frameSource object
incomingTrue if it is an incoming frame

Returns: False if the frame contains invalid IEs

void  toBuffer (DataBlock& buf)

toBuffer

Construct a buffer from this list

Parameters:
bufDestination buffer

void  toString (String& dest, const char* indent = 0)

toString

Add this list to a string

Parameters:
destDestination string
indentOptional indent for each element

IAXInfoElement*  getIE (IAXInfoElement::Type type)

getIE

Get an IAXInfoElement from the list

Parameters:
typeThe desired type

Returns: An IAXInfoElement pointer or 0 if the list doesn't contain an IE of this type

bool  getString (IAXInfoElement::Type type, String& dest)

getString

Get the data of a list item into a String. Before any operation dest is cleared

Parameters:
typeThe desired type
destThe destination String

Returns: False if the list doesn't contain an IE of this type

bool  getNumeric (IAXInfoElement::Type type, u_int32_t& dest)

getNumeric

Get the data of a list item into a numeric destination

Parameters:
typeThe desired type
destThe destination

Returns: False if the list doesn't contain an IE of this type

bool  getBinary (IAXInfoElement::Type type, DataBlock& dest)

getBinary

Get the data of a list item into a DataBlock. Before any operation dest is cleared

Parameters:
typeThe desired type
destThe destination buffer

Returns: False if the list doesn't contain an IE of this type


Generated by: paulc on bussard on Tue Apr 12 17:15:21 2011, using kdoc 2.0a54.