structurehandler.h

00001 #ifndef STRUCTUREHANDLER_H
00002 #define STRUCTUREHANDLER_H
00003 
00004 #include <xercesc/util/XercesDefs.hpp>
00005 #include <xercesc/sax2/Attributes.hpp>
00006 #include <string>
00007 #include <xml/XMLConstantNode.h>
00008 
00009 XERCES_CPP_NAMESPACE_USE;
00010 
00016 class StructureHandler
00017 {
00018 
00019 public:
00021   StructureHandler();
00022 
00024   virtual ~StructureHandler();
00025 
00035   virtual StructureHandler* startChild(const XMLCh* const lname, const Attributes& attrs) = 0;
00036 
00043   virtual void endDirectChild(const XMLCh* const lname, const std::string& content) = 0;
00044 
00050   virtual void endElement(const XMLCh* const lname, const XMLCh* const content) = 0;
00051 
00057   virtual void endStructureChild(const XMLCh* const  lname, const StructureHandler* pHandler) = 0;
00058 
00064   virtual void startElement(const XMLCh* const localname, const Attributes& atts) = 0;
00065 
00069   virtual void* getData() { return m_pData; }
00070 
00073   virtual const void* getData() const { return m_pData; }
00074 
00077   virtual void setData(void* data) { m_pData = data; }
00078 
00079 private: // private members
00081   void* m_pData;
00082 
00083 };
00084 
00085 #endif

Generated on Fri May 19 12:15:54 2006 for Bamboo Ch@t by  doxygen 1.4.6