PTLib Version 2.12.9

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
PXMLElement Class Reference

`#include <pxml.h>`

Inheritance diagram for PXMLElement:
[legend]
Collaboration diagram for PXMLElement:
[legend]

## Public Member Functions
| PXMLElement (PXMLElement *parent, const char *name=NULL)
| PXMLElement (PXMLElement *parent, const PString &name, const PString &data)
PBoolean | IsElement () const
void | PrintOn (ostream &strm) const
| Output the contents of the object to the stream. More...
void | Output (ostream &strm, const PXMLBase &xml, int indent) const
PCaselessString | GetName () const
PCaselessString | GetPathName () const
| Get the completely qualified name for the element inside the XML tree, for example "root:trunk:branch:subbranch:leaf". More...
void | SetName (const PString &v)
PINDEX | GetSize () const
PXMLObject * | AddSubObject (PXMLObject *elem, bool dirty=true)
PXMLElement * | AddChild (PXMLElement *elem, bool dirty=true)
PXMLData * | AddChild (PXMLData *elem, bool dirty=true)
PXMLElement * | AddElement (const char *name)
PXMLElement * | AddElement (const PString &name, const PString &data)
PXMLElement * | AddElement (const PString &name, const PString &attrName, const PString &attrVal)
void | SetAttribute (const PCaselessString &key, const PString &value, bool setDirty=true)
PString | GetAttribute (const PCaselessString &key) const
bool | HasAttribute (const PCaselessString &key) const
bool | HasAttributes () const
const PStringToString & | GetAttributes () const
PXMLElement * | GetElement (const PCaselessString &name, const PCaselessString &attr, const PString &attrval) const
PXMLElement * | GetElement (const PCaselessString &name, PINDEX idx=0) const
PXMLObject * | GetElement (PINDEX idx=0) const
bool | RemoveElement (PINDEX idx)
PINDEX | FindObject (const PXMLObject *ptr) const
bool | HasSubObjects () const
PXMLObjectArray | GetSubObjects () const
PXMLObject * | GetSubObject (PINDEX idx=0) const
PString | GetData () const
void | SetData (const PString &data)
void | AddData (const PString &data)
PXMLObject * | Clone (PXMLElement *parent) const
void | GetFilePosition (unsigned &col, unsigned &line) const
void | SetFilePosition (unsigned col, unsigned line)
void | AddNamespace (const PString &prefix, const PString &uri)
void | RemoveNamespace (const PString &prefix)
bool | GetDefaultNamespace (PCaselessString &str) const
bool | GetNamespace (const PCaselessString &prefix, PCaselessString &str) const
PCaselessString | PrependNamespace (const PCaselessString &name) const
bool | GetURIForNamespace (const PCaselessString &prefix, PCaselessString &uri) const
Public Member Functions inherited from PXMLObject
| PXMLObject (PXMLElement *par)
PXMLElement * | GetParent () const
PXMLObject * | GetNextObject () const
void | SetParent (PXMLElement *newParent)
PString | AsString () const
void | SetDirty ()
bool | IsDirty () const
Public Member Functions inherited from PObject
unsigned | GetTraceContextIdentifier () const
| Get PTRACE context identifier. More...
void | SetTraceContextIdentifier (unsigned id)
void | GetTraceContextIdentifier (PObject &obj)
void | GetTraceContextIdentifier (PObject *obj)
void | SetTraceContextIdentifier (const PObject &obj)
void | SetTraceContextIdentifier (const PObject *obj)
virtual | ~PObject ()
virtual PObject * | Clone () const
| Create a copy of the class on the heap. More...
template<class CLS >
CLS * | CloneAs () const
| As for Clone() but converts to specified type. More...
virtual PINDEX | HashFunction () const
| This function yields a hash value required by the `PDictionary` class. More...
virtual const char * | GetClass (unsigned ancestor=0) const
| Get the current dynamic type of the object instance. More...
PBoolean | IsClass (const char *cls) const
virtual PBoolean | InternalIsDescendant (const char *clsName) const
| Determine if the dynamic type of the current instance is a descendent of the specified class. More...
__inline const PObject * | PTraceObjectInstance () const
virtual Comparison | Compare (const PObject &obj) const
| Compare the two objects and return their relative rank. More...
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const
| Determine the byte wise comparison of two objects. More...
bool | operator== (const PObject &obj) const
| Compare the two objects. More...
bool | operator!= (const PObject &obj) const
| Compare the two objects. More...
bool | operator< (const PObject &obj) const
| Compare the two objects. More...
bool | operator> (const PObject &obj) const
| Compare the two objects. More...
bool | operator<= (const PObject &obj) const
| Compare the two objects. More...
bool | operator>= (const PObject &obj) const
| Compare the two objects. More...
virtual void | ReadFrom (istream &strm)
| Input the contents of the object from the stream. More...

## Protected Attributes
PCaselessString | name
PStringToString | attributes
PXMLObjectArray | subObjects
bool | dirty
unsigned | column
unsigned | lineNumber
PStringToString | m_nameSpaces
PCaselessString | m_defaultNamespace
Protected Attributes inherited from PXMLObject
PXMLElement * | parent
bool | dirty
Protected Attributes inherited from PObject
unsigned | m_traceContextIdentifier

## Additional Inherited Members
Public Types inherited from PObject
enum | Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
| Result of the comparison operation performed by the `Compare()` function. More...
Static Public Member Functions inherited from PObject
static const char * | Class ()
| Get the name of the class as a C string. More...
static __inline const PObject * | PTraceObjectInstance (const char *)
static __inline const PObject * | PTraceObjectInstance (const PObject *obj)
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
| Internal function caled from CompareObjectMemoryDirect() More...
Protected Member Functions inherited from PObject
| PObject ()
| Constructor for PObject, made protected so cannot ever create one on its own. More...
Friends inherited from PObject

