Isis 3 Programmer Reference
IsisXMLHandler.h
Go to the documentation of this file.
1 
24 #ifndef IsisXMLHandler_h
25 #define IsisXMLHandler_h
26 
27 #include <xercesc/sax2/DefaultHandler.hpp>
28 
29 namespace XERCES = XERCES_CPP_NAMESPACE;
35 class IsisXMLHandler : public XERCES::DefaultHandler {
36  using XERCES::DefaultHandler::ignorableWhitespace;
37 
38  public:
39 
40  ContentHandler *prevDocHandler;
41  ErrorHandler *prevErrorHandler;
42 
44 
45  IsisXMLHandler(char *PencodingName,
46  bool &PexpandNamespaces,
47  XERCES::SAX2XMLReader* &Pparser,
48  QString *chars);
49 
50  IsisXMLHandler(char *PencodingName,
51  bool &PexpandNamespaces,
52  XERCES::SAX2XMLReader* &Pparser);
53 
54  ~IsisXMLHandler();
55 
56  void endDocument();
57 
58  void endElement(const XMLCh *const uri,
59  const XMLCh *const localname,
60  const XMLCh *const qname);
61 
62  void characters(const XMLCh *const chars,
63  const XMLSize_t length);
64 
65  void ignorableWhitespace(const XMLCh *const chars,
66  const unsigned int length);
67 
68  void processingInstruction(const XMLCh *const target,
69  const XMLCh *const data);
70 
71  void startDocument();
72 
73  void startElement(const XMLCh *const uri,
74  const XMLCh *const localname,
75  const XMLCh *const qname,
76  const XERCES::Attributes &attributes);
77 
78 
79  // SAX ErrorHandler interface
80  void warning(const XERCES::SAXParseException &exception);
81  void error(const XERCES::SAXParseException &exception);
82  void fatalError(const XERCES::SAXParseException &exception);
83 
84 
85  private:
86 
87  // Saved argument from the constructor
88  char *encodingName;
89  bool expandNamespaces;
90  XERCES::SAX2XMLReader *parser;
91  QString *value;
92  int outputEndTag;
93 };
94 
95 
96 #endif