OOPS
|
VariableChange factory. More...
#include <VariableChangeBase.h>
Public Member Functions | |
virtual | ~VariableChangeFactory ()=default |
Static Public Member Functions | |
static VariableChangeBase< MODEL > * | create (const VariableChangeParametersBase &, const Geometry_ &) |
Create and return a new variable change. More... | |
static VariableChangeBase< MODEL > * | create (const eckit::Configuration &, const Geometry_ &) |
Create and return a new variable change. More... | |
static std::unique_ptr< VariableChangeParametersBase > | createParameters (const std::string &name) |
Create and return an instance of the subclass of VariableChangeParametersBase storing parameters of variable changes of the specified type. More... | |
static std::vector< std::string > | getMakerNames () |
Return the names of all variable changes that can be created by one of the registered makers. More... | |
Protected Member Functions | |
VariableChangeFactory (const std::string &) | |
Register a maker able to create variable changes of type name . More... | |
Private Types | |
typedef Geometry< MODEL > | Geometry_ |
Private Member Functions | |
virtual VariableChangeBase< MODEL > * | make (const VariableChangeParametersBase &, const Geometry_ &)=0 |
virtual std::unique_ptr< VariableChangeParametersBase > | makeParameters () const =0 |
Static Private Member Functions | |
static std::map< std::string, VariableChangeFactory< MODEL > * > & | getMakers () |
VariableChange factory.
Definition at line 75 of file VariableChangeBase.h.
|
private |
Definition at line 116 of file VariableChangeBase.h.
|
virtualdefault |
|
explicitprotected |
Register a maker able to create variable changes of type name
.
Definition at line 190 of file VariableChangeBase.h.
|
static |
Create and return a new variable change.
Deprecated overload taking a Configuration instead of a VariableChangeParametersBase.
Definition at line 219 of file VariableChangeBase.h.
|
static |
Create and return a new variable change.
The type of the variable change is determined by the variable change
attribute of parameters
. parameters
must be an instance of the subclass of VariableChangeParametersBase associated with that variable change type, otherwise an exception will be thrown.
Definition at line 200 of file VariableChangeBase.h.
|
static |
Create and return an instance of the subclass of VariableChangeParametersBase storing parameters of variable changes of the specified type.
Definition at line 229 of file VariableChangeBase.h.
|
inlinestatic |
Return the names of all variable changes that can be created by one of the registered makers.
Definition at line 139 of file VariableChangeBase.h.
|
inlinestaticprivate |
|
privatepure virtual |
Implemented in oops::VariableChangeMaker< MODEL, T >.
|
privatepure virtual |
Implemented in oops::VariableChangeMaker< MODEL, T >.