SUMO - Simulation of Urban MObility
|
SAX-reader encapsulation containing binary reader. More...
#include <SUMOSAXReader.h>
Public Member Functions | |
void | parse (std::string systemID) |
bool | parseFirst (std::string systemID) |
bool | parseNext () |
void | parseString (std::string content) |
void | setHandler (GenericSAXHandler &handler) |
Sets the given handler as content and error handler for the reader. More... | |
SUMOSAXReader (GenericSAXHandler &handler, const bool enableValidation=false) | |
Constructor. More... | |
~SUMOSAXReader () | |
Destructor. More... | |
Private Member Functions | |
XERCES_CPP_NAMESPACE::SAX2XMLReader * | getSAXReader () |
Builds a reader. More... | |
const SUMOSAXReader & | operator= (const SUMOSAXReader &s) |
invalidated assignment operator More... | |
SUMOSAXReader (const SUMOSAXReader &s) | |
invalidated copy constructor More... | |
Private Attributes | |
BinaryInputDevice * | myBinaryInput |
const bool | myEnableValidation |
Information whether built reader/parser shall validate XML-documents against schemata. More... | |
GenericSAXHandler * | myHandler |
XERCES_CPP_NAMESPACE::XMLPScanToken | myToken |
XERCES_CPP_NAMESPACE::SAX2XMLReader * | myXMLReader |
SAX-reader encapsulation containing binary reader.
This class generates on demand either a SAX2XMLReader or parses the SUMO binary xml. The interface is inspired by but not identical to SAX2XMLReader.
Definition at line 54 of file SUMOSAXReader.h.
SUMOSAXReader::SUMOSAXReader | ( | GenericSAXHandler & | handler, |
const bool | enableValidation = false |
||
) |
Constructor.
[in] | file | The name of the processed file |
Definition at line 50 of file SUMOSAXReader.cpp.
SUMOSAXReader::~SUMOSAXReader | ( | ) |
Destructor.
Definition at line 55 of file SUMOSAXReader.cpp.
References myBinaryInput, and myXMLReader.
|
private |
invalidated copy constructor
|
private |
Builds a reader.
Tries to build a SAX2XMLReader using XMLReaderFactory::createXMLReader. If this fails, 0 is returned. Otherwise the validation is set matching the value of "myEnableValidation". If validation is not wanted, a WFXMLScanner is used (see http://www.ibm.com/developerworks/library/x-xercesperf.html).
Definition at line 172 of file SUMOSAXReader.cpp.
References myEnableValidation, and myHandler.
Referenced by parse(), parseFirst(), and parseString().
|
private |
invalidated assignment operator
void SUMOSAXReader::parse | ( | std::string | systemID) |
Definition at line 72 of file SUMOSAXReader.cpp.
References getSAXReader(), myXMLReader, parseFirst(), and parseNext().
bool SUMOSAXReader::parseFirst | ( | std::string | systemID) |
Definition at line 97 of file SUMOSAXReader.cpp.
References getSAXReader(), myBinaryInput, myEnableValidation, myToken, myXMLReader, and parseNext().
Referenced by PCNetProjectionLoader::load(), parse(), and SUMORouteLoader::SUMORouteLoader().
bool SUMOSAXReader::parseNext | ( | ) |
Definition at line 137 of file SUMOSAXReader.cpp.
References BinaryFormatter::BF_XML_TAG_END, BinaryFormatter::BF_XML_TAG_START, myBinaryInput, GenericSAXHandler::myEndElement(), myHandler, GenericSAXHandler::myPredefinedTagsMML, GenericSAXHandler::myStartElement(), myToken, myXMLReader, BinaryInputDevice::peek(), and toString().
Referenced by PCNetProjectionLoader::load(), SUMORouteLoader::loadUntil(), parse(), and parseFirst().
void SUMOSAXReader::parseString | ( | std::string | content) |
Definition at line 87 of file SUMOSAXReader.cpp.
References getSAXReader(), and myXMLReader.
Referenced by GUISettingsHandler::GUISettingsHandler().
void SUMOSAXReader::setHandler | ( | GenericSAXHandler & | handler) |
Sets the given handler as content and error handler for the reader.
[in] | handler | The handler to assign to the reader |
Definition at line 62 of file SUMOSAXReader.cpp.
References myHandler, and myXMLReader.
|
private |
Definition at line 105 of file SUMOSAXReader.h.
Referenced by parseFirst(), parseNext(), and ~SUMOSAXReader().
|
private |
Information whether built reader/parser shall validate XML-documents against schemata.
Definition at line 99 of file SUMOSAXReader.h.
Referenced by getSAXReader(), and parseFirst().
|
private |
Definition at line 96 of file SUMOSAXReader.h.
Referenced by getSAXReader(), parseNext(), and setHandler().
|
private |
Definition at line 101 of file SUMOSAXReader.h.
Referenced by parseFirst(), and parseNext().
|
private |
Definition at line 103 of file SUMOSAXReader.h.
Referenced by parse(), parseFirst(), parseNext(), parseString(), setHandler(), and ~SUMOSAXReader().