11 #ifndef OOPS_BASE_OBSOPERATORS_H_ 12 #define OOPS_BASE_OBSOPERATORS_H_ 17 #include <boost/noncopyable.hpp> 18 #include <boost/shared_ptr.hpp> 25 #include "oops/util/DateTime.h" 26 #include "oops/util/Logger.h" 27 #include "oops/util/Printable.h" 28 #include "oops/util/Timer.h" 34 template <
typename MODEL>
36 private boost::noncopyable {
43 static const std::string
classname() {
return "oops::ObsOperators";}
54 void print(std::ostream &)
const;
55 std::vector<boost::shared_ptr<ObsOperator_> >
ops_;
60 template <
typename MODEL>
63 for (std::size_t jobs = 0; jobs < os.
size(); ++jobs) {
71 template <
typename MODEL>
76 template <
typename MODEL>
83 template<
typename MODEL>
85 for (std::size_t jobs = 0; jobs < ops_.size(); ++jobs) os << *ops_[jobs];
92 #endif // OOPS_BASE_OBSOPERATORS_H_ static const std::string classname()
ObsVector< MODEL > ObsVector_
void print(std::ostream &) const
std::size_t size() const
Access.
The namespace for the main oops code.
const std::vector< std::string > & variables() const
ObsOperator< MODEL > ObsOperator_
ObsSpaces< MODEL > ObsSpace_
const ObsOperator_ & operator[](const std::size_t ii) const
ObsAuxControl< MODEL > ObsAuxControl_
const Variables & variables(const std::size_t jobs) const
std::vector< boost::shared_ptr< ObsOperator_ > > ops_
std::size_t size() const
Access.
ObsOperators(const ObsSpace_ &)