7 #ifndef UFO_FILTERS_SATNAME_H_
8 #define UFO_FILTERS_SATNAME_H_
16 #include "oops/util/missingValues.h"
17 #include "oops/util/ObjectCounter.h"
18 #include "oops/util/parameters/OptionalParameter.h"
19 #include "oops/util/parameters/RequiredParameter.h"
28 template <
typename DATATYPE>
class ObsDataVector;
39 oops::RequiredParameter<std::string>
Satname{
"Sat name",
this};
40 oops::RequiredParameter<float>
Satnumber{
"Sat ID",
this};
48 oops::RequiredParameter<float>
minFrequency{
"min frequency",
this};
49 oops::RequiredParameter<float>
maxFrequency{
"max frequency",
this};
51 oops::RequiredParameter<std::string>
windChannel{
"wind channel",
this};
59 oops::RequiredParameter<int>
minSatID{
"min WMO Satellite id",
this};
60 oops::RequiredParameter<int>
maxSatID{
"max WMO Satellite id",
this};
62 "Satellite_comp", {},
this};
64 "Satellite_id", {},
this};
71 oops::Parameter<std::vector<SatIDRangeParameters>>
74 private util::ObjectCounter<SatName> {
79 static const std::string
classname() {
return "ufo::SatName";}
85 void print(std::ostream &)
const override;
87 std::vector<std::vector<bool>> &)
const override;
Base class for UFO QC filters.
Parameters shared by all filters having a default action (typically "reject").
oops::RequiredParameter< float > maxFrequency
oops::RequiredParameter< std::string > windChannel
oops::OptionalParameter< int > satobchannel
oops::RequiredParameter< float > minFrequency
oops::RequiredParameter< int > maxSatID
oops::Parameter< std::vector< FrequencyBandParameters > > Satellite_comp
oops::Parameter< std::vector< SatnameParameters > > Satellite_id
oops::RequiredParameter< int > minSatID
static const std::string classname()
void applyFilter(const std::vector< bool > &, const Variables &, std::vector< std::vector< bool >> &) const override
A filter that creates a string variable that makes it simpler to identify Atmospheric Motion Vector (...
int qcFlag() const override
SatName(ioda::ObsSpace &, const Parameters_ &, std::shared_ptr< ioda::ObsDataVector< int > >, std::shared_ptr< ioda::ObsDataVector< float > >)
void print(std::ostream &) const override
SatNameParameters Parameters_
oops::Parameter< std::vector< SatIDRangeParameters > > SatNameAssignments
oops::RequiredParameter< std::string > Satname
oops::RequiredParameter< float > Satnumber
static const std::string missing_value_string