EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
inputParser Class Reference

#include <estarlight/blob/master/include/inputParser.h>

+ Collaboration diagram for inputParser:

Classes

class  _parameter
 

Public Member Functions

 inputParser ()
 
 ~inputParser ()
 
int parseFile (std::string filename)
 
int parseString (std::string str)
 
void addIntParameter (std::string name, int *var, bool required=true)
 
void addUintParameter (std::string name, unsigned int *var, bool required=true)
 
void addFloatParameter (std::string name, float *var, bool required=true)
 
void addDoubleParameter (std::string name, double *var, bool required=true)
 
void addBoolParameter (std::string name, bool *var, bool required=true)
 
void addStringParameter (std::string name, std::string *var, bool required=true)
 
void printParameterInfo (std::ostream &out=std::cout)
 
bool validateParameters (std::ostream &errOut=std::cerr)
 
template<typename S >
void addParameter (S &param)
 
template<typename P >
void addParameter (const std::string &name, P *varPtr, bool required=false)
 
template<>
void addParameter (const std::string &name, int *varPtr, bool required)
 
template<>
void addParameter (const std::string &name, unsigned int *varPtr, bool required)
 
template<>
void addParameter (const std::string &name, float *varPtr, bool required)
 
template<>
void addParameter (const std::string &name, double *varPtr, bool required)
 
template<>
void addParameter (const std::string &name, bool *varPtr, bool required)
 
template<>
void addParameter (const std::string &name, std::string *varPtr, bool required)
 

Private Attributes

std::map< std::string,
_parameter< int > > 
_intParameters
 
std::map< std::string,
_parameter< unsigned int > > 
_uintParameters
 
std::map< std::string,
_parameter< float > > 
_floatParameters
 
std::map< std::string,
_parameter< double > > 
_doubleParameters
 
std::map< std::string,
_parameter< bool > > 
_boolParameters
 
std::map< std::string,
_parameter< std::string > > 
_stringParameters
 

Detailed Description

Definition at line 44 of file inputParser.h.

View newest version in sPHENIX GitHub at line 44 of file inputParser.h

Constructor & Destructor Documentation

inputParser::inputParser ( )

Constructor

Definition at line 39 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 39 of file inputParser.cpp

inputParser::~inputParser ( )

Destructor

Definition at line 43 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 43 of file inputParser.cpp

Member Function Documentation

