LAMA
|
#include <CriteriaCreator.hpp>
Public Types | |
typedef qi::rule < std::string::const_iterator, CriterionPtr(), ascii::space_type > | RuleType |
typedef qi::symbols< char, CriterionPtr > | CriteriaInstanceMap |
Public Member Functions | |
const CriteriaInstanceMap & | getCriteriaInstanceMap () |
Returns the criteria instance map that solver rules can bind these instances. | |
Static Public Member Functions | |
static CriteriaCreator & | getInstance () |
Returns the lazy created singleton instance of the boolean condition creator. | |
static RuleType & | getSolverBoundRule () |
static qi::rule < std::string::const_iterator, void(), ascii::space_type > & | getIndependentRule () |
Protected Member Functions | |
LAMA_LOG_DECL_STATIC_LOGGER (logger) | |
Private Member Functions | |
CriteriaCreator () | |
void | addCriteria (const std::string &name, CriterionPtr criteria) |
Add/register a stopping criteria instance with a given name/id to the Factory. | |
Private Attributes | |
RuleType | mRLeaf |
RuleType | mRNode |
RuleType | mRSolverBoundCriteria |
qi::rule < std::string::const_iterator, void(), ascii::space_type > | mRIndependentCriteria |
qi::rule < std::string::const_iterator, IterationCount *(), ascii::space_type > | mRIterationCount |
qi::rule < std::string::const_iterator, ResidualThreshold *(), ascii::space_type > | mRResidualThreshold |
qi::rule < std::string::const_iterator, ResidualStagnation *(), ascii::space_type > | mRResidualStagnation |
qi::rule < std::string::const_iterator, NormPtr(), ascii::space_type > | mRNormType |
CriteriaInstanceMap | mCriteriaInstanceMap |
qi::symbols< char, ResidualThreshold::ResidualThresholdCheckMode > | mResidualCheckMode |
qi::symbols< char, Criterion::BooleanOperator > | mLogicalConnective |
qi::rule < std::string::const_iterator, std::string(), ascii::space_type > | mRId |
Rule to parse a variable name i.e. | |
qi::rule < std::string::const_iterator, Scalar(), ascii::space_type > | mRScalar |
typedef qi::symbols<char, CriterionPtr > lama::CriteriaCreator::CriteriaInstanceMap |
typedef qi::rule<std::string::const_iterator, CriterionPtr(), ascii::space_type> lama::CriteriaCreator::RuleType |
lama::CriteriaCreator::CriteriaCreator | ( | ) | [private] |
References lama::ResidualThreshold::Absolute, addCriteria(), lama::Criterion::AND, mCriteriaInstanceMap, mLogicalConnective, mResidualCheckMode, lama::Creator::mRId, mRIndependentCriteria, mRIterationCount, mRLeaf, mRNode, mRNormType, mRResidualStagnation, mRResidualThreshold, lama::Creator::mRScalar, mRSolverBoundCriteria, lama::Criterion::OR, and lama::ResidualThreshold::Relative.
Referenced by getInstance().
void lama::CriteriaCreator::addCriteria | ( | const std::string & | name, |
CriterionPtr | criteria | ||
) | [private] |
Add/register a stopping criteria instance with a given name/id to the Factory.
[in] | name | The name to identify the instance |
[in] | criteria | The instance that will be registered |
References LAMA_ASSERT, and mCriteriaInstanceMap.
Referenced by CriteriaCreator().
Returns the criteria instance map that solver rules can bind these instances.
References mCriteriaInstanceMap.
qi::rule< std::string::const_iterator, void(), ascii::space_type > & lama::CriteriaCreator::getIndependentRule | ( | ) | [static] |
References getInstance(), and mRIndependentCriteria.
Referenced by lama::SolverConfigGrammar::SolverConfigGrammar().
CriteriaCreator & lama::CriteriaCreator::getInstance | ( | ) | [static] |
Returns the lazy created singleton instance of the boolean condition creator.
References CriteriaCreator().
Referenced by getIndependentRule(), and getSolverBoundRule().
References getInstance(), and mRSolverBoundCriteria.
Referenced by lama::IterativeSolverCreator::IterativeSolverCreator().
lama::CriteriaCreator::LAMA_LOG_DECL_STATIC_LOGGER | ( | logger | ) | [protected] |
Reimplemented from lama::Creator.
Referenced by addCriteria(), CriteriaCreator(), and getCriteriaInstanceMap().
qi::symbols<char, Criterion::BooleanOperator> lama::CriteriaCreator::mLogicalConnective [private] |
Referenced by CriteriaCreator().
qi::symbols<char, ResidualThreshold::ResidualThresholdCheckMode> lama::CriteriaCreator::mResidualCheckMode [private] |
Referenced by CriteriaCreator().
qi::rule<std::string::const_iterator, std::string(), ascii::space_type> lama::Creator::mRId [protected, inherited] |
Rule to parse a variable name i.e.
the ID of a Solver
Referenced by lama::CGCreator::CGCreator(), lama::Creator::Creator(), CriteriaCreator(), lama::DefaultJacobiCreator::DefaultJacobiCreator(), lama::GMRESCreator::GMRESCreator(), lama::InverseSolverCreator::InverseSolverCreator(), lama::LUSolverCreator::LUSolverCreator(), lama::SimpleAMGCreator::SimpleAMGCreator(), lama::SolverCreator::SolverCreator(), lama::SORCreator::SORCreator(), lama::SpecializedJacobiCreator::SpecializedJacobiCreator(), and lama::SpecialLUSolverCreator::SpecialLUSolverCreator().
qi::rule<std::string::const_iterator, void(), ascii::space_type> lama::CriteriaCreator::mRIndependentCriteria [private] |
Referenced by CriteriaCreator(), and getIndependentRule().
qi::rule<std::string::const_iterator, IterationCount*(), ascii::space_type> lama::CriteriaCreator::mRIterationCount [private] |
Referenced by CriteriaCreator().
RuleType lama::CriteriaCreator::mRLeaf [private] |
Referenced by CriteriaCreator().
RuleType lama::CriteriaCreator::mRNode [private] |
Referenced by CriteriaCreator().
qi::rule<std::string::const_iterator, NormPtr(), ascii::space_type> lama::CriteriaCreator::mRNormType [private] |
Referenced by CriteriaCreator().
qi::rule<std::string::const_iterator, ResidualStagnation*(), ascii::space_type> lama::CriteriaCreator::mRResidualStagnation [private] |
Referenced by CriteriaCreator().
qi::rule<std::string::const_iterator, ResidualThreshold*(), ascii::space_type> lama::CriteriaCreator::mRResidualThreshold [private] |
Referenced by CriteriaCreator().
qi::rule<std::string::const_iterator, Scalar(), ascii::space_type> lama::Creator::mRScalar [protected, inherited] |
Referenced by lama::Creator::Creator(), CriteriaCreator(), and lama::OmegaSolverCreator::OmegaSolverCreator().
Referenced by CriteriaCreator(), and getSolverBoundRule().