CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 /*
27  Description: EDProducer that uses the EventTime structure to store in the Event
28  the names and processing times (per event) for all modules.
29 
30  Implementation:
31  <Notes on implementation>
32 */
33 //
34 // Original Author: Christos Leonidopoulos
35 // Created: Mon Jul 10 14:13:58 CEST 2006
36 // $Id: Timer.h,v 1.11 2007/03/27 19:12:13 cleonido Exp $
37 //
38 //
39 //
40 // class decleration
41 //
42 
43 class Timer : public edm::EDProducer {
44  public:
45  explicit Timer(const edm::ParameterSet&);
46  ~Timer();
47  // fwk calls this method when new module measurement arrives;
48  void newTimingMeasurement(const edm::ModuleDescription& iMod, double iTime);
49  // put output into Event
50  virtual void produce(edm::Event&, const edm::EventSetup&);
51  //
52  private:
53  // ----------member data ---------------------------
54  edm::EventTime timing; // structure with module names & processing times
55  // whether to store information about itself (ie. Timer module)
57 
58  // this should be just this class' name
59  std::string self_module_name;
60 
61 };
62 
63 
64 #endif // #define HighLevelTrigger_Timer_h
Timer(const edm::ParameterSet &)
Definition: Timer.cc:35
~Timer()
Definition: Timer.cc:52
std::string self_module_name
Definition: Timer.h:59
void newTimingMeasurement(const edm::ModuleDescription &iMod, double iTime)
Definition: Timer.cc:68
edm::EventTime timing
Definition: Timer.h:54
virtual void produce(edm::Event &, const edm::EventSetup &)
Definition: Timer.cc:86
Definition: Timer.h:43
bool includeSelf
Definition: Timer.h:56