//////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2008 The Regents of the University of California // // This file is part of Qbox // // Qbox is distributed under the terms of the GNU General Public License // as published by the Free Software Foundation, either version 2 of // the License, or (at your option) any later version. // See the file COPYING in the root directory of this distribution // or . // //////////////////////////////////////////////////////////////////////////////// // // StructureHandler.h // //////////////////////////////////////////////////////////////////////////////// // $Id: StructureHandler.h,v 1.5 2008-09-08 15:56:19 fgygi Exp $ #ifndef STRUCTUREHANDLER_H #define STRUCTUREHANDLER_H #include #include #include using namespace xercesc; class StructureHandler { private: public: // Start of an element handled by the StructureHandler virtual void startElement(const XMLCh* const uri,const XMLCh* const localname, const XMLCh* const qname, const Attributes& attributes) = 0; // End of an element handled by the StructureHandler virtual void endElement(const XMLCh* const uri, const XMLCh* const localname, const XMLCh* const qname, std::string& content) = 0; // start a subhandler virtual StructureHandler* startSubHandler(const XMLCh* const uri, const XMLCh* const localname, const XMLCh* const qname, const Attributes& attributes) = 0; // end a subhandler virtual void endSubHandler(const XMLCh* const uri, const XMLCh* const localname, const XMLCh* const qname, const StructureHandler* const subHandler) = 0; StructureHandler() {} virtual ~StructureHandler() {} }; #endif