## Constructor & Destructor Documentation

PXMLElement::PXMLElement | ( | PXMLElement * | parent,
|  | const char * | name = `NULL`
| ) |  |

PXMLElement::PXMLElement | ( | PXMLElement * | parent,
|  | const PString & | name,
|  | const PString & | data
| ) |  |

## Member Function Documentation

PXMLElement* PXMLElement::AddChild | ( | PXMLElement * | elem,
|  | bool | dirty = `true`
| ) |  |

PXMLData* PXMLElement::AddChild | ( | PXMLData * | elem,
|  | bool | dirty = `true`
| ) |  |

void PXMLElement::AddData | ( | const PString & | data | ) |

PXMLElement* PXMLElement::AddElement | ( | const char * | name | ) |

PXMLElement* PXMLElement::AddElement | ( | const PString & | name,
|  | const PString & | data
| ) |  |

PXMLElement* PXMLElement::AddElement | ( | const PString & | name,
|  | const PString & | attrName,
|  | const PString & | attrVal
| ) |  |

void PXMLElement::AddNamespace | ( | const PString & | prefix,
|  | const PString & | uri
| ) |  |

PXMLObject* PXMLElement::AddSubObject | ( | PXMLObject * | elem,
|  | bool | dirty = `true`
| ) |  |

PXMLObject* PXMLElement::Clone | ( | PXMLElement * | parent | ) | const
| virtual

Implements PXMLObject.

PINDEX PXMLElement::FindObject | ( | const PXMLObject * | ptr | ) | const

PString PXMLElement::GetAttribute | ( | const PCaselessString & | key | ) | const

const PStringToString& PXMLElement::GetAttributes | ( |  | ) | const
| inline

References attributes.

PString PXMLElement::GetData | ( |  | ) | const

bool PXMLElement::GetDefaultNamespace | ( | PCaselessString & | str | ) | const

PXMLElement* PXMLElement::GetElement | ( | const PCaselessString & | name,
|  | const PCaselessString & | attr,
|  | const PString & | attrval
| ) |  | const

Referenced by GetSubObject().

PXMLElement* PXMLElement::GetElement | ( | const PCaselessString & | name,
|  | PINDEX | idx = `0`
| ) |  | const

PXMLObject* PXMLElement::GetElement | ( | PINDEX | idx = `0` | ) | const

void PXMLElement::GetFilePosition | ( | unsigned & | col,
|  | unsigned & | line
| ) |  | const
| inline

References column, and lineNumber.

PCaselessString PXMLElement::GetName | ( |  | ) | const
| inline

References name.

bool PXMLElement::GetNamespace | ( | const PCaselessString & | prefix,
|  | PCaselessString & | str
| ) |  | const

PCaselessString PXMLElement::GetPathName | ( |  | ) | const

Get the completely qualified name for the element inside the XML tree, for example "root:trunk:branch:subbranch:leaf".

PINDEX PXMLElement::GetSize | ( |  | ) | const
| inline

References subObjects.

PXMLObject* PXMLElement::GetSubObject | ( | PINDEX | idx = `0` | ) | const
| inline

References GetElement().

PXMLObjectArray PXMLElement::GetSubObjects | ( |  | ) | const
| inline

References subObjects.

bool PXMLElement::GetURIForNamespace | ( | const PCaselessString & | prefix,
|  | PCaselessString & | uri
| ) |  | const

bool PXMLElement::HasAttribute | ( | const PCaselessString & | key | ) | const

bool PXMLElement::HasAttributes | ( |  | ) | const
| inline

References attributes, and PContainer::GetSize().

bool PXMLElement::HasSubObjects | ( |  | ) | const
| inline

References subObjects.

PBoolean PXMLElement::IsElement | ( |  | ) | const
| inline virtual

Implements PXMLObject.

void PXMLElement::Output | ( | ostream & | strm,
|  | const PXMLBase & | xml,
|  | int | indent
| ) |  | const
| virtual

Implements PXMLObject.

PCaselessString PXMLElement::PrependNamespace | ( | const PCaselessString & | name | ) | const

void PXMLElement::PrintOn | ( | ostream & | strm | ) | const
| virtual

Output the contents of the object to the stream.

The exact output is dependent on the exact semantics of the descendent class. This is primarily used by the standard `operator<<` function.

The default behaviour is to print the class name.

Reimplemented from PObject.

bool PXMLElement::RemoveElement | ( | PINDEX | idx | ) |

void PXMLElement::RemoveNamespace | ( | const PString & | prefix | ) |

void PXMLElement::SetAttribute | ( | const PCaselessString & | key,
|  | const PString & | value,
|  | bool | setDirty = `true`
| ) |  |

void PXMLElement::SetData | ( | const PString & | data | ) |

void PXMLElement::SetFilePosition | ( | unsigned | col,
|  | unsigned | line
| ) |  |
| inline

References column, and lineNumber.

void PXMLElement::SetName | ( | const PString & | v | ) |
| inline

## Member Data Documentation

PStringToString PXMLElement::attributes
| protected

Referenced by GetAttributes(), and HasAttributes().

unsigned PXMLElement::column
| protected

Referenced by GetFilePosition(), and SetFilePosition().

bool PXMLElement::dirty
| protected

unsigned PXMLElement::lineNumber
| protected

Referenced by GetFilePosition(), and SetFilePosition().

PCaselessString PXMLElement::m_defaultNamespace
| protected

PStringToString PXMLElement::m_nameSpaces
| protected

PCaselessString PXMLElement::name
| protected

Referenced by GetName().

PXMLObjectArray PXMLElement::subObjects
| protected

Referenced by GetSize(), GetSubObjects(), and HasSubObjects().

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

- pxml.h