CMS 3D CMS Logo

ThroughputService.h
Go to the documentation of this file.
1 #ifndef ThroughputService_h
2 #define ThroughputService_h
3 
4 // C++ headers
5 #include <string>
6 #include <chrono>
7 #include <functional>
8 
9 // TBB headers
10 #include <tbb/concurrent_unordered_map.h>
11 #include <tbb/concurrent_unordered_set.h>
12 
13 // ROOT headers
14 #include <TH1F.h>
15 
16 // CMSSW headers
28 
30 public:
32 
35 
36 private:
37  void preallocate(edm::service::SystemBounds const& bounds);
38  void preGlobalBeginRun(edm::GlobalContext const& gc);
39  void preSourceEvent(edm::StreamID sid);
40  void postEvent(edm::StreamContext const& sc);
41 
42 public:
43  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
44 
45 private:
48 
49  std::chrono::steady_clock::time_point m_startup;
50 
51  // histogram-related data members
52  const double m_time_range;
53  const double m_time_resolution;
54 
55  // DQM service-related data members
57  const bool m_dqm_bynproc;
58 };
59 
60 #endif // ! ThroughputService_h
void preallocate(edm::service::SystemBounds const &bounds)
dqm::reco::MonitorElement * m_sourced_events
void preSourceEvent(edm::StreamID sid)
dqm::reco::MonitorElement * m_retired_events
void postEvent(edm::StreamContext const &sc)
void preGlobalBeginRun(edm::GlobalContext const &gc)
dqm::reco::DQMStore DQMStore
std::chrono::steady_clock::time_point m_startup
std::string m_dqm_path
ThroughputService(const edm::ParameterSet &, edm::ActivityRegistry &)
const double m_time_resolution
const double m_time_range
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const bool m_dqm_bynproc