28#include <xercesc/sax2/Attributes.hpp>
29#include <xercesc/sax2/DefaultHandler.hpp>
88 GenericHandler(
const std::string& file,
const std::string& expectedRoot =
"");
105 void startElement(
const XMLCh*
const uri,
const XMLCh*
const localname,
106 const XMLCh*
const qname,
const XERCES_CPP_NAMESPACE::Attributes& attrs);
117 void characters(
const XMLCh*
const chars,
const XERCES3_SIZE_t length);
131 void endElement(
const XMLCh*
const uri,
const XMLCh*
const localname,
132 const XMLCh*
const qname);
164 void warning(
const XERCES_CPP_NAMESPACE::SAXParseException& exception);
174 void error(
const XERCES_CPP_NAMESPACE::SAXParseException& exception);
184 void fatalError(
const XERCES_CPP_NAMESPACE::SAXParseException& exception);
220 std::string
buildErrorMessage(
const XERCES_CPP_NAMESPACE::SAXParseException& exception);
242 const std::string& chars);
263 XMLCh*
convert(
const std::string& name)
const;
280 typedef std::map<std::string, int>
TagMap;
A handler which converts occurring elements and attributes into enums.
void endElement(const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname)
The inherited method called when a tag is being closed.
std::pair< int, SUMOSAXAttributes * > retrieveNextSectionStart()
bool myCollectCharacterData
whether the reader should collect character data
bool mySectionEnded
whether the reader has already seen the end of the section
void fatalError(const XERCES_CPP_NAMESPACE::SAXParseException &exception)
Handler for XML-errors.
bool mySectionOpen
whether an element of the current section is open
void registerParent(const int tag, GenericHandler *handler)
Assigning a parent handler which is enabled when the specified tag is closed.
virtual ~GenericHandler()
Destructor.
bool myRootSeen
whether the reader has already seen the root element
std::map< std::string, int > TagMap
virtual void myCharacters(int element, const std::string &chars)
Callback method for characters to implement by derived classes.
void callParentEnd(int element)
signal endElement to the parent handler (special case for MSCalibrator)
std::string myFileName
The name of the currently parsed file.
int mySection
The tag indicating the current section to parse.
const std::string & getFileName() const
returns the current file name
std::vector< std::string > myCharactersVector
A list of character strings obtained so far to build the complete characters string at the end.
int myParentIndicator
The tag indicating that control should be given back.
virtual void myEndElement(int element)
Callback method for a closing tag to implement by derived classes.
std::string buildErrorMessage(const XERCES_CPP_NAMESPACE::SAXParseException &exception)
Builds an error message.
virtual void myStartElement(int element, const SUMOSAXAttributes &attrs)
Callback method for an opening tag to implement by derived classes.
std::pair< int, SUMOSAXAttributes * > myNextSectionStart
void error(const XERCES_CPP_NAMESPACE::SAXParseException &exception)
Handler for XML-errors.
int convertTag(const std::string &tag) const
Converts a tag from its string into its numerical representation.
XMLCh * convert(const std::string &name) const
converts from c++-string into unicode
void setSection(const int element, const bool seen)
void warning(const XERCES_CPP_NAMESPACE::SAXParseException &exception)
Handler for XML-warnings.
GenericHandler(const GenericHandler &s)
invalidated copy constructor
GenericHandler * myParentHandler
The handler to give control back to.
bool mySectionSeen
whether the reader has already seen the begin of the section
void setFileName(const std::string &name)
Sets the current file name.
std::string myExpectedRoot
The root element to expect, empty string disables the check.
bool sectionFinished() const
void needsCharacterData(const bool value=true)
void characters(const XMLCh *const chars, const XERCES3_SIZE_t length)
The inherited method called when characters occurred.
void startElement(const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname, const XERCES_CPP_NAMESPACE::Attributes &attrs)
The inherited method called when a new tag opens.
const GenericHandler & operator=(const GenericHandler &s)
invalidated assignment operator
Encapsulated SAX-Attributes.
SAX-reader encapsulation containing binary reader.