Alamo
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Attributes
IO::ParmParse Class Reference

#include <ParmParse.H>

Inheritance diagram for IO::ParmParse:

Public Member Functions

 ParmParse (std::string arg)
 
 ParmParse ()
 
std::string getPrefix () const
 
void ignore (std::string name)
 
void pushPrefix (const std::string prefix)
 
void popPrefix ()
 
void forbid (std::string name, std::string explanation)
 
bool contains (std::string name)
 
int queryunit (std::string name, Unit &value)
 
int queryunit (std::string name, Unit &value, const Unit type)
 
int queryunit (std::string name, Set::Scalar &value, const Unit type)
 
template<typename T >
int query_required (std::string name, T &value)
 
template<typename T >
int query_required (std::string name, T &value, const Unit type)
 
template<typename T >
int query_default (std::string name, T &value, T defaultvalue)
 
template<typename T >
int query_default (std::string name, T &value, std::string defaultvalue, const Unit type)
 
int query_validate (std::string name, int &value, std::vector< int > possibleintvals)
 
int query_validate (std::string name, std::string &value, std::vector< const char * > possiblecharvals, bool firstbydefault)
 
int query_validate (std::string name, std::string &value, std::vector< const char * > possiblecharvals)
 
int query_default (std::string name, std::string &value, const char *defaultvalue)
 
int query_default (std::string name, int &value, bool defaultvalue)
 
int query_file (std::string name, std::string &value, bool copyfile, bool checkfile)
 
int query_file (std::string name, std::string &value, bool copyfile)
 
int query_file (std::string name, std::string &value)
 
template<typename T >
int queryarr (std::string name, std::vector< T > &value)
 
int queryarr (std::string name, std::vector< Set::Scalar > &value, Unit unit=Unit::Less())
 
int queryarr (std::string name, Set::Vector &value, Unit unit=Unit::Less())
 
int queryarr (std::string name, Set::Matrix &value, Unit unit=Unit::Less())
 
template<typename T >
int queryarr_required (std::string name, std::vector< T > &value)
 
int queryarr_required (std::string name, std::vector< Set::Scalar > &value, Unit unit=Unit::Less())
 
int queryarr_default (std::string name, std::vector< std::string > &value, std::vector< std::string > defaultvalue)
 
int queryarr_default (std::string name, Set::Vector &value, Set::Vector defaultvalue)
 
int queryarr_default (std::string name, Set::Matrix &value, Set::Matrix defaultvalue)
 
int queryarr_default (std::string name, std::vector< double > &value, std::vector< double > defaultvalue)
 
int queryarr_default (std::string name, std::vector< double > &value, std::vector< std::string > defaultvalue, Unit unit)
 
template<typename T >
int queryclass_enumerate (std::string a_name, std::vector< T > &value, int number=1)
 
template<typename T >
int query_enumerate (std::string a_name, std::vector< T > &value, int number=1)
 
int AnyUnusedInputs (bool inscopeonly=true, bool verbose=false)
 
std::vector< std::string > GetUnusedInputs ()
 
std::string prefix ()
 
std::string full (std::string name)
 
template<class T >
void queryclass (std::string name, T *value)
 
template<class T >
void queryclass (std::string name, T &value)
 
template<class T >
void queryclass (T *value)
 
template<class T >
void queryclass (T &value)
 
template<typename... IC, typename... Args, typename PTRTYPE >
void select (std::string name, PTRTYPE *&ic_eta, Args &&... args)
 
template<typename FirstIC , typename... IC, typename... Args, typename PTRTYPE >
void select_default (std::string name, PTRTYPE *&ic_eta, Args &&... args)
 
template<typename... IC, typename... Args, typename PTRTYPE >
void select_enumerate (std::string a_name, std::vector< PTRTYPE * > &value, Args &&... args)
 
template<typename... INTEGRATOR, typename... Args, typename PTRTYPE >
void select_main (PTRTYPE *&ic_eta, Args &&... args)
 
template<typename INTEGRATOR , typename Args , typename PTRTYPE >
void select_only (PTRTYPE *&ic_eta, Args &&args)
 
