SimCalorimetry
EcalTrigPrimAlgos
src
EcalFenixTcpFgvbEE.cc
Go to the documentation of this file.
1
#include "
CondFormats/EcalObjects/interface/EcalTPGFineGrainTowerEE.h
"
2
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
3
#include <
SimCalorimetry/EcalTrigPrimAlgos/interface/EcalFenixTcpFgvbEE.h
>
4
#include <iostream>
5
6
//---------------------------------------------------------------
7
EcalFenixTcpFgvbEE::EcalFenixTcpFgvbEE
(
int
maxNrSamples) {
8
indexLut_
.resize(maxNrSamples);
9
}
//---------------------------------------------------------------
10
EcalFenixTcpFgvbEE::~EcalFenixTcpFgvbEE
() {}
11
//---------------------------------------------------------------
12
void
EcalFenixTcpFgvbEE::process
(
std::vector
<std::vector<int>> &bypasslin_out,
13
int
nStr,
14
int
bitMask,
15
std::vector<int> &
output
) {
16
// std::vector<int> indexLut(output.size());
17
18
for
(
unsigned
int
i
= 0;
i
<
output
.size();
i
++) {
19
output
[
i
] = 0;
20
indexLut_
[
i
] = 0;
21
}
22
23
for
(
unsigned
int
i
= 0;
i
<
output
.size();
i
++) {
24
for
(
int
istrip = 0; istrip < nStr; istrip++) {
25
int
res
= (bypasslin_out[istrip])[
i
];
26
res
= (
res
>> bitMask) & 1;
// res is FGVB at this stage
27
indexLut_
[
i
] =
indexLut_
[
i
] | (
res
<< istrip);
28
}
29
indexLut_
[
i
] =
indexLut_
[
i
] | (nStr << 5);
30
31
int
mask = 1 <<
indexLut_
[
i
];
32
output
[
i
] =
fgee_lut_
& mask;
33
if
(
output
[
i
] > 0)
34
output
[
i
] = 1;
35
}
36
return
;
37
}
38
39
//-------------------------------------------------------------------
40
41
void
EcalFenixTcpFgvbEE::setParameters
(uint32_t towid,
const
EcalTPGFineGrainTowerEE
*ecaltpgFineGrainTowerEE) {
42
const
EcalTPGFineGrainTowerEEMap
&fgee_map = ecaltpgFineGrainTowerEE->
getMap
();
43
44
EcalTPGFineGrainTowerEEMapIterator
it = fgee_map.find(towid);
45
if
(it != fgee_map.end())
46
fgee_lut_
= (*it).second;
47
else
48
edm::LogWarning
(
"EcalTPG"
) <<
" could not find EcalTPGFineGrainTowerEEMap for "
<< towid;
49
}
mps_fire.i
i
Definition:
mps_fire.py:428
MessageLogger.h
EcalFenixTcpFgvbEE::indexLut_
std::vector< int > indexLut_
Definition:
EcalFenixTcpFgvbEE.h:27
convertSQLitetoXML_cfg.output
output
Definition:
convertSQLitetoXML_cfg.py:72
EcalTPGFineGrainTowerEE.h
EcalFenixTcpFgvbEE::~EcalFenixTcpFgvbEE
virtual ~EcalFenixTcpFgvbEE()
Definition:
EcalFenixTcpFgvbEE.cc:10
EcalTPGFineGrainTowerEE::getMap
const std::map< uint32_t, uint32_t > & getMap() const
Definition:
EcalTPGFineGrainTowerEE.h:15
EcalTPGFineGrainTowerEE
Definition:
EcalTPGFineGrainTowerEE.h:9
EcalTPGFineGrainTowerEEMapIterator
std::map< uint32_t, uint32_t >::const_iterator EcalTPGFineGrainTowerEEMapIterator
Definition:
EcalTPGFineGrainTowerEE.h:25
EcalTPGFineGrainTowerEEMap
std::map< uint32_t, uint32_t > EcalTPGFineGrainTowerEEMap
Definition:
EcalTPGFineGrainTowerEE.h:24
EcalFenixTcpFgvbEE::process
void process(std::vector< std::vector< int >> &bypasslin_out, int nStr, int bitMask, std::vector< int > &output)
Definition:
EcalFenixTcpFgvbEE.cc:12
EcalFenixTcpFgvbEE::fgee_lut_
uint32_t fgee_lut_
Definition:
EcalFenixTcpFgvbEE.h:26
trackerHitRTTI::vector
Definition:
trackerHitRTTI.h:21
res
Definition:
Electron.h:6
EcalFenixTcpFgvbEE::setParameters
void setParameters(uint32_t towid, const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE)
Definition:
EcalFenixTcpFgvbEE.cc:41
EcalFenixTcpFgvbEE.h
EcalFenixTcpFgvbEE::EcalFenixTcpFgvbEE
EcalFenixTcpFgvbEE(int maxNrSamples)
Definition:
EcalFenixTcpFgvbEE.cc:7
edm::Log
Definition:
MessageLogger.h:70
Generated for CMSSW Reference Manual by
1.8.16