USGS

Isis 3.0 Developer's Reference (API)

Home

IsisXMLHelpers.h

Go to the documentation of this file.
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