template<typename INTEGRATOR , typename PTRTYPE >
void select_only (PTRTYPE *&ic_eta)
 
template<typename... OBJ, typename CLASS >
void select (std::string name, CLASS &value)
 
template<int N>
void query_exactly (std::vector< std::string > names, std::pair< std::string, Set::Scalar > values[N], std::vector< Unit > units=std::vector< Unit >())
 

Static Public Member Functions

static int AllUnusedInputs ()
 

Private Member Functions

void Define ()
 
template<typename CLASS , int N, typename... OBJ>
void static_polymorphism_parser (CLASS &value)
 

Static Private Attributes

static bool checked_for_input_files = false
 

Detailed Description

Definition at line 115 of file ParmParse.H.

Constructor & Destructor Documentation

◆ ParmParse() [1/2]

IO::ParmParse::ParmParse ( std::string  arg)
inline

Definition at line 134 of file ParmParse.H.

◆ ParmParse() [2/2]

IO::ParmParse::ParmParse ( )
inline

Definition at line 135 of file ParmParse.H.

Member Function Documentation

◆ AllUnusedInputs()

static int IO::ParmParse::AllUnusedInputs ( )
inlinestatic

Definition at line 907 of file ParmParse.H.

◆ AnyUnusedInputs()

int IO::ParmParse::AnyUnusedInputs ( bool  inscopeonly = true,
bool  verbose = false 
)
inline

Definition at line 869 of file ParmParse.H.

◆ contains()

bool IO::ParmParse::contains ( std::string  name)
inline

Definition at line 173 of file ParmParse.H.

◆ Define()

void IO::ParmParse::Define ( )
inlineprivate

Definition at line 118 of file ParmParse.H.

◆ forbid()

void IO::ParmParse::forbid ( std::string  name,
std::string  explanation 
)
inline

Definition at line 160 of file ParmParse.H.

◆ full()

std::string IO::ParmParse::full ( std::string  name)
inline

Definition at line 925 of file ParmParse.H.

◆ getPrefix()

std::string IO::ParmParse::getPrefix ( ) const
inline

Definition at line 136 of file ParmParse.H.

◆ GetUnusedInputs()

std::vector< std::string > IO::ParmParse::GetUnusedInputs ( )
inline

Definition at line 894 of file ParmParse.H.

◆ ignore()

void IO::ParmParse::ignore ( std::string  name)
inline

Definition at line 137 of file ParmParse.H.

◆ popPrefix()

void IO::ParmParse::popPrefix ( )
inline

Definition at line 150 of file ParmParse.H.

◆ prefix()

std::string IO::ParmParse::prefix ( )
inline

Definition at line 921 of file ParmParse.H.

◆ pushPrefix()

void IO::ParmParse::pushPrefix ( const std::string  prefix)
inline

Definition at line 142 of file ParmParse.H.

◆ query_default() [1/4]

int IO::ParmParse::query_default ( std::string  name,
int &  value,
bool  defaultvalue 
)
inline

Definition at line 459 of file ParmParse.H.

◆ query_default() [2/4]

int IO::ParmParse::query_default ( std::string  name,
std::string &  value,
const char *  defaultvalue 
)
inline

Definition at line 442 of file ParmParse.H.

◆ query_default() [3/4]

template<typename T >
int IO::ParmParse::query_default ( std::string  name,
T &  value,
std::string  defaultvalue,
const Unit  type 
)
inline

Definition at line 315 of file ParmParse.H.

◆ query_default() [4/4]

template<typename T >
int IO::ParmParse::query_default ( std::string  name,
T &  value,
defaultvalue 
)
inline

Definition at line 293 of file ParmParse.H.

◆ query_enumerate()

template<typename T >
int IO::ParmParse::query_enumerate ( std::string  a_name,
std::vector< T > &  value,
int  number = 1 
)
inline

Definition at line 804 of file ParmParse.H.

◆ query_exactly()

