39 #ifndef vpXmlParser_HH 40 #define vpXmlParser_HH 47 #include <visp3/core/vpConfig.h> 51 #include <visp3/core/vpException.h> 53 #include <libxml/parser.h> 192 virtual void readMainClass(xmlDocPtr doc, xmlNodePtr node) = 0;
203 virtual void writeMainClass(xmlNodePtr node) = 0;
205 bool xmlReadBoolChild(xmlDocPtr doc, xmlNodePtr node);
206 char *xmlReadCharChild(xmlDocPtr doc, xmlNodePtr node);
207 double xmlReadDoubleChild(xmlDocPtr doc, xmlNodePtr node);
208 float xmlReadFloatChild(xmlDocPtr doc, xmlNodePtr node);
209 int xmlReadIntChild(xmlDocPtr doc, xmlNodePtr node);
210 std::string xmlReadStringChild(xmlDocPtr doc, xmlNodePtr node);
211 unsigned int xmlReadUnsignedIntChild(xmlDocPtr doc, xmlNodePtr node);
213 void xmlWriteBoolChild(xmlNodePtr node,
const char *label,
const bool value);
214 void xmlWriteCharChild(xmlNodePtr node,
const char *label,
const char *value);
215 void xmlWriteDoubleChild(xmlNodePtr node,
const char *label,
const double value);
216 void xmlWriteFloatChild(xmlNodePtr node,
const char *label,
const float value);
217 void xmlWriteIntChild(xmlNodePtr node,
const char *label,
const int value);
218 void xmlWriteStringChild(xmlNodePtr node,
const char *label,
const std::string &value);
219 void xmlWriteUnsignedIntChild(xmlNodePtr node,
const char *label,
const unsigned int value);
240 void parse(
const std::string &filename);
241 void save(
const std::string &filename,
const bool append =
false);
286 void setMap(
const std::map<std::string, int> &_map) { nodeMap = _map; }
295 inline void setMainTag(
const std::string &tag) { main_tag = tag; }
void setMainTag(const std::string &tag)
void setMap(const std::map< std::string, int > &_map)
This class intends to simplify the creation of xml parser based on the libxml2 third party library...
std::map< std::string, int > nodeMap