CalibMuon
DTCalibration
plugins
DTTTrigConstantShift.cc
Go to the documentation of this file.
1
/*
2
* See header file for a description of this class.
3
*
4
*/
5
6
#include "
DTTTrigConstantShift.h
"
7
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
8
#include "
FWCore/Framework/interface/EventSetup.h
"
9
#include "
FWCore/Framework/interface/ESHandle.h
"
10
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
11
12
#include "
DataFormats/MuonDetId/interface/DTSuperLayerId.h
"
13
#include "
CondFormats/DTObjects/interface/DTTtrig.h
"
14
#include "
CondFormats/DataRecord/interface/DTTtrigRcd.h
"
15
16
#include <cmath>
17
18
using namespace
std
;
19
using namespace
edm
;
20
21
namespace
dtCalibration
{
22
23
DTTTrigConstantShift::DTTTrigConstantShift(
const
ParameterSet
&
pset
)
24
: dbLabel_(
pset
.getUntrackedParameter<
string
>(
"dbLabel"
,
""
)),
25
calibChamber_(
pset
.getParameter<
string
>(
"calibChamber"
)),
26
value_(
pset
.getParameter<double>(
"value"
)) {
27
LogVerbatim
(
"Calibration"
) <<
"[DTTTrigConstantShift] Applying constant correction value: "
<<
value_
<< endl;
28
29
if
(!
calibChamber_
.empty() &&
calibChamber_
!=
"None"
&&
calibChamber_
!=
"All"
) {
30
stringstream linestr;
31
int
selWheel, selStation, selSector;
32
linestr <<
calibChamber_
;
33
linestr >> selWheel >> selStation >> selSector;
34
chosenChamberId_
=
DTChamberId
(selWheel, selStation, selSector);
35
LogVerbatim
(
"Calibration"
) <<
"[DTTTrigConstantShift] Chosen chamber: "
<<
chosenChamberId_
<< endl;
36
}
37
//FIXME: Check if chosen chamber is valid.
38
}
39
40
DTTTrigConstantShift::~DTTTrigConstantShift
() {}
41
42
void
DTTTrigConstantShift::setES
(
const
EventSetup
&
setup
) {
43
// Get tTrig record from DB
44
ESHandle<DTTtrig>
tTrig
;
45
setup
.get<
DTTtrigRcd
>().
get
(
dbLabel_
,
tTrig
);
46
tTrigMap_
= &*
tTrig
;
47
}
48
49
DTTTrigData
DTTTrigConstantShift::correction
(
const
DTSuperLayerId
& slId) {
50
float
tTrigMean, tTrigSigma,
kFactor
;
51
int
status
=
tTrigMap_
->
get
(slId, tTrigMean, tTrigSigma,
kFactor
,
DTTimeUnits::ns
);
52
if
(
status
!= 0)
53
throw
cms::Exception
(
"[DTTTrigConstantShift]"
) <<
"Could not find tTrig entry in DB for"
<< slId << endl;
54
55
float
tTrigMeanNew = tTrigMean;
56
if
(!
calibChamber_
.empty() &&
calibChamber_
!=
"None"
) {
57
if
((
calibChamber_
==
"All"
) || (
calibChamber_
!=
"All"
&& slId.
chamberId
() ==
chosenChamberId_
)) {
58
tTrigMeanNew = tTrigMean +
value_
;
59
}
60
}
61
62
return
DTTTrigData
(tTrigMeanNew, tTrigSigma,
kFactor
);
63
}
64
65
}
// namespace dtCalibration
DTSuperLayerId
Definition:
DTSuperLayerId.h:12
dtCalibration::DTTTrigData
Definition:
DTTTrigBaseCorrection.h:19
DTTtrigRcd.h
MessageLogger.h
ESHandle.h
dtCalibration::DTTTrigConstantShift::calibChamber_
std::string calibChamber_
Definition:
DTTTrigConstantShift.h:38
mps_update.status
status
Definition:
mps_update.py:68
DTTtrigRcd
Definition:
DTTtrigRcd.h:5
edm
HLT enums.
Definition:
AlignableModifier.h:19
dttriganalyzer_cfi.tTrig
tTrig
Definition:
dttriganalyzer_cfi.py:11
singleTopDQM_cfi.setup
setup
Definition:
singleTopDQM_cfi.py:37
dtCalibration::DTTTrigConstantShift::tTrigMap_
const DTTtrig * tTrigMap_
Definition:
DTTTrigConstantShift.h:41
dtCalibration::DTTTrigConstantShift::value_
double value_
Definition:
DTTTrigConstantShift.h:39
DTTimeUnits::ns
Definition:
DTTimeUnits.h:32
edm::ESHandle< DTTtrig >
dtCalibration::DTTTrigConstantShift::dbLabel_
std::string dbLabel_
Definition:
DTTTrigConstantShift.h:37
DTTtrig::get
int get(int wheelId, int stationId, int sectorId, int slId, float &tTrig, float &tTrms, float &kFact, DTTimeUnits::type unit) const
get content
Definition:
DTTtrig.cc:59
DTTTrigConstantShift.h
dtCalibration::DTTTrigConstantShift::setES
void setES(const edm::EventSetup &setup) override
Definition:
DTTTrigConstantShift.cc:42
edm::ParameterSet
Definition:
ParameterSet.h:47
dtCalibration::DTTTrigConstantShift::~DTTTrigConstantShift
~DTTTrigConstantShift() override
Definition:
DTTTrigConstantShift.cc:40
DTSuperLayerId::chamberId
DTChamberId chamberId() const
Return the corresponding ChamberId.
Definition:
DTSuperLayerId.h:45
edm::EventSetup
Definition:
EventSetup.h:58
DTTtrig.h
get
#define get
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
dtCalibration
Definition:
DTT0BaseCorrection.h:16
dtCalibration::DTTTrigConstantShift::correction
DTTTrigData correction(const DTSuperLayerId &) override
Definition:
DTTTrigConstantShift.cc:49
std
Definition:
JetResolutionObject.h:76
dttriganalyzer_cfi.kFactor
kFactor
Definition:
dttriganalyzer_cfi.py:7
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition:
MessageLogger.h:128
dtCalibration::DTTTrigConstantShift::chosenChamberId_
DTChamberId chosenChamberId_
Definition:
DTTTrigConstantShift.h:42
Exception
Definition:
hltDiff.cc:245
EventSetup.h
DTChamberId
Definition:
DTChamberId.h:14
ParameterSet.h
DTSuperLayerId.h
muonDTDigis_cfi.pset
pset
Definition:
muonDTDigis_cfi.py:27
Generated for CMSSW Reference Manual by
1.8.16