9 constexpr
double highRangeCal = 1800.;
10 constexpr
double lowRangeCal = 260.;
26 const std::vector<CTPPSPixelDigi> &digi,
27 std::vector<CTPPSPixelCluster> &
clusters,
30 std::map<uint32_t, CTPPSPixelROCAnalysisMask>
const &mask = maskera->
analysisMask;
31 std::map<uint32_t, CTPPSPixelROCAnalysisMask>::const_iterator mask_it = mask.find(detId);
33 std::set<std::pair<unsigned char, unsigned char> > maskedPixels;
34 if (mask_it != mask.end())
35 maskedPixels = mask_it->second.maskedPixels;
38 edm::LogInfo(
"RPixDetClusterizer") << detId <<
" received digi.size()=" << digi.size();
50 uint8_t row = RPdit.row();
51 uint8_t column = RPdit.column();
52 if (row > maxRow || column > maxCol)
53 throw cms::Exception(
"CTPPSDigiOutofRange") <<
" row = " << row <<
" column = " << column;
55 std::pair<unsigned char, unsigned char>
pixel = std::make_pair(row, column);
56 unsigned short adc = RPdit.adc();
60 const bool is_in = maskedPixels.find(
pixel) != maskedPixels.end();
67 unsigned int index = column * maxRow + row;
82 unsigned int seedIndex = aSeed.
column() * maxRow + aSeed.
row();
93 while (!atempCluster.
empty()) {
95 auto curInd = atempCluster.
top();
97 for (
auto c =
std::max(0,
int(atempCluster.
col[curInd]) - 1);
100 for (
auto r =
std::max(0,
int(atempCluster.
row[curInd]) - 1);
101 r <
std::min(
int(atempCluster.
row[curInd]) + 2, maxRow);
103 unsigned int currIndex =
c * maxRow +
r;
148 <<
" ElectronADCGain = " <<
gain <<
" pedestal = " <<
pedestal;
151 edm::LogInfo(
"RPixCalibration") <<
"RPixDetClusterizer::calibrate: *** electrons < 0 *** --> " <<
electrons
152 <<
" --> electrons = 0";