src
CalibCalorimetry
HcalAlgos
interface
HcalPulseContainmentManager.h
Go to the documentation of this file.
1
#ifndef CalibCalorimetry_HcalAlgos_HcalPulseContainmentManager_h
2
#define CalibCalorimetry_HcalAlgos_HcalPulseContainmentManager_h
3
4
#include "
CalibCalorimetry/HcalAlgos/interface/HcalPulseContainmentCorrection.h
"
5
#include "
CalibCalorimetry/HcalAlgos/interface/HcalPulseShapes.h
"
6
#include "
DataFormats/HcalDetId/interface/HcalDetId.h
"
7
#include "
CalibCalorimetry/HcalAlgos/interface/HcalTimeSlew.h
"
8
#include "
CondFormats/DataRecord/interface/HcalTimeSlewRecord.h
"
9
10
class
HcalPulseContainmentManager
{
11
public
:
12
// for callers not calling beginRun(EventSetup)
13
HcalPulseContainmentManager
(
float
max_fracerror,
bool
phaseAsInSim);
14
// for callers calling beginRun(EventSetup)
15
HcalPulseContainmentManager
(
float
max_fracerror,
bool
phaseAsInSim,
edm::ConsumesCollector
iC);
16
double
correction
(
const
HcalDetId
&
detId
,
int
toAdd
,
float
fixedphase_ns,
double
fc_ampl);
17
const
HcalPulseContainmentCorrection
*
get
(
const
HcalDetId
&
detId
,
int
toAdd
,
float
fixedphase_ns);
18
19
void
beginRun
(
edm::EventSetup
const
& es);
20
void
beginRun
(
const
HcalDbService
*
conditions
,
const
HcalTimeSlew
*
delay
);
21
22
void
setTimeSlew
(
const
HcalTimeSlew
* timeSlew) {
hcalTimeSlew_delay_
= timeSlew; }
23
24
private
:
25
struct
HcalPulseContainmentEntry
{
26
HcalPulseContainmentEntry
(
int
toAdd
,
27
float
fixedphase_ns,
28
const
HcalPulseShape
*
shape
,
29
const
HcalPulseContainmentCorrection
&
correction
)
30
:
toAdd_
(
toAdd
),
fixedphase_ns_
(fixedphase_ns),
shape_
(
shape
),
correction_
(
correction
) {}
31
int
toAdd_
;
32
float
fixedphase_ns_
;
33
const
HcalPulseShape
*
shape_
;
34
HcalPulseContainmentCorrection
correction_
;
35
};
36
37
std::vector<HcalPulseContainmentEntry>
entries_
;
38
HcalPulseShapes
shapes_
;
39
float
fixedphase_ns_
;
40
float
max_fracerror_
;
41
bool
phaseAsInSim_
;
42
const
edm::ESGetToken<HcalTimeSlew, HcalTimeSlewRecord>
delayToken_
;
43
44
const
HcalTimeSlew
*
hcalTimeSlew_delay_
;
45
};
46
47
#endif
HcalPulseShapes.h
HcalPulseContainmentManager::max_fracerror_
float max_fracerror_
Definition:
HcalPulseContainmentManager.h:40
HLT_2023v12_cff.toAdd
toAdd
Definition:
HLT_2023v12_cff.py:58789
l1trig_cff.shape
shape
Definition:
l1trig_cff.py:152
HcalPulseContainmentManager::hcalTimeSlew_delay_
const HcalTimeSlew * hcalTimeSlew_delay_
Definition:
HcalPulseContainmentManager.h:44
submitPVValidationJobs.conditions
list conditions
Definition:
submitPVValidationJobs.py:680
HcalPulseContainmentManager::shapes_
HcalPulseShapes shapes_
Definition:
HcalPulseContainmentManager.h:38
HcalPulseContainmentManager::fixedphase_ns_
float fixedphase_ns_
Definition:
HcalPulseContainmentManager.h:39
HcalDbService
Definition:
HcalDbService.h:23
HcalPulseShape
Definition:
HcalPulseShape.h:6
HcalPulseContainmentCorrection
Definition:
HcalPulseContainmentCorrection.h:15
HcalPulseContainmentManager::correction
double correction(const HcalDetId &detId, int toAdd, float fixedphase_ns, double fc_ampl)
Definition:
HcalPulseContainmentManager.cc:32
HcalPulseShapes
Definition:
HcalPulseShapes.h:23
HcalTimeSlewRecord.h
HcalPulseContainmentManager::entries_
std::vector< HcalPulseContainmentEntry > entries_
Definition:
HcalPulseContainmentManager.h:37
HcalTimeSlew
Definition:
HcalTimeSlew.h:19
HcalPulseContainmentManager::delayToken_
const edm::ESGetToken< HcalTimeSlew, HcalTimeSlewRecord > delayToken_
Definition:
HcalPulseContainmentManager.h:42
edm::ESGetToken< HcalTimeSlew, HcalTimeSlewRecord >
HcalPulseContainmentManager::HcalPulseContainmentManager
HcalPulseContainmentManager(float max_fracerror, bool phaseAsInSim)
Definition:
HcalPulseContainmentManager.cc:6
HcalDetId
Definition:
HcalDetId.h:12
HcalPulseContainmentManager::HcalPulseContainmentEntry::HcalPulseContainmentEntry
HcalPulseContainmentEntry(int toAdd, float fixedphase_ns, const HcalPulseShape *shape, const HcalPulseContainmentCorrection &correction)
Definition:
HcalPulseContainmentManager.h:26
HcalDetId.h
HcalPulseContainmentManager::setTimeSlew
void setTimeSlew(const HcalTimeSlew *timeSlew)
Definition:
HcalPulseContainmentManager.h:22
edm::EventSetup
Definition:
EventSetup.h:56
HcalPulseContainmentManager::HcalPulseContainmentEntry
Definition:
HcalPulseContainmentManager.h:25
hcalRecHitTable_cff.detId
detId
Definition:
hcalRecHitTable_cff.py:12
HcalPulseContainmentManager::phaseAsInSim_
bool phaseAsInSim_
Definition:
HcalPulseContainmentManager.h:41
HcalPulseContainmentManager::HcalPulseContainmentEntry::shape_
const HcalPulseShape * shape_
Definition:
HcalPulseContainmentManager.h:33
HcalPulseContainmentManager::HcalPulseContainmentEntry::correction_
HcalPulseContainmentCorrection correction_
Definition:
HcalPulseContainmentManager.h:34
HcalPulseContainmentManager::HcalPulseContainmentEntry::toAdd_
int toAdd_
Definition:
HcalPulseContainmentManager.h:31
HcalPulseContainmentCorrection.h
HcalPulseContainmentManager
Definition:
HcalPulseContainmentManager.h:10
HcalPulseContainmentManager::HcalPulseContainmentEntry::fixedphase_ns_
float fixedphase_ns_
Definition:
HcalPulseContainmentManager.h:32
HcalPulseContainmentManager::beginRun
void beginRun(edm::EventSetup const &es)
Definition:
HcalPulseContainmentManager.cc:20
phase2TrackerDigitizer_cfi.delay
delay
Definition:
phase2TrackerDigitizer_cfi.py:49
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
HcalTimeSlew.h
Generated for CMSSW Reference Manual by
1.8.14