Restorer.h
См. документацию.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00024
00025 #ifndef Restorer_H_
00026 #define Restorer_H_
00027
00028 #include <sigc++/sigc++.h>
00029 #include <string>
00030 #include "UniXML.h"
00031 #include "UniSetTypes.h"
00032
00039 class Restorer_XML
00040 {
00041 public:
00042
00043 Restorer_XML();
00044 virtual ~Restorer_XML();
00045
00052 typedef sigc::slot<bool,UniXML&,UniXML_iterator&,xmlNode*> ReaderSlot;
00053
00065 void setReadItem( ReaderSlot sl );
00066
00067
00080 void setReadConsumerItem( ReaderSlot sl );
00081
00082
00086 void setItemFilter( const std::string filterField, const std::string filterValue="" );
00087
00091 void setConsumerFilter( const std::string filterField, const std::string filterValue="" );
00092
00093
00098 bool getConsumerInfo( UniXML_iterator& it,
00099 UniSetTypes::ObjectId& cid, UniSetTypes::ObjectId& cnode );
00100
00105 bool old_getConsumerInfo( UniXML_iterator& it,
00106 UniSetTypes::ObjectId& cid, UniSetTypes::ObjectId& cnode );
00107
00108
00109
00111 static xmlNode* find_node( UniXML& xml, xmlNode* root, const std::string& nodename, const std::string nm="" );
00112
00113 protected:
00114
00115 virtual bool check_list_item( UniXML_iterator& it );
00116 virtual bool check_consumer_item( UniXML_iterator& it );
00117
00118 ReaderSlot rslot;
00119 ReaderSlot cslot;
00120
00121 std::string i_filterField;
00122 std::string i_filterValue;
00123 std::string c_filterField;
00124 std::string c_filterValue;
00125 };
00126
00127 #endif
00128