FV3 Bundle
ObsHelpQG.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 QG_MODEL_OBSHELPQG_H_
12 #define QG_MODEL_OBSHELPQG_H_
13 
14 #include <string>
15 
16 #include <boost/noncopyable.hpp>
17 
18 #include "model/QgFortran.h"
19 #include "oops/util/ObjectCounter.h"
20 
21 // Forward declarations
22 namespace eckit {
23  class Configuration;
24 }
25 
26 namespace qg {
27 
28 /// Observation Data Handler for QG Model
29 
30 class ObsHelpQG : private boost::noncopyable,
31  private util::ObjectCounter<ObsHelpQG> {
32  public:
33  static const std::string classname() {return "qg::ObsHelpQG";}
34 
35  explicit ObsHelpQG(const eckit::Configuration &);
36  ~ObsHelpQG();
37 
38  void getdb(const std::string &, const std::string &, int & keyOvec) const;
39  void putdb(const std::string &, const std::string &, const int & keyOvec);
40 
41  F90locs locations(const std::string &, const util::DateTime &, const util::DateTime &) const;
42  void generateDistribution(const eckit::Configuration &, const std::string &,
43  const util::DateTime &, const util::DateTime &, unsigned int &);
44  int nobs(const std::string &) const;
45 
46  int & toFortran() {return keyHelp_;}
47  const int & toFortran() const {return keyHelp_;}
48 
49  private:
51 };
52 
53 } // namespace qg
54 
55 #endif // QG_MODEL_OBSHELPQG_H_
void generateDistribution(const eckit::Configuration &, const std::string &, const util::DateTime &, const util::DateTime &, unsigned int &)
Definition: ObsHelpQG.cc:65
F90locs locations(const std::string &, const util::DateTime &, const util::DateTime &) const
Definition: ObsHelpQG.cc:54
const int & toFortran() const
Definition: ObsHelpQG.h:47
int F90odb
Definition: QgFortran.h:50
Observation Data Handler for QG Model.
Definition: ObsHelpQG.h:30
void getdb(const std::string &, const std::string &, int &keyOvec) const
Definition: ObsHelpQG.cc:47
static const std::string classname()
Definition: ObsHelpQG.h:33
ObsHelpQG(const eckit::Configuration &)
Definition: ObsHelpQG.cc:25
void putdb(const std::string &, const std::string &, const int &keyOvec)
Definition: ObsHelpQG.cc:40
int F90locs
Definition: QgFortran.h:34
int nobs(const std::string &) const
Definition: ObsHelpQG.cc:89
F90odb keyHelp_
Definition: ObsHelpQG.h:50
The namespace for the qg model.
int & toFortran()
Definition: ObsHelpQG.h:46