5 #include "StringParameters.h"
16 typedef std::map< std::string , StringParameters* > StringParametersMap ;
114 std::vector< std::string >& _tokens ;
119 LCTokenizer( std::vector< std::string >& tokens,
char del ) : _tokens(tokens) , _del(del), _last(del) {
123 void operator()(
const char& c) {
127 if( _last == _del ) {
128 _tokens.push_back(
"") ;
130 _tokens.back() += c ;
140 std::vector<std::string> & result() {
148 XMLParser(
const std::string& fileName,
bool forCCheck=
false ) ;
153 _cmdlineparams = cmdlineparams ;
178 const std::string& attribute,
const std::string& value ) ;
187 mutable StringParametersMap _map ;
191 std::string _fileName ;
197 CommandLineParametersMap _cmdlineparams ;
XML parser for Marlin steering files.
Definition: XMLParser.h:104
void setCmdLineParameters(const CommandLineParametersMap &cmdlineparams)
set command line parameters
Definition: XMLParser.h:152
const char * getAttribute(TiXmlNode *node, const std::string &name)
Return named attribute - throws ParseException if attribute doesn't exist.
Definition: XMLParser.cc:275
void processconditions(TiXmlNode *current, const std::string &conditions)
Helper method - recursively moves processors from <if> tags to top level (<execute>) and adds corresp...
Definition: XMLParser.cc:458
Interface for a parser of a steering file to be used with marlin.
Definition: IParser.h:18
Helper class for XMLParser.
Definition: XMLParser.h:112
Always the top level node.
Definition: tinyxml.h:1366
StringParameters * getParameters(const std::string §ionName) const
Return the StringParameters for the section as read from the xml file.
Definition: XMLParser.cc:445
void parametersFromNode(TiXmlNode *section, std::pair< unsigned, unsigned > *typeCount=0)
Extracts all parameters from the given node and adss them to the current StringParameters object...
Definition: XMLParser.cc:296
TiXmlNode * findElement(TiXmlNode *node, const std::string &type, const std::string &attribute, const std::string &value)
Helper method - finds child element of node with given type and attribute value.
Definition: XMLParser.cc:563
void parse()
Parse the input file.
Definition: XMLParser.cc:24
The parent class for everything in the Document Object Model.
Definition: tinyxml.h:425
void replacegroups(TiXmlNode *section)
Helper method - replaces all <group> tag with corresponding <processor> tags.
Definition: XMLParser.cc:517
Simple parameters class for Marlin.
Definition: StringParameters.h:34