void inputParser::addBoolParameter ( std::string  name,
bool *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 178 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 178 of file inputParser.cpp

References _boolParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

void inputParser::addDoubleParameter ( std::string  name,
double *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 172 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 172 of file inputParser.cpp

References _doubleParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

void inputParser::addFloatParameter ( std::string  name,
float *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 166 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 166 of file inputParser.cpp

References _floatParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

void inputParser::addIntParameter ( std::string  name,
int *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 154 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 154 of file inputParser.cpp

References _intParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

template<typename S >
void inputParser::addParameter ( S &  param)
inline

Add a parameter

Definition at line 135 of file inputParser.h.

View newest version in sPHENIX GitHub at line 135 of file inputParser.h

Referenced by inputParameters::inputParameters().

+ Here is the caller graph for this function:

template<typename P >
void inputParser::addParameter ( const std::string &  name,
P *  varPtr,
bool  required = false 
)
inline

Add a parameter

Definition at line 142 of file inputParser.h.

View newest version in sPHENIX GitHub at line 142 of file inputParser.h

References name, and printWarn.

template<>
void inputParser::addParameter ( const std::string &  name,
int *  varPtr,
bool  required 
)
inline

Definition at line 149 of file inputParser.h.

View newest version in sPHENIX GitHub at line 149 of file inputParser.h

References addIntParameter().

+ Here is the call graph for this function:

template<>
void inputParser::addParameter ( const std::string &  name,
unsigned int *  varPtr,
bool  required 
)
inline

Definition at line 155 of file inputParser.h.

View newest version in sPHENIX GitHub at line 155 of file inputParser.h

References addUintParameter().

+ Here is the call graph for this function:

template<>
void inputParser::addParameter ( const std::string &  name,
float *  varPtr,
bool  required 
)
inline

Definition at line 161 of file inputParser.h.

View newest version in sPHENIX GitHub at line 161 of file inputParser.h

References addFloatParameter().

+ Here is the call graph for this function:

template<>
void inputParser::addParameter ( const std::string &  name,
double *  varPtr,
bool  required 
)
inline

Definition at line 167 of file inputParser.h.

View newest version in sPHENIX GitHub at line 167 of file inputParser.h

References addDoubleParameter().

+ Here is the call graph for this function:

template<>
void inputParser::addParameter ( const std::string &  name,
bool *  varPtr,
bool  required 
)
inline

Definition at line 173 of file inputParser.h.

View newest version in sPHENIX GitHub at line 173 of file inputParser.h

References addBoolParameter().

+ Here is the call graph for this function:

template<>
void inputParser::addParameter ( const std::string &  name,
std::string *  varPtr,
bool  required 
)
inline

Definition at line 179 of file inputParser.h.

View newest version in sPHENIX GitHub at line 179 of file inputParser.h

References addStringParameter().

+ Here is the call graph for this function:

void inputParser::addStringParameter ( std::string  name,
std::string *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 184 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 184 of file inputParser.cpp

References _stringParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

void inputParser::addUintParameter ( std::string  name,
unsigned int *  var,
bool  required = true 
)

Add parameter to pass

Definition at line 160 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 160 of file inputParser.cpp

References _uintParameters.

Referenced by addParameter().

+ Here is the caller graph for this function:

int inputParser::parseFile ( std::string  filename)

Parse a file

Definition at line 47 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 47 of file inputParser.cpp

References parseString().

Referenced by inputParameters::configureFromFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int inputParser::parseString ( std::string  str)

Parse a file

Definition at line 70 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 70 of file inputParser.cpp

References _boolParameters, _doubleParameters, _floatParameters, _intParameters, _stringParameters, _uintParameters, name, and pos().

Referenced by parseFile(), and inputParameters::setParameter().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void inputParser::printParameterInfo ( std::ostream &  out = std::cout)

Print info

Definition at line 190 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 190 of file inputParser.cpp

References _boolParameters, _doubleParameters, _floatParameters, _intParameters, _stringParameters, and _uintParameters.

bool inputParser::validateParameters ( std::ostream &  errOut = std::cerr)

Validate

Definition at line 236 of file inputParser.cpp.

View newest version in sPHENIX GitHub at line 236 of file inputParser.cpp

References _boolParameters, _doubleParameters, _floatParameters, and _intParameters.

Referenced by inputParameters::configureFromFile().

+ Here is the caller graph for this function:

Member Data Documentation

std::map<std::string, _parameter<bool> > inputParser::_boolParameters
private

Definition at line 129 of file inputParser.h.

View newest version in sPHENIX GitHub at line 129 of file inputParser.h

Referenced by addBoolParameter(), parseString(), printParameterInfo(), and validateParameters().

std::map<std::string, _parameter<double> > inputParser::_doubleParameters
private

Definition at line 128 of file inputParser.h.

View newest version in sPHENIX GitHub at line 128 of file inputParser.h

Referenced by addDoubleParameter(), parseString(), printParameterInfo(), and validateParameters().

std::map<std::string, _parameter<float> > inputParser::_floatParameters
private

Definition at line 127 of file inputParser.h.

View newest version in sPHENIX GitHub at line 127 of file inputParser.h

Referenced by addFloatParameter(), parseString(), printParameterInfo(), and validateParameters().

std::map<std::string, _parameter<int> > inputParser::_intParameters
private

Definition at line 125 of file inputParser.h.

View newest version in sPHENIX GitHub at line 125 of file inputParser.h

Referenced by addIntParameter(), parseString(), printParameterInfo(), and validateParameters().

std::map<std::string, _parameter<std::string> > inputParser::_stringParameters
private

Definition at line 130 of file inputParser.h.

View newest version in sPHENIX GitHub at line 130 of file inputParser.h

Referenced by addStringParameter(), parseString(), and printParameterInfo().

std::map<std::string, _parameter<unsigned int> > inputParser::_uintParameters
private

Definition at line 126 of file inputParser.h.

View newest version in sPHENIX GitHub at line 126 of file inputParser.h

Referenced by addUintParameter(), parseString(), and printParameterInfo().


The documentation for this class was generated from the following files: