8 #ifndef UFO_COMPOSITEOPER_OBSCOMPOSITE_H_
9 #define UFO_COMPOSITEOPER_OBSCOMPOSITE_H_
16 #include "oops/base/Variables.h"
17 #include "oops/util/ObjectCounter.h"
56 private util::ObjectCounter<ObsComposite> {
62 static const std::string
classname() {
return "ufo::ObsComposite";}
74 void print(std::ostream &)
const override;
77 const ioda::ObsSpace&
odb_;
GeoVaLs: geophysical values at locations.
A collection of observation operators used to simulate different variables.
const oops::Variables & requiredVars() const override
Operator input required from Model.
void simulateObs(const GeoVaLs &, ioda::ObsVector &, ObsDiagnostics &) const override
Obs Operator.
ObsCompositeParameters Parameters_
oops::Variables requiredVars_
std::vector< std::unique_ptr< ObsOperatorBase > > components_
const ioda::ObsSpace & odb_
static const std::string classname()
ObsComposite(const ioda::ObsSpace &, const Parameters_ &)
oops::Variables simulatedVars() const override
List of variables simulated by this operator.
void print(std::ostream &) const override
Configuration options recognized by the Composite operator.