|
Isis 3.0 Developer's Reference (API) |
Home |
00001 00025 #ifndef IsisXMLHelpers_h 00026 #define IsisXMLHelpers_h 00027 00028 //#include <sax2/DefaultHandler.hpp> 00029 00030 #include "IsisAmlData.h" 00031 #include "IsisXMLHelper.h" 00032 #include "IsisXMLIgnore.h" 00038 class IsisXMLHelpers : public IsisXMLHandler { 00039 00040 public: 00041 00042 ContentHandler *prevDocHandler; 00043 ErrorHandler *prevErrorHandler; 00044 00045 00046 IsisXMLHelpers(char *PencodingName, 00047 bool &PexpandNamespaces, 00048 XERCES::SAX2XMLReader* &Pparser, 00049 std::vector<IsisHelperData> *Phelpers); 00050 00051 ~IsisXMLHelpers(); 00052 00053 // void endDocument(); 00054 00055 void endElement(const XMLCh *const uri, const XMLCh *const localname, const XMLCh *const qname); 00056 00057 void characters(const XMLCh *const chars, const XMLSize_t length); 00058 00059 00060 void startElement(const XMLCh *const uri, 00061 const XMLCh *const localname, 00062 const XMLCh *const qname, 00063 const XERCES::Attributes &attributes); 00064 00065 00066 private: 00067 00068 // Saved arguments from constructor 00069 char *encodingName; 00070 bool expandNamespaces; 00071 XERCES::SAX2XMLReader *parser; 00072 std::vector<IsisHelperData> *helpers; 00073 00074 // Handlers this handler knows how to create 00075 IsisXMLHelper *helperHandler; 00076 IsisXMLIgnore *ignoreHandler; 00077 00078 }; 00079 00080 00081 #endif