Nektar++
Public Member Functions | Public Attributes | List of all members
Nektar::FieldUtils::ConfigOption Struct Reference

Represents a command-line configuration option. More...

#include <Module.h>

Public Member Functions

 ConfigOption (bool isBool, std::string defValue, std::string desc)
 Construct a new configuration option. More...
 
 ConfigOption ()
 
template<typename T >
as () const
 Re-interpret the value stored in #value as some type using boost::lexical_cast. More...
 

Public Attributes

bool m_isBool
 True if the configuration option is a boolean (thus does not need additional arguments). More...
 
bool m_beenSet
 True if the configuration option has been set at command line. If false, the default value will be put into #value. More...
 
std::string m_value
 The value of the configuration option. More...
 
std::string m_defValue
 Default value of the configuration option. More...
 
std::string m_desc
 Description of the configuration option. More...
 

Detailed Description

Represents a command-line configuration option.

Definition at line 130 of file Module.h.

Constructor & Destructor Documentation

◆ ConfigOption() [1/2]

Nektar::FieldUtils::ConfigOption::ConfigOption ( bool  isBool,
std::string  defValue,
std::string  desc 
)
inline

Construct a new configuration option.

Parameters
isBoolTrue if the option is boolean type.
defValueDefault value of the option.
descDescription of the option.

Definition at line 139 of file Module.h.

140  : m_isBool(isBool), m_beenSet(false), m_value(), m_defValue(defValue),
141  m_desc(desc)
142  {
143  }
std::string m_value
The value of the configuration option.
Definition: Module.h:175
bool m_beenSet
True if the configuration option has been set at command line. If false, the default value will be pu...
Definition: Module.h:173
std::string m_defValue
Default value of the configuration option.
Definition: Module.h:177
std::string m_desc
Description of the configuration option.
Definition: Module.h:179
bool m_isBool
True if the configuration option is a boolean (thus does not need additional arguments).
Definition: Module.h:170

◆ ConfigOption() [2/2]

Nektar::FieldUtils::ConfigOption::ConfigOption ( )
inline

Definition at line 144 of file Module.h.

145  : m_isBool(false), m_beenSet(false), m_value(), m_defValue(), m_desc()
146  {
147  }

Member Function Documentation

◆ as()

template<typename T >
T Nektar::FieldUtils::ConfigOption::as ( ) const
inline

Re-interpret the value stored in #value as some type using boost::lexical_cast.

Definition at line 153 of file Module.h.

154  {
155  try
156  {
157  return boost::lexical_cast<T>(m_value);
158  }
159  catch (const std::exception &e)
160  {
161  std::cerr << "We are not able to cast m_value " << m_value << " to "
162  << typeid(T).name() << std::endl
163  << e.what() << std::endl;
164  abort();
165  }
166  }

References m_value, and CellMLToNektar.pycml::name.

Member Data Documentation

◆ m_beenSet

bool Nektar::FieldUtils::ConfigOption::m_beenSet

True if the configuration option has been set at command line. If false, the default value will be put into #value.

Definition at line 173 of file Module.h.

Referenced by Nektar::FieldUtils::Module::RegisterConfig().

◆ m_defValue

std::string Nektar::FieldUtils::ConfigOption::m_defValue

Default value of the configuration option.

Definition at line 177 of file Module.h.

◆ m_desc

std::string Nektar::FieldUtils::ConfigOption::m_desc

Description of the configuration option.

Definition at line 179 of file Module.h.

◆ m_isBool

bool Nektar::FieldUtils::ConfigOption::m_isBool

True if the configuration option is a boolean (thus does not need additional arguments).

Definition at line 170 of file Module.h.

◆ m_value

std::string Nektar::FieldUtils::ConfigOption::m_value

The value of the configuration option.

Definition at line 175 of file Module.h.

Referenced by as(), and Nektar::FieldUtils::Module::RegisterConfig().