Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
HLTrigger
Timer
interface
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
8
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
9
#include "
FWCore/Framework/interface/EDProducer.h
"
10
11
#include "
FWCore/Framework/interface/Event.h
"
12
#include "
FWCore/Framework/interface/MakerMacros.h
"
13
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
14
15
#include "
FWCore/ServiceRegistry/interface/Service.h
"
16
17
#include "
DataFormats/HLTReco/interface/ModuleTiming.h
"
18
// use for CMSSW_1_3_x
19
//#include "DataFormats/Common/interface/ModuleDescription.h"
20
// use for CMSSW_1_4_x
21
#include "
DataFormats/Provenance/interface/ModuleDescription.h
"
22
23
24
#include "
HLTrigger/Timer/interface/TimerService.h
"
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)
56
bool
includeSelf
;
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
ModuleTiming.h
Timer::Timer
Timer(const edm::ParameterSet &)
Definition:
Timer.cc:35
Event.h
Timer::~Timer
~Timer()
Definition:
Timer.cc:52
MakerMacros.h
TimerService.h
ModuleDescription.h
Frameworkfwd.h
edm::EDProducer
Definition:
EDProducer.h:21
ParameterSet.h
Timer::self_module_name
std::string self_module_name
Definition:
Timer.h:59
edm::EventTime
Definition:
ModuleTiming.h:28
Service.h
edm::EventSetup
Definition:
EventSetup.h:44
Timer::newTimingMeasurement
void newTimingMeasurement(const edm::ModuleDescription &iMod, double iTime)
Definition:
Timer.cc:68
EDProducer.h
Timer::timing
edm::EventTime timing
Definition:
Timer.h:54
Timer::produce
virtual void produce(edm::Event &, const edm::EventSetup &)
Definition:
Timer.cc:86
edm::ParameterSet
Definition:
ParameterSet.h:35
Timer
Definition:
Timer.h:43
Timer::includeSelf
bool includeSelf
Definition:
Timer.h:56
edm::Event
Definition:
Event.h:50
edm::ModuleDescription
Definition:
ModuleDescription.h:23
Generated for CMSSW Reference Manual by
1.8.5