![]() |
Eclipse SUMO - Simulation of Urban MObility
|
SAX-reader encapsulation containing binary reader. More...
#include <SUMOSAXReader.h>
Data Structures | |
| class | LocalSchemaResolver |
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... | |
| void | setValidation (const XERCES_CPP_NAMESPACE::SAX2XMLReader::ValSchemes validationScheme) |
| SUMOSAXReader (GenericSAXHandler &handler, const XERCES_CPP_NAMESPACE::SAX2XMLReader::ValSchemes validationScheme, XERCES_CPP_NAMESPACE::XMLGrammarPool *grammarPool) | |
| 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 | |
| XERCES_CPP_NAMESPACE::XMLGrammarPool * | myGrammarPool |
| Schema cache to be used for grammars which are not declared. More... | |
| GenericSAXHandler * | myHandler |
| std::unique_ptr< IStreamInputSource > | myInputStream |
| std::unique_ptr< std::istream > | myIStream |
| LocalSchemaResolver | mySchemaResolver |
| XERCES_CPP_NAMESPACE::XMLPScanToken | myToken |
| XERCES_CPP_NAMESPACE::SAX2XMLReader::ValSchemes | myValidationScheme |
| Information whether built reader/parser shall validate XML-documents against schemata. More... | |
| XERCES_CPP_NAMESPACE::SAX2XMLReader * | myXMLReader |
| std::vector< SumoXMLTag > | myXMLStack |
| The stack of begun xml elements. More... | |
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 52 of file SUMOSAXReader.h.
| SUMOSAXReader::SUMOSAXReader | ( | GenericSAXHandler & | handler, |
| const XERCES_CPP_NAMESPACE::SAX2XMLReader::ValSchemes | validationScheme, | ||
| XERCES_CPP_NAMESPACE::XMLGrammarPool * | grammarPool | ||
| ) |
Constructor.
| [in] | file | The name of the processed file |
| SUMOSAXReader::~SUMOSAXReader | ( | ) |
|
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 149 of file SUMOSAXReader.cpp.
References myGrammarPool, myHandler, mySchemaResolver, and myValidationScheme.
Referenced by parse(), parseFirst(), and parseString().
|
private |
invalidated assignment operator
| void SUMOSAXReader::parse | ( | std::string | systemID | ) |
Definition at line 91 of file SUMOSAXReader.cpp.
References getSAXReader(), FileHelpers::isDirectory(), FileHelpers::isReadable(), and myXMLReader.
| bool SUMOSAXReader::parseFirst | ( | std::string | systemID | ) |
Definition at line 121 of file SUMOSAXReader.cpp.
References getSAXReader(), FileHelpers::isReadable(), myInputStream, myIStream, myToken, and myXMLReader.
Referenced by PCNetProjectionLoader::load(), and SUMORouteLoader::SUMORouteLoader().
| bool SUMOSAXReader::parseNext | ( | ) |
Definition at line 140 of file SUMOSAXReader.cpp.
References myToken, and myXMLReader.
Referenced by PCNetProjectionLoader::load(), and SUMORouteLoader::loadUntil().
| void SUMOSAXReader::parseString | ( | std::string | content | ) |
Definition at line 111 of file SUMOSAXReader.cpp.
References getSAXReader(), and myXMLReader.
Referenced by GUISettingsHandler::GUISettingsHandler(), NITypeLoader::load(), and main().
| 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 61 of file SUMOSAXReader.cpp.
References myHandler, mySchemaResolver, myXMLReader, and SUMOSAXReader::LocalSchemaResolver::setHandler().
| void SUMOSAXReader::setValidation | ( | const XERCES_CPP_NAMESPACE::SAX2XMLReader::ValSchemes | validationScheme | ) |
Definition at line 72 of file SUMOSAXReader.cpp.
References mySchemaResolver, myValidationScheme, and myXMLReader.
|
private |
Schema cache to be used for grammars which are not declared.
Definition at line 111 of file SUMOSAXReader.h.
Referenced by getSAXReader().
|
private |
Definition at line 105 of file SUMOSAXReader.h.
Referenced by getSAXReader(), setHandler(), and SUMOSAXReader::LocalSchemaResolver::setHandler().
|
private |
Definition at line 119 of file SUMOSAXReader.h.
Referenced by parseFirst().
|
private |
Definition at line 117 of file SUMOSAXReader.h.
Referenced by parseFirst().
|
private |
Definition at line 124 of file SUMOSAXReader.h.
Referenced by getSAXReader(), setHandler(), and setValidation().
|
private |
Definition at line 113 of file SUMOSAXReader.h.
Referenced by parseFirst(), and parseNext().
|
private |
Information whether built reader/parser shall validate XML-documents against schemata.
Definition at line 108 of file SUMOSAXReader.h.
Referenced by getSAXReader(), and setValidation().
|
private |
Definition at line 115 of file SUMOSAXReader.h.
Referenced by parse(), parseFirst(), parseNext(), parseString(), setHandler(), setValidation(), and ~SUMOSAXReader().
|
private |
The stack of begun xml elements.
Definition at line 122 of file SUMOSAXReader.h.