|
IODA Bundle
|
Covariance Factory. More...
#include <ModelSpaceCovarianceBase.h>
Public Member Functions | |
| virtual | ~CovarianceFactory ()=default |
Static Public Member Functions | |
| static ModelSpaceCovarianceBase< MODEL > * | create (const ModelSpaceCovarianceParametersBase< MODEL > &, const Geometry_ &, const Variables &, const State_ &, const State_ &) |
| Create and return a new covariance model. More... | |
| static ModelSpaceCovarianceBase< MODEL > * | create (const eckit::Configuration &, const Geometry_ &, const Variables &, const State_ &, const State_ &) |
| Create and return a new covariance model. More... | |
| static std::unique_ptr< ModelSpaceCovarianceParametersBase< MODEL > > | createParameters (const std::string &covarianceModel) |
| Create and return an instance of the subclass of ModelSpaceCovarianceParametersBase storing parameters of the specified covariance model. More... | |
| static std::vector< std::string > | getMakerNames () |
| Return the names of all covariance models that can be created by one of the registered makers. More... | |
Protected Member Functions | |
| CovarianceFactory (const std::string &name) | |
Register a maker able to create covariance models of type name. More... | |
Private Types | |
| typedef Geometry< MODEL > | Geometry_ |
| typedef State< MODEL > | State_ |
Private Member Functions | |
| virtual ModelSpaceCovarianceBase< MODEL > * | make (const ModelSpaceCovarianceParametersBase< MODEL > &, const Geometry_ &, const Variables &, const State_ &, const State_ &)=0 |
| virtual std::unique_ptr< ModelSpaceCovarianceParametersBase< MODEL > > | makeParameters () const =0 |
Static Private Member Functions | |
| static std::map< std::string, CovarianceFactory< MODEL > * > & | getMakers () |
Covariance Factory.
Definition at line 138 of file ModelSpaceCovarianceBase.h.
|
private |
Definition at line 139 of file ModelSpaceCovarianceBase.h.
|
private |
Definition at line 140 of file ModelSpaceCovarianceBase.h.
|
virtualdefault |
|
explicitprotected |
Register a maker able to create covariance models of type name.
Definition at line 222 of file ModelSpaceCovarianceBase.h.
|
static |
Create and return a new covariance model.
Deprecated overload taking a Configuration instead of a ModelSpaceCovarianceParametersBase.
Definition at line 272 of file ModelSpaceCovarianceBase.h.
|
static |
Create and return a new covariance model.
The covariance model is determined by the covarianceModel attribute of parameters. parameters must be an instance of the subclass of ModelSpaceCovarianceParametersBase associated with that covariance model, otherwise an exception will be thrown.
Definition at line 232 of file ModelSpaceCovarianceBase.h.
|
static |
Create and return an instance of the subclass of ModelSpaceCovarianceParametersBase storing parameters of the specified covariance model.
Definition at line 286 of file ModelSpaceCovarianceBase.h.
|
inlinestatic |
Return the names of all covariance models that can be created by one of the registered makers.
Definition at line 166 of file ModelSpaceCovarianceBase.h.
|
inlinestaticprivate |
Definition at line 183 of file ModelSpaceCovarianceBase.h.
|
privatepure virtual |
Implemented in oops::CovarMaker< MODEL, COVAR >.
|
privatepure virtual |
Implemented in oops::CovarMaker< MODEL, COVAR >.