8 #ifndef OOPS_INTERFACE_OBSCHECK_H_     9 #define OOPS_INTERFACE_OBSCHECK_H_    13 #include <boost/noncopyable.hpp>    14 #include <boost/scoped_ptr.hpp>    16 #include "eckit/config/LocalConfiguration.h"    21 #include "oops/util/dot_product.h"    22 #include "oops/util/Logger.h"    28 template <
typename MODEL>
    36   static const std::string 
classname() {
return "oops::ObsCheck";}
    50   const eckit::LocalConfiguration 
conf_;
    51   void print(std::ostream &) 
const override;
    52   boost::scoped_ptr<ObsCheck_> 
obsc_;
    57 template <
typename MODEL>
    59   Log::trace() << 
"ObsCheck<MODEL>::ObsCheck Configuration starting" << std::endl;
    60   util::Timer timer(
classname(), 
"ObsCheck");
    62   Log::trace() << 
"ObsCheck<MODEL>::ObsCheck Configuration done" << std::endl;
    67 template <
typename MODEL>
    69   Log::trace() << 
"ObsCheck<MODEL>::ObsCheck ObsSpace starting" << std::endl;
    70   util::Timer timer(
classname(), 
"ObsCheck");
    71   Log::trace() << 
"ObsCheck<MODEL>::ObsCheck ObsSpace done" << std::endl;
    76 template <
typename MODEL>
    78   Log::trace() << 
"ObsCheck<MODEL>::~ObsCheck starting" << std::endl;
    79   util::Timer timer(classname(), 
"~ObsCheck");
    81   Log::trace() << 
"ObsCheck<MODEL>::~ObsCheck done" << std::endl;
    86 template <
typename MODEL>
    89   Log::trace() << 
"ObsCheck<MODEL>::postFilter starting" << std::endl;
    90   util::Timer timer(classname(), 
"ObsCheck");
    92   Log::trace() << 
"ObsCheck<MODEL>::postFilter done" << std::endl;
    97 template <
typename MODEL>
    99   Log::trace() << 
"ObsCheck<MODEL>:: priorFilter starting" << std::endl;
   100   util::Timer timer(classname(), 
"ObsCheck");
   102   Log::trace() << 
"ObsCheck<MODEL>:: priorFilter done" << std::endl;
   107 template <
typename MODEL>
   109   os << 
"ObsCheck " << conf_;
   116 #endif  // OOPS_INTERFACE_OBSCHECK_H_ Base class for QC filters applied to observations. 
const GeoVaLs_ & geovals() const
Interfacing. 
const eckit::LocalConfiguration conf_
static const std::string classname()
const ObsCheck_ & obscheck() const
Interfacing. 
The namespace for the main oops code. 
ObsCheck(const ObsSpace_ &)
ObservationSpace< MODEL > ObsSpace_
ObsVector< MODEL > ObsVector_
ObsVector_ & obsvector()
Interfacing. 
MODEL::ObsCheck ObsCheck_
void postFilter(const GeoVaLs_ &, const ObsVector_ &, const ObsSpace_ &) const
GeoVaLs< MODEL > GeoVaLs_
void priorFilter(const ObsSpace_ &) const
ObsSpace_ & observationspace() const
Interfacing. 
void print(std::ostream &) const override
boost::scoped_ptr< ObsCheck_ > obsc_