UFO
src/ufo/Locations.h
Go to the documentation of this file.
1
/*
2
* (C) Copyright 2017 UCAR
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
*/
7
8
#ifndef UFO_LOCATIONS_H_
9
#define UFO_LOCATIONS_H_
10
11
#include <ostream>
12
#include <string>
13
14
#include "eckit/mpi/Comm.h"
15
#include "oops/util/DateTime.h"
16
#include "oops/util/ObjectCounter.h"
17
#include "oops/util/Printable.h"
18
19
#include "ioda/ObsSpace.h"
20
21
#include "
ufo/Locations.interface.h
"
22
23
namespace
eckit
{
24
class
Configuration;
25
}
26
27
namespace
ufo
{
28
29
/// Locations class to handle locations for UFO.
30
31
class
Locations
:
public
util::Printable,
32
private
util::ObjectCounter<Locations> {
33
public
:
34
static
const
std::string
classname
() {
return
"ufo::Locations"
;}
35
36
explicit
Locations
(
const
eckit::mpi::Comm &);
37
Locations
(
const
ioda::ObsSpace &,
const
util::DateTime &,
const
util::DateTime &);
38
Locations
(
const
eckit::Configuration &,
const
eckit::mpi::Comm &);
39
explicit
Locations
(
const
ufo::Locations
&);
40
~Locations
();
41
42
Locations
&
operator+=
(
const
Locations
&);
43
44
int
nobs
()
const
;
45
int
toFortran
()
const
{
return
keyLoc_
;}
46
const
eckit::mpi::Comm &
getComm
()
const
{
return
comm_
;}
47
48
private
:
49
void
print
(std::ostream & os)
const
;
50
F90locs
keyLoc_
;
51
const
eckit::mpi::Comm &
comm_
;
52
};
53
54
}
// namespace ufo
55
56
#endif // UFO_LOCATIONS_H_
ufo::Locations
Locations class to handle locations for UFO.
Definition:
src/ufo/Locations.h:32
ufo::Locations::operator+=
Locations & operator+=(const Locations &)
Definition:
Locations.cc:83
ufo::Locations::keyLoc_
F90locs keyLoc_
Definition:
src/ufo/Locations.h:50
ufo
Definition:
RunCRTM.h:27
eckit
Forward declarations.
Definition:
ObsAtmSfcInterp.h:20
ufo::Locations::getComm
const eckit::mpi::Comm & getComm() const
Definition:
src/ufo/Locations.h:46
ufo::Locations::~Locations
~Locations()
Definition:
Locations.cc:91
ufo::Locations::Locations
Locations(const eckit::mpi::Comm &)
Definition:
Locations.cc:27
ufo::Locations::nobs
int nobs() const
Definition:
Locations.cc:97
ufo::Locations::classname
static const std::string classname()
Definition:
src/ufo/Locations.h:34
ufo::Locations::print
void print(std::ostream &os) const
Definition:
Locations.cc:105
ufo::F90locs
int F90locs
Definition:
Fortran.h:14
ufo::Locations::toFortran
int toFortran() const
Definition:
src/ufo/Locations.h:45
ufo::Locations::comm_
const eckit::mpi::Comm & comm_
Definition:
src/ufo/Locations.h:51
Locations.interface.h
fv3-bundle
ufo
src
ufo
Locations.h
Generated on Sat Oct 24 2020 19:14:55 for UFO by
1.8.18