Go to the documentation of this file.00001 #ifndef HighLevelTrigger_Timer_h
00002 #define HighLevelTrigger_Timer_h
00003
00004
00005 #include <memory>
00006
00007
00008 #include "FWCore/Framework/interface/Frameworkfwd.h"
00009 #include "FWCore/Framework/interface/EDProducer.h"
00010
00011 #include "FWCore/Framework/interface/Event.h"
00012 #include "FWCore/Framework/interface/MakerMacros.h"
00013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00014
00015 #include "FWCore/ServiceRegistry/interface/Service.h"
00016
00017 #include "DataFormats/HLTReco/interface/ModuleTiming.h"
00018
00019
00020
00021 #include "DataFormats/Provenance/interface/ModuleDescription.h"
00022
00023
00024 #include "HLTrigger/Timer/interface/TimerService.h"
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043 class Timer : public edm::EDProducer {
00044 public:
00045 explicit Timer(const edm::ParameterSet&);
00046 ~Timer();
00047
00048 void newTimingMeasurement(const edm::ModuleDescription& iMod, double iTime);
00049
00050 virtual void produce(edm::Event&, const edm::EventSetup&);
00051
00052 private:
00053
00054 edm::EventTime timing;
00055
00056 bool includeSelf;
00057
00058
00059 std::string self_module_name;
00060
00061 };
00062
00063
00064 #endif // #define HighLevelTrigger_Timer_h