CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MonitorCollection.h
Go to the documentation of this file.
1 // $Id: MonitorCollection.h,v 1.6 2011/03/07 15:31:32 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_MonitorCollection_h
5 #define EventFilter_StorageManager_MonitorCollection_h
6 
7 #include "xdata/Serializable.h"
8 
11 
12 #include <string>
13 
14 
15 namespace stor {
16 
26  {
27  public:
28 
29  typedef std::vector< std::pair<std::string, xdata::Serializable*> > InfoSpaceItems;
30 
31 
32  explicit MonitorCollection(const utils::Duration_t& updateInterval);
33 
34 
35  // A pure virtual destructor results in a missing symbol
36  virtual ~MonitorCollection() {};
37 
43 
48 
55  void updateInfoSpaceItems();
56 
60  void reset(const utils::TimePoint_t& now);
61 
62 
63  protected:
64 
65  virtual void do_calculateStatistics() = 0;
66  virtual void do_reset() = 0;
68  virtual void do_updateInfoSpaceItems() {};
69 
70 
71  private:
72 
73  //Prevent copying of the MonitorCollection
76 
80 
81  };
82 
83 } // namespace stor
84 
85 #endif // EventFilter_StorageManager_MonitorCollection_h
86 
87 
virtual void do_calculateStatistics()=0
virtual void do_appendInfoSpaceItems(InfoSpaceItems &)
boost::posix_time::time_duration Duration_t
Definition: Utils.h:41
virtual void do_reset()=0
boost::posix_time::ptime TimePoint_t
Definition: Utils.h:35
void appendInfoSpaceItems(InfoSpaceItems &)
virtual void do_updateInfoSpaceItems()
void reset(const utils::TimePoint_t &now)
void calculateStatistics(const utils::TimePoint_t &now)
utils::TimePoint_t lastCalculateStatistics_
MonitorCollection & operator=(MonitorCollection const &)
std::vector< std::pair< std::string, xdata::Serializable * > > InfoSpaceItems
MonitorCollection(const utils::Duration_t &updateInterval)
const utils::Duration_t updateInterval_