template<int N>
void IO::ParmParse::query_exactly ( std::vector< std::string >  names,
std::pair< std::string, Set::Scalar values[N],
std::vector< Unit units = std::vector<Unit>() 
)
inline

Definition at line 1253 of file ParmParse.H.

◆ query_file() [1/3]

int IO::ParmParse::query_file ( std::string  name,
std::string &  value 
)
inline

Definition at line 522 of file ParmParse.H.

◆ query_file() [2/3]

int IO::ParmParse::query_file ( std::string  name,
std::string &  value,
bool  copyfile 
)
inline

Definition at line 518 of file ParmParse.H.

◆ query_file() [3/3]

int IO::ParmParse::query_file ( std::string  name,
std::string &  value,
bool  copyfile,
bool  checkfile 
)
inline

Definition at line 480 of file ParmParse.H.

◆ query_required() [1/2]

template<typename T >
int IO::ParmParse::query_required ( std::string  name,
T &  value 
)
inline

Definition at line 249 of file ParmParse.H.

◆ query_required() [2/2]

template<typename T >
int IO::ParmParse::query_required ( std::string  name,
T &  value,
const Unit  type 
)
inline

Definition at line 271 of file ParmParse.H.

◆ query_validate() [1/3]

int IO::ParmParse::query_validate ( std::string  name,
int &  value,
std::vector< int >  possibleintvals 
)
inline

Definition at line 336 of file ParmParse.H.

◆ query_validate() [2/3]

int IO::ParmParse::query_validate ( std::string  name,
std::string &  value,
std::vector< const char * >  possiblecharvals 
)
inline

Definition at line 423 of file ParmParse.H.

◆ query_validate() [3/3]

int IO::ParmParse::query_validate ( std::string  name,
std::string &  value,
std::vector< const char * >  possiblecharvals,
bool  firstbydefault 
)
inline

Definition at line 376 of file ParmParse.H.

◆ queryarr() [1/4]

int IO::ParmParse::queryarr ( std::string  name,
Set::Matrix value,
Unit  unit = Unit::Less() 
)
inline

Definition at line 599 of file ParmParse.H.

◆ queryarr() [2/4]

int IO::ParmParse::queryarr ( std::string  name,
Set::Vector value,
Unit  unit = Unit::Less() 
)
inline

Definition at line 578 of file ParmParse.H.

◆ queryarr() [3/4]

int IO::ParmParse::queryarr ( std::string  name,
std::vector< Set::Scalar > &  value,
Unit  unit = Unit::Less() 
)
inline

Definition at line 541 of file ParmParse.H.

◆ queryarr() [4/4]

template<typename T >
int IO::ParmParse::queryarr ( std::string  name,
std::vector< T > &  value 
)
inline

Definition at line 529 of file ParmParse.H.

◆ queryarr_default() [1/5]

int IO::ParmParse::queryarr_default ( std::string  name,
Set::Matrix value,
Set::Matrix  defaultvalue 
)
inline

Definition at line 682 of file ParmParse.H.

◆ queryarr_default() [2/5]

int IO::ParmParse::queryarr_default ( std::string  name,
Set::Vector value,
Set::Vector  defaultvalue 
)
inline

Definition at line 663 of file ParmParse.H.

◆ queryarr_default() [3/5]

int IO::ParmParse::queryarr_default ( std::string  name,
std::vector< double > &  value,
std::vector< double >  defaultvalue 
)
inline

Definition at line 701 of file ParmParse.H.

◆ queryarr_default() [4/5]

int IO::ParmParse::queryarr_default ( std::string  name,
std::vector< double > &  value,
std::vector< std::string >  defaultvalue,
Unit  unit 
)
inline

Definition at line 718 of file ParmParse.H.

◆ queryarr_default() [5/5]

int IO::ParmParse::queryarr_default ( std::string  name,
std::vector< std::string > &  value,
std::vector< std::string >  defaultvalue 
)
inline

Definition at line 654 of file ParmParse.H.

◆ queryarr_required() [1/2]

int IO::ParmParse::queryarr_required ( std::string  name,
std::vector< Set::Scalar > &  value,
Unit  unit = Unit::Less() 
)
inline

