CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FragmentMonitorCollection.h
Go to the documentation of this file.
1 // $Id: FragmentMonitorCollection.h,v 1.8 2011/03/07 15:31:32 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_FragmentMonitorCollection_h
5 #define EventFilter_StorageManager_FragmentMonitorCollection_h
6 
7 #include "xdata/Double.h"
8 #include "xdata/UnsignedInteger32.h"
9 
11 
12 
13 namespace stor {
14 
24  {
25  private:
26 
29 
32 
35 
36 
37  public:
38 
40  {
43 
46 
49  };
50 
51  explicit FragmentMonitorCollection(const utils::Duration_t& updateInterval);
52 
56  void addFragmentSample(const double bytecount);
57 
61  void addEventFragmentSample(const double bytecount);
62 
66  void addDQMEventFragmentSample(const double bytecount);
67 
69  return allFragmentSizes_;
70  }
72  return allFragmentSizes_;
73  }
74 
76  return eventFragmentSizes_;
77  }
79  return eventFragmentSizes_;
80  }
81 
84  }
87  }
88 
90  return allFragmentBandwidth_;
91  }
93  return allFragmentBandwidth_;
94  }
95 
98  }
101  }
102 
105  }
108  }
109 
113  void getStats(FragmentStats& stats) const;
114 
115 
116  private:
117 
118  //Prevent copying of the FragmentMonitorCollection
121 
122  virtual void do_calculateStatistics();
123  virtual void do_reset();
125  virtual void do_updateInfoSpaceItems();
126 
127  xdata::UnsignedInteger32 receivedFrames_; // Total I2O frames received
128  xdata::Double instantBandwidth_; // Recent bandwidth in MB/s
129  xdata::Double instantRate_; // Recent number of frames/s
130 
131  };
132 
133 } // namespace stor
134 
135 #endif // EventFilter_StorageManager_FragmentMonitorCollection_h
136 
137 
const MonitoredQuantity & getAllFragmentSizeMQ() const
const MonitoredQuantity & getDQMEventFragmentSizeMQ() const
virtual void do_appendInfoSpaceItems(InfoSpaceItems &)
MonitoredQuantity & getDQMEventFragmentSizeMQ()
FragmentMonitorCollection(const utils::Duration_t &updateInterval)
MonitoredQuantity & getDQMEventFragmentBandwidthMQ()
boost::posix_time::time_duration Duration_t
Definition: Utils.h:41
void getStats(FragmentStats &stats) const
const MonitoredQuantity & getEventFragmentBandwidthMQ() const
MonitoredQuantity & getEventFragmentBandwidthMQ()
std::vector< std::pair< std::string, xdata::Serializable * > > InfoSpaceItems
MonitoredQuantity & getAllFragmentBandwidthMQ()
const MonitoredQuantity & getDQMEventFragmentBandwidthMQ() const
const MonitoredQuantity & getEventFragmentSizeMQ() const
void addDQMEventFragmentSample(const double bytecount)
void addEventFragmentSample(const double bytecount)
void addFragmentSample(const double bytecount)
FragmentMonitorCollection & operator=(FragmentMonitorCollection const &)
const MonitoredQuantity & getAllFragmentBandwidthMQ() const