#include <parameters.h>
typedef std::map< std::string, Value * >::iterator iterator
typedef std::map< std::string, Value * >::const_iterator const_iterator
Parameters ()
Parameters (const Parameters &)
~Parameters ()
Parameters & operator= (const Parameters &)
template<typename T > bool have_parameter (const std::string &) const
template<typename T > const T & get (const std::string &) const
template<typename T > T & set (const std::string &)
void remove (const std::string &)
unsigned int n_parameters () const
template<typename T > unsigned int n_parameters () const
void clear ()
void print (std::ostream &os=std::cout) const
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
std::map< std::string, Value * > _values
This class provides the ability to map between arbitrary, user-defined strings and several data types. This can be used to provide arbitrary user-specified options.
Author:
Date:
Version:
Revision:
Definition at line 49 of file parameters.h.
Definition at line 207 of file parameters.h.
Definition at line 202 of file parameters.h.
Definition at line 56 of file parameters.h.
{};
Definition at line 311 of file parameters.h.
{
*this = p;
}
Definition at line 319 of file parameters.h.
References clear().
{
this->clear ();
}
Definition at line 450 of file parameters.h.
References _values.
{
return _values.begin();
}
Definition at line 456 of file parameters.h.
References _values.
{
return _values.begin();
}
Definition at line 281 of file parameters.h.
References _values.
Referenced by EquationSystems::clear(), operator=(), and ~Parameters().
{ // before its first use (for some compilers)
while (!_values.empty())
{
Parameters::iterator it = _values.begin();
delete it->second;
it->second = NULL;
_values.erase(it);
}
}
Definition at line 462 of file parameters.h.
References _values.
{
return _values.end();
}
Definition at line 468 of file parameters.h.
References _values.
{
return _values.end();
}
Definition at line 375 of file parameters.h.
References _values, and Quality::name().
Referenced by LinearImplicitSystem::adjoint_solve(), FrequencySystem::clear_all(), FEComputeData::init(), FrequencySystem::init_data(), FrequencySystem::n_frequencies(), FrequencySystem::set_current_frequency(), NonlinearImplicitSystem::set_solver_parameters(), LinearImplicitSystem::solve(), FrequencySystem::solve(), and EigenSystem::solve().
{
if (!this->have_parameter<T>(name))
{
std::cerr << 'ERROR: no '
<< typeid(T).name()
<< ' parameter named ''
<< name << '':' << std::endl
<< *this;
libmesh_error();
}
Parameters::const_iterator it = _values.find(name);
libmesh_assert (it != _values.end());
libmesh_assert (it->second != NULL);
libmesh_assert (dynamic_cast<const Parameter<T>*>(it->second) != NULL);
return dynamic_cast<Parameter<T>*>(it->second)->get();
}
Definition at line 360 of file parameters.h.
References _values.
Referenced by FrequencySystem::clear_all(), FEComputeData::init(), FrequencySystem::init_data(), and EigenSystem::solve().
{
Parameters::const_iterator it = _values.find(name);
if (it != _values.end())
if (dynamic_cast<const Parameter<T>*>(it->second) != NULL)
return true;
return false;
}
Definition at line 104 of file parameters.h.
References _values.
{ return _values.size(); }
Definition at line 297 of file parameters.h.
References _values, and clear().
{
this->clear();
for (Parameters::const_iterator it = rhs._values.begin();
it != rhs._values.end(); ++it)
_values[it->first] = it->second->clone();
return *this;
}
Definition at line 327 of file parameters.h.
References _values.
Referenced by operator<<().
{
Parameters::const_iterator it = _values.begin();
os << 'Name Type Value
<< '---------------------;
while (it != _values.end())
{
os << ' ' << it->first
<< ' ' << it->second->type()
<< ' '; it->second->print(os);
os << ';
++it;
}
}
Definition at line 418 of file parameters.h.
References _values.
Referenced by FrequencySystem::clear_all().
{
Parameters::iterator it = _values.find(name);
if (it != _values.end())
{
delete it->second;
it->second = NULL;
_values.erase(it);
}
}
Definition at line 401 of file parameters.h.
References _values, Quality::name(), and Parameters::Parameter< T >::set().
Referenced by NewmarkSystem::clear(), EquationSystems::EquationSystems(), NewmarkSystem::NewmarkSystem(), NonlinearImplicitSystem::NonlinearImplicitSystem(), FrequencySystem::set_current_frequency(), FrequencySystem::set_frequencies(), FrequencySystem::set_frequencies_by_range(), FrequencySystem::set_frequencies_by_steps(), and NewmarkSystem::set_newmark_parameters().
{
Parameter<T>* param = NULL;
if (!this->have_parameter<T>(name))
_values[name] = new Parameter<T>;
param = dynamic_cast<Parameter<T>*>(_values[name]);
libmesh_assert (param != NULL);
return param->set();
}
Definition at line 234 of file parameters.h.
Referenced by begin(), clear(), end(), get(), have_parameter(), n_parameters(), operator=(), print(), remove(), and set().
Generated automatically by Doxygen for libMesh from the source code.