00001
00002
00003
00004
00005
00006
00007
00008
00010
00011 #ifndef MERS_ESTIMATION_DISCRETE_IO_XML_BMASSIGNMENTCH_HEADER_FILE
00012 #define MERS_ESTIMATION_DISCRETE_IO_XML_BMASSIGNMENTCH_HEADER_FILE
00013
00014 #include <Mers/Utils/Io/Xml/Sax/TypedCH.h>
00015 #include <Mers/Utils/Io/Xml/Sax/ContentCallback.h>
00016 #include <Mers/Utils/Io/Xml/Sax/CallbackStore.h>
00017
00018
00019
00020 #include <Mers/Utils/Lang/String.h>
00021
00022 namespace Mers {
00023 namespace Utils {
00024 namespace Lang {
00025 class String;
00026 }
00027 }
00028 namespace Models {
00029 namespace Base {
00030 class BaseModel;
00031 class BaseModelAssignment;
00032
00033 namespace Io {
00034 namespace Xml {
00035 namespace Sax {
00039 class BMAssignmentCH
00040 : public ::Mers::Utils::Io::Xml::Sax::TypedCH
00041 < const ::Mers::Models::Base::BaseModel * >
00042 {
00043 public:
00057 BMAssignmentCH( XERCES_CPP_NAMESPACE::SAX2XMLReader * reader,
00058 const Mers::Models::Base::BaseModel * model,
00059 ::Mers::Utils::Io::Xml::Sax::ContentHandler * parent,
00060 ::Mers::Utils::Io::Xml::Sax::ContentCallback
00061 < ::Mers::Models::Base::BaseModelAssignment * > * callback );
00062
00094 virtual void startElement(
00095 const XMLCh * const uri,
00096 const XMLCh * const localname,
00097 const XMLCh * const qname,
00098 const XERCES_CPP_NAMESPACE::Attributes& attrs);
00099
00118 virtual void endElement(
00119 const XMLCh * const uri,
00120 const XMLCh * const localname,
00121 const XMLCh * const qname);
00122
00123 protected:
00125 typedef ::Mers::Utils::Io::Xml::Sax::CallbackStore
00126 < ::Mers::Utils::Lang::String * > StringStore;
00127
00128 protected:
00130 StringStore m_Variable;
00132 StringStore m_Value;
00133
00135 ::Mers::Utils::Io::Xml::Sax::ContentCallback
00136 < ::Mers::Models::Base::BaseModelAssignment * > * m_Callback;
00137 private:
00139 BMAssignmentCH();
00140 BMAssignmentCH(const BMAssignmentCH &other);
00141 BMAssignmentCH & operator =(const BMAssignmentCH &other);
00142 };
00143 }
00144 }
00145 }
00146 }
00147 }
00148 }
00149
00150 #endif