1 #ifndef NoXmlTreeReader
3 #include <libxml/xmlreader.h>
237 namespace stl_xml_tree {
238 const std::string sep =
">";
252 xmlTextReaderPtr reader;
254 std::multimap<std::string,std::string> XmlTree;
255 char* xmlfilename = 0;
256 std::multimap<std::string,std::string>::const_iterator OnTheTree;
258 int PreviousDepth = 0;
259 int MaxDepthWanted = 0;
260 std::string XmlTreeNodeName;
261 std::string NodeName;
262 std::string IdString;
267 void ProcessNodeDebug();
269 void ProcessAttribute();
270 bool SkipBasedOnValue(
const std::string key,
const std::string value);
279 static std::map<std::string,std::string> ParseAttributeString(
const std::string);
280 static std::string MakeKey(
const std::string FullyQualifiedParent,
const std::string Child);
281 static std::string QualifyParent(
const std::string Parent,
const std::string Attributes);
282 std::vector<std::string> LookUpValueByKey(
const std::string key);
283 std::vector<std::string> LookUpValueByKey
284 (std::string& Parent,
const std::string ParentAttributes,
const std::string Child);
286 void InsertKeyValuePair(std::string key, std::string value);
287 static bool AttributesContain(std::string attributeString, std::string attributeName, std::string attributeValue);
288 inline short GetStatus() {
return MyStatus;};