12 auto hitsEvt =
event->getHits<
HitsSoA>();
13 std::vector<unsigned int> hitidxs;
14 std::vector<unsigned int> hittypes;
16 hitidxs.push_back(hitsEvt.idxs()[
hit]);
17 if (hitsEvt.detid()[
hit] == 1)
18 hittypes.push_back(0);
20 hittypes.push_back(4);
22 return std::make_tuple(hitidxs, hittypes);
33 auto ranges =
event->getRanges();
34 auto modulesEvt =
event->getModules<
ModulesSoA>();
35 const unsigned int pLS_offset =
ranges.segmentModuleIndices()[modulesEvt.nLowerModules()];
36 unsigned int MD_1 = segments.mdIndices()[
pLS + pLS_offset][0];
37 unsigned int MD_2 = segments.mdIndices()[
pLS + pLS_offset][1];
38 unsigned int hit_1 = miniDoublets.anchorHitIndices()[MD_1];
39 unsigned int hit_2 = miniDoublets.outerHitIndices()[MD_1];
40 unsigned int hit_3 = miniDoublets.anchorHitIndices()[MD_2];
41 unsigned int hit_4 = miniDoublets.outerHitIndices()[MD_2];
43 return {hit_1, hit_2, hit_3};
45 return {hit_1, hit_2, hit_3, hit_4};
50 auto hitsEvt =
event->getHits<
HitsSoA>();
52 std::vector<unsigned int> hitidxs;
54 hitidxs.push_back(hitsEvt.idxs()[
hit]);
61 std::vector<unsigned int> hittypes(
hits.size(), 0);
78 unsigned int hit_1 = miniDoublets.anchorHitIndices()[MD];
79 unsigned int hit_2 = miniDoublets.outerHitIndices()[MD];
80 return {hit_1, hit_2};
96 unsigned int MD_1 = segments.mdIndices()[LS][0];
97 unsigned int MD_2 = segments.mdIndices()[LS][1];
106 return {hits_0[0], hits_0[1], hits_1[0], hits_1[1]};
121 auto const triplets =
event->getTriplets<
TripletsSoA>();
122 unsigned int ls_1 = triplets.segmentIndices()[
t3][0];
123 unsigned int ls_2 = triplets.segmentIndices()[
t3][1];
132 return {MDs_0[0], MDs_0[1], MDs_1[1]};
141 return {hits_0[0], hits_0[1], hits_1[0], hits_1[1], hits_2[0], hits_2[1]};
157 unsigned int t3_1 = quintuplets.tripletIndices()[t5][0];
158 unsigned int t3_2 = quintuplets.tripletIndices()[t5][1];
167 return {LSs_0[0], LSs_0[1], LSs_1[0], LSs_1[1]};
177 return {MDs_0[0], MDs_0[1], MDs_1[1], MDs_2[1], MDs_3[1]};
188 return {hits_0[0], hits_0[1], hits_1[0], hits_1[1], hits_2[0], hits_2[1], hits_3[0], hits_3[1], hits_4[0], hits_4[1]};
193 auto hitsEvt =
event->getHits<
HitsSoA>();
195 std::vector<unsigned int> hitidxs;
197 hitidxs.push_back(hitsEvt.idxs()[
hit]);
203 std::vector<unsigned int> module_idxs;
204 auto hitsEvt =
event->getHits<
HitsSoA>();
205 for (
auto& hitIdx :
hits) {
206 module_idxs.push_back(hitsEvt.moduleIndices()[hitIdx]);
212 return {4, 4, 4, 4, 4, 4, 4, 4, 4, 4};
228 auto const pixelTriplets =
event->getPixelTriplets();
229 auto ranges =
event->getRanges();
230 auto modulesEvt =
event->getModules<
ModulesSoA>();
231 const unsigned int pLS_offset =
ranges.segmentModuleIndices()[modulesEvt.nLowerModules()];
232 return pixelTriplets.pixelSegmentIndices()[
pT3] - pLS_offset;
237 auto const pixelTriplets =
event->getPixelTriplets();
238 return pixelTriplets.tripletIndices()[
pT3];
277 auto hitsEvt =
event->getHits<
HitsSoA>();
279 std::vector<unsigned int> hitidxs;
281 hitidxs.push_back(hitsEvt.idxs()[
hit]);
287 std::vector<unsigned int> module_idxs;
288 auto hitsEvt =
event->getHits<
HitsSoA>();
289 for (
auto& hitIdx :
hits) {
290 module_idxs.push_back(hitsEvt.moduleIndices()[hitIdx]);
300 return {0, 0, 0, 4, 4, 4, 4, 4, 4};
302 return {0, 0, 0, 0, 4, 4, 4, 4, 4, 4};
317 auto const pixelQuintuplets =
event->getPixelQuintuplets();
318 auto ranges =
event->getRanges();
319 auto modulesEvt =
event->getModules<
ModulesSoA>();
320 const unsigned int pLS_offset =
ranges.segmentModuleIndices()[modulesEvt.nLowerModules()];
321 return pixelQuintuplets.pixelSegmentIndices()[
pT5] - pLS_offset;
326 auto const pixelQuintuplets =
event->getPixelQuintuplets();
327 return pixelQuintuplets.quintupletIndices()[
pT5];
372 auto hitsEvt =
event->getHits<
HitsSoA>();
374 std::vector<unsigned int> hitidxs;
376 hitidxs.push_back(hitsEvt.idxs()[
hit]);
383 std::vector<unsigned int> module_idxs;
384 auto hitsEvt =
event->getHits<
HitsSoA>();
385 for (
auto& hitIdx :
hits) {
386 module_idxs.push_back(hitsEvt.moduleIndices()[hitIdx]);
397 return {0, 0, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4};
399 return {0, 0, 0, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4};
415 auto const& trackCandidates =
event->getTrackCandidates();
416 short type = trackCandidates.trackCandidateType()[iTC];
417 unsigned int objidx = trackCandidates.directObjectIndices()[iTC];
429 return std::vector<unsigned int>();
438 auto const& trackCandidates =
event->getTrackCandidates();
439 short type = trackCandidates.trackCandidateType()[iTC];
440 unsigned int objidx = trackCandidates.directObjectIndices()[iTC];
std::vector< unsigned int > getModuleIdxsFromT5(LSTEvent *event, unsigned int T5)
std::vector< unsigned int > getModuleIdxsFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getHitsFromT3(LSTEvent *event, unsigned int T3)
std::vector< unsigned int > getPixelHitsFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getHitTypesFrompT3(LSTEvent *event, unsigned int pT3)
ModulesSoALayout<> ModulesSoA
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFrompLS(LSTEvent *event, unsigned pLS)
std::vector< unsigned int > getHitsFromT5(LSTEvent *event, unsigned int T5)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFromTC(LSTEvent *event, unsigned iTC)
std::vector< unsigned int > getLSsFromT3(LSTEvent *event, unsigned int t3)
std::vector< unsigned int > getHitTypesFromT5(LSTEvent *event, unsigned int T5)
std::vector< unsigned int > getMDsFrompT3(LSTEvent *event, unsigned int pT3)
std::vector< unsigned int > getHitIdxsFrompT5(LSTEvent *event, unsigned int pT5)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFromT5(LSTEvent *event, unsigned T5)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFrompT3(LSTEvent *event, unsigned pT3)
unsigned int getT5FrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getT3sFromT5(LSTEvent *event, unsigned int t5)
std::vector< unsigned int > getMDsFromLS(LSTEvent *event, unsigned int LS)
std::vector< unsigned int > getHitIdxsFrompT3(LSTEvent *event, unsigned int pT3)
SegmentsSoALayout<> SegmentsSoA
std::vector< unsigned int > getHitIdxsFromT5(LSTEvent *event, unsigned int T5)
std::vector< unsigned int > getLSsFrompT5(LSTEvent *event, unsigned int pT5)
QuintupletsSoALayout<> QuintupletsSoA
std::vector< unsigned int > getT3sFrompT5(LSTEvent *event, unsigned int pT5)
unsigned int getPixelLSFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getMDsFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getHitsFrompT5(LSTEvent *event, unsigned int pT5)
unsigned int getPixelLSFrompT3(LSTEvent *event, unsigned int pT3)
std::vector< unsigned int > getPixelHitsFrompLS(LSTEvent *event, unsigned int pLS)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFromMD(LSTEvent *event, unsigned MD)
MiniDoubletsSoA::ConstView MiniDoubletsConst
std::vector< unsigned int > getPixelHitIdxsFrompLS(LSTEvent *event, unsigned int pLS)
std::vector< unsigned int > getModuleIdxsFrompT3(LSTEvent *event, unsigned int pT3)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFrompT5(LSTEvent *event, unsigned pT5)
std::vector< unsigned int > getPixelHitTypesFrompLS(LSTEvent *event, unsigned int pLS)
MiniDoubletsSoALayout<> MiniDoubletsSoA
std::vector< unsigned int > getPixelHitsFrompT3(LSTEvent *event, unsigned int pT3)
std::vector< unsigned int > getHitTypesFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getMDsFromT5(LSTEvent *event, unsigned int T5)
std::vector< unsigned int > getMDsFromT3(LSTEvent *event, unsigned int T3)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFromT3(LSTEvent *event, unsigned T3)
std::vector< unsigned int > getLSsFromTC(LSTEvent *event, unsigned int iTC)
std::vector< unsigned int > getHitsFromMD(LSTEvent *event, unsigned int MD)
std::vector< unsigned int > getOuterTrackerHitsFrompT3(LSTEvent *event, unsigned int pT3)
std::vector< unsigned int > getLSsFrompT3(LSTEvent *event, unsigned int pT3)
unsigned int getT3FrompT3(LSTEvent *event, unsigned int pT3)
SegmentsSoA::ConstView SegmentsConst
std::vector< unsigned int > getOuterTrackerHitsFrompT5(LSTEvent *event, unsigned int pT5)
std::vector< unsigned int > getLSsFromT5(LSTEvent *event, unsigned int T5)
TripletsSoALayout<> TripletsSoA
std::vector< unsigned int > getHitsFrompT3(LSTEvent *event, unsigned int pT3)
std::vector< unsigned int > getHitsFromLS(LSTEvent *event, unsigned int LS)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > convertHitsToHitIdxsAndHitTypes(LSTEvent *event, std::vector< unsigned int > hits)
std::tuple< std::vector< unsigned int >, std::vector< unsigned int > > getHitIdxsAndHitTypesFromLS(LSTEvent *event, unsigned LS)