ifw-core 7.0.0
 
Loading...
Searching...
No Matches
ifw::core::utils::file::ParameterFile Class Reference

Class to handle a set of parameters. More...

#include <parameterFile.hpp>

Inheritance diagram for ifw::core::utils::file::ParameterFile:
ifw::core::utils::param::ParameterSet ifw::core::utils::file::Yaml

Public Member Functions

 ParameterFile ()
 
 ParameterFile (const ParameterFile &source)
 Copy constructor.
 
 ~ParameterFile ()
 
virtual void Load (const std::string &filename, const bool merge=false)
 Load a file containing parameters.
 
virtual void LoadUser (const std::string &filename, const bool merge=false)
 
const std::string & GetProcFile () const
 Return reference to file being processed (loaded).
 
ParameterFileoperator= (const ParameterFile &source)
 Assignment operator.
 
- Public Member Functions inherited from ifw::core::utils::param::ParameterSet
 ParameterSet ()
 
 ParameterSet (const ParameterSet &source)
 Copy constructor.
 
 ~ParameterSet ()
 
ParameterSetClear ()
 Clear the object.
 
void Store (const std::string &par_name, const std::string &value, const std::string &comment="")
 Store a parameter name, value and possibly comment in the object.
 
std::string GetValue (const std::string &par_name, const bool exception=false) const
 Return value for the referenced parameter as a string.
 
template<class TYPE>
bool GetValue (const std::string &name, TYPE &value, const bool exception=false) const
 Return value for the referenced parameter as its native data type.
 
const ifw::core::utils::param::ParameterGetPar (const std::string &par_name) const
 Get reference to parameter object, referenced by its name.
 
bool HasPar (const std::string &par_name) const
 Returns true if parameter is defined.
 
bool HasPar (const std::string &par_name, ifw::core::utils::param::Parameter &parameter) const
 Returns true if parameter defined, copies parameter object to object provided.
 
bool HasPar (const std::string &par_name, std::string &value) const
 Returns true if parameter defined and copies value into "value" parameter.
 
template<class TYPE>
bool HasPar (const std::string &par_name, TYPE &value) const
 Return true if parameter defined, sets the value as the native value.
 
uint32_t Scan (const std::string &filter_reg_exp, std::vector< ifw::core::utils::param::Parameter > &matches) const
 Scans through the parameter object namespace and creates list of matching parameters.
 
std::string ToString (const std::string &filter_reg_exp="") const
 Prints out contents of object, applying regular expression filtering, if specified.
 
std::vector< std::string > ParNames () const
 Returns list of parameter names.
 
const std::map< std::string, ifw::core::utils::param::Parameter > & GetParameterMap () const
 Return reference to the internal map with the names/parameter objects.
 
void Merge (const ParameterSet &source_set)
 Merge the parameters of the source into this instance.
 
ParameterSetoperator= (const ParameterSet &source)
 Assignment operator.
 

Protected Member Functions

void _Copy (const ParameterFile &source)
 
- Protected Member Functions inherited from ifw::core::utils::param::ParameterSet
void _Copy (const ParameterSet &source)
 

Protected Attributes

std::string m_proc_file
 
std::vector< std::string > m_loaded_files
 
- Protected Attributes inherited from ifw::core::utils::param::ParameterSet
std::map< std::string, ifw::core::utils::param::Parameterm_par_map
 

Additional Inherited Members

- Static Public Member Functions inherited from ifw::core::utils::param::ParameterSet
static std::string ToString (std::vector< ifw::core::utils::param::Parameter > &par_list)
 Create an ASCII print out of the parameters in the list.
 

Detailed Description

Class to handle a set of parameters.

Constructor & Destructor Documentation

◆ ParameterFile() [1/2]

ifw::core::utils::file::ParameterFile::ParameterFile ( )

◆ ParameterFile() [2/2]

ifw::core::utils::file::ParameterFile::ParameterFile ( const ParameterFile & source)

Copy constructor.

◆ ~ParameterFile()

ifw::core::utils::file::ParameterFile::~ParameterFile ( )

Member Function Documentation

◆ _Copy()

void ifw::core::utils::file::ParameterFile::_Copy ( const ParameterFile & source)
protected

◆ GetProcFile()

const std::string & ifw::core::utils::file::ParameterFile::GetProcFile ( ) const

Return reference to file being processed (loaded).

◆ Load()

void ifw::core::utils::file::ParameterFile::Load ( const std::string & filename,
const bool merge = false )
virtual

Load a file containing parameters.

◆ LoadUser()

void ifw::core::utils::file::ParameterFile::LoadUser ( const std::string & filename,
const bool merge = false )
virtual

Method to load the parameters from a simple format file containing parameters. The following rules are applied while parsing the file:

  • Lines initiated with "#" are ignored.
  • Lines containing <parameter>: "<value>" are split and added in the internal map. The value shall be contained between ""'s.
  • Inline comments are allowed, i.e.: "<parameter>: "

" # <comment".

Reimplemented in ifw::core::utils::file::Yaml.

◆ operator=()

ParameterFile & ifw::core::utils::file::ParameterFile::operator= ( const ParameterFile & source)

Assignment operator.

Member Data Documentation

◆ m_loaded_files

std::vector<std::string> ifw::core::utils::file::ParameterFile::m_loaded_files
protected

◆ m_proc_file

std::string ifw::core::utils::file::ParameterFile::m_proc_file
protected

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