FV3 Bundle
instantiateCovarFactory.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2009-2016 ECMWF.
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  * In applying this licence, ECMWF does not waive the privileges and immunities
7  * granted to it by virtue of its status as an intergovernmental organisation nor
8  * does it submit to any jurisdiction.
9  */
10 
11 #ifndef OOPS_BASE_INSTANTIATECOVARFACTORY_H_
12 #define OOPS_BASE_INSTANTIATECOVARFACTORY_H_
13 
20 
21 namespace oops {
22 
23 template <typename MODEL> void instantiateCovarFactory() {
24  static CovarMaker<MODEL, HybridCovariance<MODEL> > makerHybrid_("hybrid");
25  static CovarMaker<MODEL, EnsembleCovariance<MODEL> > makerEnsemble_("ensemble");
26  static CovarMaker<MODEL, ErrorCovariance<MODEL> > makerModel_(MODEL::nameCovar());
27  static CovarMaker<MODEL, ErrorCovarianceBUMP<MODEL> > makerModelBUMP_("BUMP");
28 
29  instantiateLocalizationFactory<MODEL>();
30 }
31 
32 } // namespace oops
33 
34 #endif // OOPS_BASE_INSTANTIATECOVARFACTORY_H_
The namespace for the main oops code.
void instantiateCovarFactory()