Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

regina::NXMLGroupPresentationReader Class Reference
[Algebraic Structures]

An XML element reader that reads a single group presentation. More...

#include <nxmlalgebrareader.h>

Inheritance diagram for regina::NXMLGroupPresentationReader:

regina::NXMLElementReader List of all members.

Public Member Functions

 NXMLGroupPresentationReader ()
 Creates a new group presentation reader.
virtual NGroupPresentationgetGroup ()
 Returns the newly allocated group presentation that has been read by this element reader.
virtual void startElement (const std::string &tagName, const regina::xml::XMLPropertyDict &tagProps, NXMLElementReader *parentReader)
 Signifies that parsing of this XML element is beginning.
virtual NXMLElementReaderstartSubElement (const std::string &subTagName, const regina::xml::XMLPropertyDict &subTagProps)
 Signifies that a subelement of this XML element is about to be parsed.
virtual void endSubElement (const std::string &subTagName, NXMLElementReader *subReader)
 Signifies that parsing has finished for a subelement of this XML element.

Detailed Description

An XML element reader that reads a single group presentation.

A group presentation is generally contained within a <group> ... </group> pair.

Python:
Not present.


Constructor & Destructor Documentation

regina::NXMLGroupPresentationReader::NXMLGroupPresentationReader  )  [inline]
 

Creates a new group presentation reader.


Member Function Documentation

virtual void regina::NXMLGroupPresentationReader::endSubElement const std::string &  subTagName,
NXMLElementReader subReader
[virtual]
 

Signifies that parsing has finished for a subelement of this XML element.

The default implementation does nothing.

Parameters:
subTagName the name of the subelement closing tag.
subReader the child reader that was used to parse the subelement (this is the reader that was returned by the corresponding startSubElement() call). It is guaranteed that endElement() has already been called upon this child reader and that the child reader has not yet been destroyed.

Reimplemented from regina::NXMLElementReader.

NGroupPresentation * regina::NXMLGroupPresentationReader::getGroup  )  [inline, virtual]
 

Returns the newly allocated group presentation that has been read by this element reader.

Returns:
the group that has been read, or 0 if an error occurred.

virtual void regina::NXMLGroupPresentationReader::startElement const std::string &  tagName,
const regina::xml::XMLPropertyDict tagProps,
NXMLElementReader parentReader
[virtual]
 

Signifies that parsing of this XML element is beginning.

The default implementation does nothing.

Parameters:
tagName the name of the opening tag for this element.
tagProps the properties associated with the opening tag.
parentReader the reader currently parsing the parent XML element, or 0 if this is the top-level element. If this paraneter is non-zero, it is guaranteed that startSubElement() has already been called upon the parent reader.

Reimplemented from regina::NXMLElementReader.

virtual NXMLElementReader* regina::NXMLGroupPresentationReader::startSubElement const std::string &  subTagName,
const regina::xml::XMLPropertyDict subTagProps
[virtual]
 

Signifies that a subelement of this XML element is about to be parsed.

The default implementation returns a new NXMLElementReader which can be used to ignore the subelement completely.

Parameters:
subTagName the name of the subelement opening tag.
subTagProps the properties associated with the subelement opening tag.
Returns:
a newly created element reader that will be used to parse the subelement. This class should not take care of the new reader's destruction; that will be done by the parser.

Reimplemented from regina::NXMLElementReader.


The documentation for this class was generated from the following file:
Copyright © 1999-2004, Ben Burton
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).