Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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