CMS 3D CMS Logo

Timer.h
Go to the documentation of this file.
1 #ifndef HighLevelTrigger_Timer_h
2 #define HighLevelTrigger_Timer_h
3 
4 // system include files
5 #include <memory>
6 
7 // user include files
10 
14 
16 
18 // use for CMSSW_1_3_x
19 //#include "DataFormats/Common/interface/ModuleDescription.h"
20 // use for CMSSW_1_4_x
22 
23 
25 
26 namespace edm {
28 }
29 
30 /*
31  Description: EDProducer that uses the EventTime structure to store in the Event
32  the names and processing times (per event) for all modules.
33 
34  Implementation:
35  <Notes on implementation>
36 */
37 //
38 // Original Author: Christos Leonidopoulos
39 // Created: Mon Jul 10 14:13:58 CEST 2006
40 //
41 //
42 //
43 // class decleration
44 //
45 
46 class Timer : public edm::EDProducer {
47  public:
48  explicit Timer(const edm::ParameterSet&);
49  ~Timer() override;
50  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
51 
52  // fwk calls this method when new module measurement arrives;
53  void newTimingMeasurement(const edm::ModuleDescription& iMod, double iTime);
54  // put output into Event
55  void produce(edm::Event&, const edm::EventSetup&) override;
56  //
57  private:
58  // ----------member data ---------------------------
59  edm::EventTime timing; // structure with module names & processing times
60  // whether to store information about itself (ie. Timer module)
62 
63  // this should be just this class' name
65 
66 };
67 
68 
69 #endif // #define HighLevelTrigger_Timer_h
std::string self_module_name
Definition: Timer.h:64
edm::EventTime timing
Definition: Timer.h:59
HLT enums.
Definition: Timer.h:46
bool includeSelf
Definition: Timer.h:61