19 #ifndef ROOT__XMLREADER_H__
20 #define ROOT__XMLREADER_H__
42 Attributes(
const std::string& nName,
const std::string& nValue) : fName(nName), fValue(nValue) {}
47 cling::Interpreter &fInterp;
84 static std::map<std::string, ETagNames> fgMapTagNames;
85 static void PopulateMap();
87 static bool GetNextTag(std::ifstream &file, std::string& out,
int& lineCount);
88 static bool IsStandaloneTag(
const std::string& tag);
89 static bool IsClosingTag(
const std::string& tag);
90 static ETagNames GetNameOfTag(
const std::string& tag, std::string& name);
92 static bool GetAttributes(
const std::string& tag, std::vector<Attributes>& out,
const char* lineNum);
94 static bool CheckIsTagOK(
const std::string& tag);
96 static bool IsTagComment(
const std::string& tag);
100 XMLReader(cling::Interpreter &interp) : fCount(0), fInterp(interp) {}
109 bool Parse(
const std::string &fileName, SelectionRules& out);