Definition at line 646 of file ParmParse.H.

◆ queryarr_required() [2/2]

template<typename T >
int IO::ParmParse::queryarr_required ( std::string  name,
std::vector< T > &  value 
)
inline

Definition at line 637 of file ParmParse.H.

◆ queryclass() [1/4]

template<class T >
void IO::ParmParse::queryclass ( std::string  name,
T &  value 
)
inline

Definition at line 959 of file ParmParse.H.

◆ queryclass() [2/4]

template<class T >
void IO::ParmParse::queryclass ( std::string  name,
T *  value 
)
inline

Definition at line 934 of file ParmParse.H.

◆ queryclass() [3/4]

template<class T >
void IO::ParmParse::queryclass ( T &  value)
inline

Definition at line 1005 of file ParmParse.H.

◆ queryclass() [4/4]

template<class T >
void IO::ParmParse::queryclass ( T *  value)
inline

Definition at line 989 of file ParmParse.H.

◆ queryclass_enumerate()

template<typename T >
int IO::ParmParse::queryclass_enumerate ( std::string  a_name,
std::vector< T > &  value,
int  number = 1 
)
inline

Definition at line 738 of file ParmParse.H.

◆ queryunit() [1/3]

int IO::ParmParse::queryunit ( std::string  name,
Set::Scalar value,
const Unit  type 
)
inline

Definition at line 232 of file ParmParse.H.

◆ queryunit() [2/3]

int IO::ParmParse::queryunit ( std::string  name,
Unit value 
)
inline

Definition at line 192 of file ParmParse.H.

◆ queryunit() [3/3]

int IO::ParmParse::queryunit ( std::string  name,
Unit value,
const Unit  type 
)
inline

Definition at line 213 of file ParmParse.H.

◆ select() [1/2]

template<typename... OBJ, typename CLASS >
void IO::ParmParse::select ( std::string  name,
CLASS &  value 
)
inline

Definition at line 1197 of file ParmParse.H.

◆ select() [2/2]

template<typename... IC, typename... Args, typename PTRTYPE >
void IO::ParmParse::select ( std::string  name,
PTRTYPE *&  ic_eta,
Args &&...  args 
)
inline

Definition at line 1030 of file ParmParse.H.

◆ select_default()

template<typename FirstIC , typename... IC, typename... Args, typename PTRTYPE >
void IO::ParmParse::select_default ( std::string  name,
PTRTYPE *&  ic_eta,
Args &&...  args 
)
inline

Definition at line 1069 of file ParmParse.H.

◆ select_enumerate()

template<typename... IC, typename... Args, typename PTRTYPE >
void IO::ParmParse::select_enumerate ( std::string  a_name,
std::vector< PTRTYPE * > &  value,
Args &&...  args 
)
inline

Definition at line 1093 of file ParmParse.H.

◆ select_main()

template<typename... INTEGRATOR, typename... Args, typename PTRTYPE >
void IO::ParmParse::select_main ( PTRTYPE *&  ic_eta,
Args &&...  args 
)
inline

Definition at line 1158 of file ParmParse.H.

◆ select_only() [1/2]

template<typename INTEGRATOR , typename PTRTYPE >
void IO::ParmParse::select_only ( PTRTYPE *&  ic_eta)
inline

Definition at line 1185 of file ParmParse.H.

◆ select_only() [2/2]

template<typename INTEGRATOR , typename Args , typename PTRTYPE >
void IO::ParmParse::select_only ( PTRTYPE *&  ic_eta,
Args &&  args 
)
inline

Definition at line 1179 of file ParmParse.H.

◆ static_polymorphism_parser()

template<typename CLASS , int N, typename... OBJ>
void IO::ParmParse::static_polymorphism_parser ( CLASS &  value)
inlineprivate

Definition at line 1216 of file ParmParse.H.

Field Documentation

◆ checked_for_input_files

bool IO::ParmParse::checked_for_input_files = false
staticprivate

Definition at line 131 of file ParmParse.H.


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