UFO
ROobserror.h
Go to the documentation of this file.
1
/*
2
* (C) Copyright 2017-2018 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_GNSSRO_QC_ROOBSERROR_H_
9
#define UFO_GNSSRO_QC_ROOBSERROR_H_
10
11
#include <memory>
12
#include <ostream>
13
#include <string>
14
#include <vector>
15
16
#include "ioda/ObsDataVector.h"
17
#include "oops/util/ObjectCounter.h"
18
#include "
ufo/filters/FilterBase.h
"
19
#include "
ROobserror.interface.h
"
20
21
namespace
eckit
{
22
class
Configuration;
23
}
24
25
namespace
ioda
{
26
template
<
typename
DATATYPE>
class
ObsDataVector;
27
class
ObsSpace;
28
}
29
30
namespace
ufo
{
31
32
/// ROobserror: calculate observational errors
33
34
class
ROobserror
:
public
FilterBase
,
35
private
util::ObjectCounter<ROobserror> {
36
public
:
37
static
const
std::string
classname
() {
return
"ufo::ROobserror"
;}
38
39
ROobserror
(ioda::ObsSpace &,
const
eckit::Configuration &,
40
std::shared_ptr<
ioda::ObsDataVector<int>
>,
41
std::shared_ptr<
ioda::ObsDataVector<float>
>);
42
~ROobserror
();
43
44
private
:
45
void
print
(std::ostream &)
const override
;
46
void
applyFilter
(
const
std::vector<bool> &,
const
Variables
&,
47
std::vector<std::vector<bool>> &)
const override
;
48
int
qcFlag
()
const override
{
return
76;}
49
50
F90roerr
key_
;
51
};
52
53
}
// namespace ufo
54
55
#endif // UFO_GNSSRO_QC_ROOBSERROR_H_
ufo::F90roerr
int F90roerr
Definition:
ROobserror.interface.h:24
FilterBase.h
ufo::Variables
Definition:
src/ufo/filters/Variables.h:24
ufo::ROobserror::classname
static const std::string classname()
Definition:
ROobserror.h:37
ufo::ROobserror::key_
F90roerr key_
Definition:
ROobserror.h:50
ufo::FilterBase
FilterBase: Base class for UFO QC filters.
Definition:
FilterBase.h:42
ufo::ROobserror::ROobserror
ROobserror(ioda::ObsSpace &, const eckit::Configuration &, std::shared_ptr< ioda::ObsDataVector< int > >, std::shared_ptr< ioda::ObsDataVector< float > >)
Definition:
ROobserror.cc:24
ROobserror.interface.h
ioda
Definition:
ObsAtmSfcInterp.h:24
ufo
Definition:
RunCRTM.h:27
ufo::ROobserror::qcFlag
int qcFlag() const override
Definition:
ROobserror.h:48
eckit
Forward declarations.
Definition:
ObsAtmSfcInterp.h:20
ufo::ROobserror
ROobserror: calculate observational errors.
Definition:
ROobserror.h:35
ioda::ObsDataVector< int >
ufo::ROobserror::~ROobserror
~ROobserror()
Definition:
ROobserror.cc:39
ufo::ROobserror::print
void print(std::ostream &) const override
Definition:
ROobserror.cc:59
ufo::ROobserror::applyFilter
void applyFilter(const std::vector< bool > &, const Variables &, std::vector< std::vector< bool >> &) const override
Definition:
ROobserror.cc:46
fv3-bundle
ufo
src
ufo
gnssro
QC
ROobserror.h
Generated on Sat Oct 24 2020 19:14:56 for UFO by
1.8.18