HUtilityXMLTag

Detailed Description

class HUtilityXMLTag

The HUtilityXMLProperty class encapsulates an XML tag.

Public Functions

HUtilityXMLTag(HUtilityXMLParser *xmlparser = 0)

Constructs an HUtilityXMLTag object

Parameters:xmlparser – Pointer to XML Parser for this tag
virtual ~HUtilityXMLTag()
bool AddPropertyFloat(char const *name, float f)

Add Float Property Item

Parameters:
  • name – Name of Property
  • f – Property Data
Returns:

false = property already exists, true = property does not exist

bool AddPropertyInt(char const *name, int i)

Add Integer Property Item

Parameters:
  • name – Name of Property
  • i – Property Data
Returns:

false = proeprty already exists, true = property does not exist

bool HasListItems()

Returns whether the tag has list items

bool GetNextPropertyItem(char **propname, HUtilityXMLProperty **prop)

Return next property item

Parameters:
  • propname – Itemname (returned)
  • prop – Property (returned)
Returns:

false = no property item available, true = success

void StartPropertyQuery()

Initiate query for property items

void AddListItem(char const *text)

Add list item to tag object

Parameters:text – item data to add
bool HasMoreItems()

Returns true if more list items are available

bool GetProperty(char const *name, HUtilityXMLProperty **prop)

Get Property by Name

Parameters:
  • name – Property name to search for
  • prop – Property (returned)
Returns:

true = Property found, false = property not found

bool GetProperty(char const *name, bool &ii)
bool GetProperty(char const *name, char *pcont)

Get Property by Name

Parameters:
  • name – Property name to search for
  • pcont – Property string(returned)
Returns:

true = Property found, false = property not found

bool GetProperty(char const *name, int &value)

Get Property by Name

Parameters:
  • name – Property name to search for
  • value – Property value (returned)
Returns:

true = Property found, false = property not found

bool AddProperty(char const *name, char const *text, bool hasQuotes = true)

Add new Property

Parameters:
  • name – Property name to add
  • text – Property data
  • hasQuotes – true = quotes are added to property, false = no quotes are added to property
Returns:

true = property does not exist, false = property already exists

void StartListItemsQuery()

Initiate query for list items

bool GetNextListItem(char **text)

Return next list item

Parameters:text – List item data (returned)
Returns:false = no list item available, true = success
void SetTagname(char const *tagname)

Set name of tag

Parameters:tagname – Name of tag
inline char *GetTagname()

Returns the name of tag

void FreeMemory()

Free internal memory

void Init()

Initialize the object

inline bool GetOpen()

Returns the open flag

inline void SetOpen(bool o)

Set flag indicating if tag needs to be kept open to process subtags

Parameters:o – true = tag reamins open, false = tag will be closed
void CleanupPropertyList()

Deletes all properties from tag object

inline HUtilityXMLParser *GetXMLParser()

Returns a pointer to the HUtilityXMLParser object associated to this tag object

HUtilityXMLTag *Clone()
void AddComment(char *comment)
inline struct vlist_s *GetCommentList()
void CleanListItems()