Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef FEDM_XMLPARSER_IREADER_H
00032 #define FEDM_XMLPARSER_IREADER_H
00033
00034
00035
00036
00037
00038 #include "FedmIscCore.h"
00039 #include "FEDM_XmlParser_Types.h"
00040
00041 class FEDM_XmlParser_Base;
00042
00043
00044
00045
00046 class FEDM_XmlParser_Reader
00047 {
00048 public:
00049 FEDM_XmlParser_Reader(void);
00050 virtual ~FEDM_XmlParser_Reader(void);
00051
00052
00053 virtual int SerializeHeaderIn(FEDM_XML_TREEITEM* parent, const char* szVendor="");
00054
00055
00056 virtual int OpenDoc(char* sFileName)=0;
00057 virtual int CloseDoc()=0;
00058 virtual int LoadDoc()=0;
00059 virtual int LoadDoc(const char* szOemRootTag)=0;
00060 virtual int LoadStream(wstring sXmlStream)=0;
00061
00062 virtual void DeleteXmlTree()=0;
00063 virtual int AddTagItem(FEDM_XML_TREEITEM* pParent, FEDM_XML_TREEITEM* pChild)=0;
00064
00065 virtual FEDM_XML_TREEITEM* FindTag( wstring sTag,
00066 unsigned int uiTagLevel,
00067 bool bNext=false )=0;
00068
00069 virtual FEDM_XML_TREEITEM* FindTag( wstring sTag,
00070 wstring sAttribute,
00071 unsigned int uiTagLevel,
00072 bool bNext=false )=0;
00073
00074 int GetTagAttrib( FEDM_XML_TREEITEM* item,
00075 int iIndex,
00076 string& sAttrib,
00077 string& sValue );
00078
00079 protected:
00080 FEDM_XmlParser_Base* m_pXmlParser;
00081
00082 friend class FEDM_XmlParser_Base;
00083 };
00084
00085 #endif // #ifndef FEDM_XMLPARSER_IREADER_H
00086