16 RefHitDef::RefHitDef(
unsigned int aInput,
int aPhiMin,
int aPhiMax,
unsigned int aRegion,
unsigned int aRefLayer)
17 : iInput(aInput), iRegion(aRegion), iRefLayer(aRefLayer),
range(
std::pair<
int,
int>(aPhiMin, aPhiMax)) {}
25 <<
" range: (" << aRefHitDef.
range.first <<
", " << aRefHitDef.
range.second << std::endl;
33 std::vector<int> aLayer1D(
nInputs(), 0);
37 aLayer2D.assign(
nLayers(), aLayer1D);
61 const std::vector<int> *connectedSectorsStartVec =
omtfParams->connectedSectorsStart();
62 const std::vector<int> *connectedSectorsEndVec =
omtfParams->connectedSectorsEnd();
64 std::copy(connectedSectorsStartVec->begin(), connectedSectorsStartVec->begin() + 6,
barrelMin.begin());
65 std::copy(connectedSectorsStartVec->begin() + 6, connectedSectorsStartVec->begin() + 12,
endcap10DegMin.begin());
68 std::copy(connectedSectorsEndVec->begin(), connectedSectorsEndVec->begin() + 6,
barrelMax.begin());
73 const std::vector<L1TMuonOverlapParams::LayerMapNode> *layerMap =
omtfParams->layerMap();
75 for (
unsigned int iLayer = 0; iLayer <
nLayers(); ++iLayer) {
86 const std::vector<L1TMuonOverlapParams::RefLayerMapNode> *refLayerMap =
omtfParams->refLayerMap();
87 for (
unsigned int iRefLayer = 0; iRefLayer <
nRefLayers(); ++iRefLayer) {
106 std::vector<std::pair<int, int> > aRefHit1D(
nLogicRegions(), std::pair<int, int>(9999, 9999));
108 std::vector<std::vector<std::pair<int, int> > > aRefHit2D;
114 std::vector<RefHitDef> aRefHitsDefs(
nRefHits());
118 const std::vector<int> *phiStartMap =
omtfParams->globalPhiStartMap();
119 const std::vector<L1TMuonOverlapParams::RefHitNode> *refHitMap =
omtfParams->refHitMap();
120 const std::vector<L1TMuonOverlapParams::LayerInputNode> *layerInputMap =
omtfParams->layerInputMap();
121 unsigned int tmpIndex = 0;
122 for (
unsigned int iProcessor = 0; iProcessor <
nProcessors(); ++iProcessor) {
123 for (
unsigned int iRefLayer = 0; iRefLayer <
nRefLayers(); ++iRefLayer) {
124 int iPhiStart = phiStartMap->at(iRefLayer + iProcessor *
nRefLayers());
127 for (
unsigned int iRefHit = 0; iRefHit <
nRefHits(); ++iRefHit) {
128 int iPhiMin = refHitMap->at(iRefHit + iProcessor *
nRefHits()).iPhiMin;
129 int iPhiMax = refHitMap->at(iRefHit + iProcessor *
nRefHits()).iPhiMax;
130 unsigned int iInput = refHitMap->at(iRefHit + iProcessor *
nRefHits()).iInput;
131 unsigned int iRegion = refHitMap->at(iRefHit + iProcessor *
nRefHits()).iRegion;
132 unsigned int iRefLayer = refHitMap->at(iRefHit + iProcessor *
nRefHits()).iRefLayer;
136 for (
unsigned int iLogicRegion = 0; iLogicRegion <
nLogicRegions(); ++iLogicRegion) {
137 for (
unsigned int iLayer = 0; iLayer <
nLayers(); ++iLayer) {
139 unsigned int iFirstInput = layerInputMap->at(tmpIndex).iFirstInput;
140 unsigned int nInputsInRegion = layerInputMap->at(tmpIndex).nInputs;
142 std::pair<unsigned int, unsigned int>(iFirstInput, nInputsInRegion);
157 <<
" nPdfValBits: " << aConfig.
nPdfValBits() << std::endl;
159 for (
unsigned int iProcessor = 0; iProcessor < aConfig.
nProcessors(); ++iProcessor) {
160 out <<
"Processor: " << iProcessor;
161 for (
unsigned int iRefLayer = 0; iRefLayer < aConfig.
nRefLayers(); ++iRefLayer) {
178 return iPhiStart <= iPhi && iPhiStart + (
int)
coneSize > iPhi;
179 }
else if (iPhi > (
int)
nPhiBins() / 2) {
180 return iPhiStart <= iPhi;
181 }
else if (iPhi < (
int)
nPhiBins() / 2) {
189 for (
unsigned int iRegion = 0; iRegion <
nLogicRegions(); ++iRegion) {
209 std::cout <<
"PROBLEM: hit in unknown Det, detID: " << detId.
det() << std::endl;
226 aLayer =
dt.station();
231 aLayer =
csc.station();
232 if (
csc.ring() == 2 &&
csc.station() == 1)
234 if (
csc.station() == 4)
240 int hwNumber = aLayer + 100 * detId.
subdetId();