GRINS-0.8.0
List of all members | Public Member Functions | Protected Member Functions | Private Member Functions
GRINS::SolverFactoryAbstract Class Referenceabstract

#include <solver_factory_abstract.h>

Inheritance diagram for GRINS::SolverFactoryAbstract:
Inheritance graph
[legend]
Collaboration diagram for GRINS::SolverFactoryAbstract:
Collaboration graph
[legend]

Public Member Functions

 SolverFactoryAbstract (const std::string &bc_type_name)
 
virtual ~SolverFactoryAbstract ()=0
 
- Public Member Functions inherited from GRINS::FactoryWithGetPot< Solver >
 FactoryWithGetPot (const std::string &name)
 
 ~FactoryWithGetPot ()
 
- Public Member Functions inherited from GRINS::FactoryAbstract< Solver >
virtual ~FactoryAbstract ()
 

Protected Member Functions

virtual libMesh::UniquePtr< Solverbuild_solver (const GetPot &input)=0
 
- Protected Member Functions inherited from GRINS::FactoryAbstract< Solver >
 FactoryAbstract (const std::string &name)
 Constructor is protected. Use the build() method to construct Base objects. More...
 

Private Member Functions

virtual libMesh::UniquePtr< Solvercreate ()
 Subclasses implement the actual construction of the Base object in create(). More...
 
 SolverFactoryAbstract ()
 

Additional Inherited Members

- Static Public Member Functions inherited from GRINS::FactoryWithGetPot< Solver >
static void set_getpot (const GetPot &input)
 
- Static Public Member Functions inherited from GRINS::FactoryAbstract< Solver >
static libMesh::UniquePtr< Solverbuild (const std::string &name)
 Use this method to build objects of type Base. More...
 
- Static Protected Member Functions inherited from GRINS::FactoryAbstract< Solver >
static FactoryAbstract< Solver > & get_factory (const std::string &name)
 Helper method that looks up the factory and returns it if present, or error if it's not. More...
 
static DerivedType & get_factory_subclass (const std::string &name)
 Like get_factory, but will downcast to DerivedType. More...
 
static std::map< std::string, FactoryAbstract< Solver > * > & factory_map ()
 
- Static Protected Attributes inherited from GRINS::FactoryWithGetPot< Solver >
static const GetPot * _input
 We store only a raw pointer here because we can't make a copy. More...
 

Detailed Description

Definition at line 38 of file solver_factory_abstract.h.

Constructor & Destructor Documentation

GRINS::SolverFactoryAbstract::SolverFactoryAbstract ( const std::string &  bc_type_name)
inline

Definition at line 41 of file solver_factory_abstract.h.

42  : FactoryWithGetPot<Solver>(bc_type_name)
43  {}
GRINS::SolverFactoryAbstract::~SolverFactoryAbstract ( )
inlinepure virtual

Definition at line 59 of file solver_factory_abstract.h.

59 {}
GRINS::SolverFactoryAbstract::SolverFactoryAbstract ( )
private

Member Function Documentation

virtual libMesh::UniquePtr<Solver> GRINS::SolverFactoryAbstract::build_solver ( const GetPot &  input)
protectedpure virtual

Implemented in GRINS::SolverFactoryBasic< DerivedSolver >.

Referenced by create().

libMesh::UniquePtr< Solver > GRINS::SolverFactoryAbstract::create ( )
privatevirtual

Subclasses implement the actual construction of the Base object in create().

Implements GRINS::FactoryAbstract< Solver >.

Definition at line 30 of file solver_factory_abstract.C.

References GRINS::FactoryWithGetPot< Solver >::_input, and build_solver().

31  {
32  if( !this->_input )
33  libmesh_error_msg("ERROR: must call set_getpot() before building boundary condition!");
34 
35  return this->build_solver(*(this->_input));
36  }
static const GetPot * _input
We store only a raw pointer here because we can't make a copy.
virtual libMesh::UniquePtr< Solver > build_solver(const GetPot &input)=0

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

Generated on Tue Dec 19 2017 12:47:32 for GRINS-0.8.0 by  doxygen 1.8.9.1