Diana Software
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
QOptions Class Reference

diana options and parameters handler More...

Classes

class  ParamInfo
 

Public Member Functions

void Init (int argc, char *const argv[])
 
void Dump (std::ostream &)
 
void CheckNotGet (const std::string &seq, std::ostream &o)
 
void CheckAtDefault (const std::string &seq, std::ostream &o)
 
virtual ~QOptions ()
 
std::string GetName () const
 
const QVdtGetParameter (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
const QVdtGetParameter (const std::string &n)
 
double GetDouble (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
double GetDouble (const std::string &)
 
std::vector< double > GetVectorDouble (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
std::vector< double > GetVectorDouble (const std::string &)
 
int GetInt (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
int GetInt (const std::string &)
 
std::vector< int > GetVectorInt (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
std::vector< int > GetVectorInt (const std::string &)
 
bool GetBool (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
bool GetBool (const std::string &)
 
std::vector< bool > GetVectorBool (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
std::vector< bool > GetVectorBool (const std::string &)
 
const std::string & GetString (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
const std::string & GetString (const std::string &)
 
std::vector< std::string > GetVectorString (const std::string &seq, const std::string &mod, size_t occ, const std::string &par)
 
std::vector< std::string > GetVectorString (const std::string &)
 

Static Public Member Functions

static QOptionsGetInstance ()
 

Private Member Functions

 QOptions ()
 
void Help (const char *exe)
 
std::map< std::string, QVdt * > GetModuleParameters (const std::string &seq, const std::string &mod, size_t occ)
 
void SetParameter (const std::string &n, const QVdt &value, const bool isDefault=false)
 
void SetParameter (const std::string &seq, const std::string &mod, size_t occ, const std::string &par, const QVdt &p, const bool isDefault=false)
 
void SetFirstSequence (const std::string &n)
 
void SetLastSequence (const std::string &n)
 
void ReplaceUserParams ()
 replace parameters that where super-seeded with inline command More...
 

Private Attributes

std::map< std::string, QVdtfUserParams
 
std::map< std::string, ParamInfofParams
 
std::string fFirstSequenceName
 
std::string fLastSequenceName
 

Friends

class QBaseModule
 
class QModuleFactory
 
class QMessageHandler
 
class QSequence
 
class QDriver
 

Detailed Description

diana options and parameters handler

Author
M. Pallavicini, M.Vignati

Definition at line 21 of file QOptions.hh.

Constructor & Destructor Documentation

◆ ~QOptions()

QOptions::~QOptions ( )
virtual

Definition at line 65 of file QOptions.cc.

◆ QOptions()

QOptions::QOptions ( )
private

Member Function Documentation

◆ CheckAtDefault()

void QOptions::CheckAtDefault ( const std::string &  seq,
std::ostream &  o 
)

Definition at line 95 of file QOptions.cc.

Referenced by QSequence::~QSequence().

◆ CheckNotGet()

void QOptions::CheckNotGet ( const std::string &  seq,
std::ostream &  o 
)

Definition at line 69 of file QOptions.cc.

Referenced by QSequence::~QSequence().

◆ Dump()

void QOptions::Dump ( std::ostream &  o)

Definition at line 121 of file QOptions.cc.

References vec, and QVdt::Vector_QVdt.

◆ GetBool() [1/2]

bool QOptions::GetBool ( const std::string &  )

◆ GetBool() [2/2]

bool QOptions::GetBool ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 526 of file QOptions.cc.

Referenced by QBaseModule::BeginBase(), and QBaseModule::GetBool().

◆ GetDouble() [1/2]

double QOptions::GetDouble ( const std::string &  )

◆ GetDouble() [2/2]

double QOptions::GetDouble ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 489 of file QOptions.cc.

Referenced by QBaseModule::GetDouble().

◆ GetInstance()

Q_BEGIN_NAMESPACE QOptions & QOptions::GetInstance ( )
static

◆ GetInt() [1/2]

int QOptions::GetInt ( const std::string &  )

◆ GetInt() [2/2]

int QOptions::GetInt ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 508 of file QOptions.cc.

Referenced by QBaseModule::GetInt(), and QSequence::Run().

◆ GetModuleParameters()

std::map< std::string, QVdt * > QOptions::GetModuleParameters ( const std::string &  seq,
const std::string &  mod,
size_t  occ 
)
private

Definition at line 580 of file QOptions.cc.

Referenced by QDriver::GetModuleParameters().

◆ GetName()

std::string QOptions::GetName ( ) const
inline

Definition at line 35 of file QOptions.hh.

◆ GetParameter() [1/2]

const QVdt & QOptions::GetParameter ( const std::string &  n)

Definition at line 462 of file QOptions.cc.

◆ GetParameter() [2/2]

const QVdt & QOptions::GetParameter ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 472 of file QOptions.cc.

Referenced by QBaseModule::Update(), and QBaseModule::UpdateConfigParameters().

◆ GetString() [1/2]

const std::string& QOptions::GetString ( const std::string &  )

◆ GetString() [2/2]

const std::string & QOptions::GetString ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 556 of file QOptions.cc.

Referenced by QBaseModule::GetString().

◆ GetVectorBool() [1/2]

std::vector<bool> QOptions::GetVectorBool ( const std::string &  )

◆ GetVectorBool() [2/2]

std::vector< bool > QOptions::GetVectorBool ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 534 of file QOptions.cc.

Referenced by QBaseModule::GetVectorBool().

◆ GetVectorDouble() [1/2]

std::vector<double> QOptions::GetVectorDouble ( const std::string &  )

◆ GetVectorDouble() [2/2]

std::vector< double > QOptions::GetVectorDouble ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 498 of file QOptions.cc.

Referenced by QBaseModule::GetVectorDouble().

◆ GetVectorInt() [1/2]

std::vector<int> QOptions::GetVectorInt ( const std::string &  )

◆ GetVectorInt() [2/2]

std::vector< int > QOptions::GetVectorInt ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 516 of file QOptions.cc.

Referenced by QBaseModule::GetVectorInt().

◆ GetVectorString() [1/2]

std::vector<std::string> QOptions::GetVectorString ( const std::string &  )

◆ GetVectorString() [2/2]

std::vector< std::string > QOptions::GetVectorString ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par 
)

Definition at line 544 of file QOptions.cc.

Referenced by QBaseModule::GetVectorString().

◆ Help()

void QOptions::Help ( const char *  exe)
private

Definition at line 141 of file QOptions.cc.

◆ Init()

void QOptions::Init ( int  argc,
char *const  argv[] 
)

Definition at line 166 of file QOptions.cc.

References Diana::DianaDebug, QMessageHandler::Get(), GetInstance(), max, optarg, opterr, optind, and optopt.

Referenced by main().

◆ ReplaceUserParams()

void QOptions::ReplaceUserParams ( )
private

replace parameters that where super-seeded with inline command

Definition at line 368 of file QOptions.cc.

References b, err, QVdt::GetBool(), QVdt::GetString(), and QMessageHandler::Panic().

◆ SetFirstSequence()

void QOptions::SetFirstSequence ( const std::string &  n)
inlineprivate

Definition at line 82 of file QOptions.hh.

References fFirstSequenceName.

◆ SetLastSequence()

void QOptions::SetLastSequence ( const std::string &  n)
inlineprivate

Definition at line 83 of file QOptions.hh.

References fLastSequenceName.

◆ SetParameter() [1/2]

void QOptions::SetParameter ( const std::string &  n,
const QVdt value,
const bool  isDefault = false 
)
private

◆ SetParameter() [2/2]

void QOptions::SetParameter ( const std::string &  seq,
const std::string &  mod,
size_t  occ,
const std::string &  par,
const QVdt p,
const bool  isDefault = false 
)
private

Friends And Related Function Documentation

◆ QBaseModule

friend class QBaseModule
friend

Definition at line 97 of file QOptions.hh.

◆ QDriver

friend class QDriver
friend

Definition at line 101 of file QOptions.hh.

◆ QMessageHandler

friend class QMessageHandler
friend

Definition at line 99 of file QOptions.hh.

◆ QModuleFactory

friend class QModuleFactory
friend

Definition at line 98 of file QOptions.hh.

◆ QSequence

friend class QSequence
friend

Definition at line 100 of file QOptions.hh.

Member Data Documentation

◆ fFirstSequenceName

std::string QOptions::fFirstSequenceName
private

Definition at line 94 of file QOptions.hh.

Referenced by SetFirstSequence().

◆ fLastSequenceName

std::string QOptions::fLastSequenceName
private

Definition at line 95 of file QOptions.hh.

Referenced by SetLastSequence().

◆ fParams

std::map< std::string, ParamInfo > QOptions::fParams
private

Definition at line 93 of file QOptions.hh.

◆ fUserParams

std::map< std::string, QVdt > QOptions::fUserParams
private

Definition at line 92 of file QOptions.hh.


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