# XmlParser Class Reference

The CERTI XML federation Object Model parser. More...

`#include <XmlParser.hh>`

List of all members.

## Public Member Functions
| XmlParser (RootObject *root)
| Build a parser.
RootObject * | parse (std::string pathToXmlFile)
| Main method to parse .xml FOM file.
## Static Public Member Functions
static bool | exists (void)
| Return true if the XML parser is available.
## Private Member Functions
void | parseClass (ObjectClass *parent)
| Parse the current class node.
void | parseInteraction (Interaction *parent)
| Parse the current interaction node.
void | parseRoutingSpace (void)
| Parse a routing space from current node.
## Private Attributes
int | freeObjectClassHandle
int | freeInteractionClassHandle
int | freeAttributeHandle
int | freeParameterHandle
int | freeSpaceHandle
std::string | filename
RootObject * | root

## Detailed Description

The CERTI XML federation Object Model parser.

Definition at line 48 of file XmlParser.hh.

## Constructor & Destructor Documentation

XmlParser | ( | RootObject * | root | ) |

Build a parser.

Parameters:

  | root | the root object of the FOM.

Definition at line 344 of file XmlParser.cc.

## Member Function Documentation

RootObject * parse | ( | std::string | pathToXmlFile | ) |

Main method to parse .xml FOM file.

Parameters:

  `[in]` | pathToXmlFile | the path to the XML file.

Returns:
  the RootObject resulting from the parse.

Definition at line 348 of file XmlParser.cc.

Referenced by RTIA::chooseFederateProcessing(), and Federation::Federation().

bool exists | ( | void |  | ) | `[static]`

Return true if the XML parser is available.

XML Parser may not be available if CERTI was compiled without XML support. In this case you should use the .fed file parser.

Returns:
  true if the XML parser is available

Definition at line 353 of file XmlParser.cc.

Referenced by RTIA::chooseFederateProcessing(), and Federation::Federation().

void parseClass | ( | ObjectClass * | parent | ) | `[private]`

Parse the current class node.

Parameters:

  `[in,out]` | parent | the parent object class

void parseInteraction | ( | Interaction * | parent | ) | `[private]`

Parse the current interaction node.

Parameters:

  `[in,out]` | parent | the parent interaction node

void parseRoutingSpace | ( | void |  | ) | `[private]`

Parse a routing space from current node.

## Member Data Documentation

int freeObjectClassHandle`[private]`

Definition at line 122 of file XmlParser.hh.

int freeInteractionClassHandle`[private]`

Definition at line 123 of file XmlParser.hh.

int freeAttributeHandle`[private]`

Definition at line 124 of file XmlParser.hh.

int freeParameterHandle`[private]`

Definition at line 125 of file XmlParser.hh.

int freeSpaceHandle`[private]`

Definition at line 126 of file XmlParser.hh.

std::string filename`[private]`

Definition at line 128 of file XmlParser.hh.

RootObject* root`[private]`

Definition at line 129 of file XmlParser.hh.

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

- XmlParser.hh
- XmlParser.cc