37 unsigned int aSector = 99;
42 edm::LogError(
"Critical OMTFinputMaker") <<
"PROBLEM: hit in unknown Det, detID: " << detId.
det() << std::endl;
92 aSector =
dt.sector();
107 aSector =
csc.chamber();
119 if (aMax > aMin && aSector >= aMin && aSector <= aMax)
121 if (aMax < aMin && (aSector >= aMin || aSector <= aMax))
129 unsigned int iInput = 99;
130 unsigned int aSector = 99;
133 int nInputsPerSector = 2;
137 edm::LogError(
"Critical OMTFinputMaker") <<
"PROBLEM: hit in unknown Det, detID: " << detId.
det() << std::endl;
141 if (
rpc.region() == 0) {
142 nInputsPerSector = 4;
143 aSector =
rpc.sector();
146 if (iProcessor == 5 && aSector < 3)
152 if (
rpc.station() == 2 &&
rpc.layer() == 2 &&
rpc.roll() == 2)
155 if (
rpc.station() == 3) {
157 nInputsPerSector = 2;
163 if (
rpc.region() != 0) {
164 aSector = (
rpc.sector() - 1) * 6 +
rpc.subsector();
168 if (iProcessor == 5 && aSector < 5)
175 aSector =
dt.sector();
178 if (iProcessor == 5 && aSector < 3)
184 aSector =
csc.chamber();
188 if (iProcessor == 5 && aSector < 5)
195 if (iProcessor == 5 && aSector < 3)
203 iInput = (aSector - aMin) * nInputsPerSector;
213 unsigned int iProcessor,
221 DTChamberId detid(digiIt.whNum(), digiIt.stNum(), digiIt.scNum() + 1);
234 if (digiIt.bxNum() != bxTrg)
238 if (digiIt.code() != 4 && digiIt.code() != 5 && digiIt.code() != 6)
241 if (digiIt.code() != 2 && digiIt.code() != 3 && digiIt.code() != 4 && digiIt.code() != 5 && digiIt.code() != 6)
250 unsigned int iLayer = iter->second;
254 bool allowOverwrite =
false;
255 result.addLayerHit(iLayer, iInput, iPhi,
iEta, allowOverwrite);
256 result.addLayerHit(iLayer + 1, iInput, digiIt.phiB(),
iEta, allowOverwrite);
264 unsigned int iProcessor,
271 auto chamber = cscDigis->begin();
272 auto chend = cscDigis->end();
274 unsigned int rawid = (*chamber).first;
278 auto digi = (*chamber).second.first;
279 auto dend = (*chamber).second.second;
280 for (; digi != dend; ++digi) {
299 bool allowOverwrite =
false;
300 result.addLayerHit(iLayer, iInput, iPhi,
iEta, allowOverwrite);
311 unsigned int iProcessor,
317 std::stringstream
str;
322 for (
auto rollDigis : rpcDigiCollection) {
324 unsigned int rawid = roll.
rawId();
332 std::vector<RPCDigi> digisCopy;
334 for (
auto pDigi = rollDigis.second.first; pDigi != rollDigis.second.second; pDigi++) {
335 if (pDigi->bx() == bxTrg)
336 digisCopy.push_back(*pDigi);
339 typedef std::pair<unsigned int, unsigned int> Cluster;
341 for (
auto &digi : digisCopy) {
343 clusters.push_back(Cluster(digi.strip(), digi.strip()));
344 else if (digi.strip() -
clusters.back().second == 1)
345 clusters.back().second = digi.strip();
346 else if (digi.strip() -
clusters.back().second > 1)
347 clusters.push_back(Cluster(digi.strip(), digi.strip()));
353 int iPhi =
myAngleConverter->getProcessorPhi(iProcessor,
type, roll, cluster.first, cluster.second);
354 int cSize =
abs(
int(cluster.first) -
int(cluster.second)) + 1;
363 if (iLayer == 17 && (iInput == 0 || iInput == 1))
365 bool outres =
result.addLayerHit(iLayer, iInput, iPhi,
iEta);
370 str <<
" RPC halfDigi "
371 <<
" begin: " << cluster.first <<
" end: " << cluster.second <<
" iPhi: " << iPhi <<
" iEta: " <<
iEta
372 <<
" hwNumber: " << hwNumber <<
" iInput: " << iInput <<
" iLayer: " << iLayer <<
" out: " << outres
387 unsigned int iProcessor,