|
Isis 3.0 Developer's Reference (API) |
Home |
00001 00024 #ifndef IsisXMLHelper_h 00025 #define IsisXMLHelper_h 00026 00027 //#include <sax2/DefaultHandler.hpp> 00028 00029 #include "IsisAmlData.h" 00030 #include "IsisXMLIgnore.h" 00031 #include "IsisXMLHandler.h" 00032 00038 class IsisXMLHelper : public IsisXMLHandler { 00039 00040 public: 00041 00042 ContentHandler *prevDocHandler; 00043 ErrorHandler *prevErrorHandler; 00044 00045 00046 IsisXMLHelper(char *PencodingName, 00047 bool &PexpandNamespaces, 00048 XERCES::SAX2XMLReader* &Pparser, 00049 IsisHelperData *Helper); 00050 00051 ~IsisXMLHelper(); 00052 00053 void endElement(const XMLCh *const uri, 00054 const XMLCh *const localname, 00055 const XMLCh *const qname); 00056 00057 void characters(const XMLCh *const chars, 00058 const XMLSize_t length); 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 argument from the constructor 00069 char *encodingName; 00070 bool expandNamespaces; 00071 XERCES::SAX2XMLReader *parser; 00072 IsisHelperData *helper; 00073 00074 // Handler this handler knows how to create 00075 IsisXMLHandler *generalHandler; 00076 IsisXMLIgnore *ignoreHandler; 00077 }; 00078 00079 00080 #endif 00081