CMS 3D CMS Logo

SegmentsSoA.h
Go to the documentation of this file.
1 #ifndef RecoTracker_LSTCore_interface_SegmentsSoA_h
2 #define RecoTracker_LSTCore_interface_SegmentsSoA_h
3 
6 
8 
9 namespace lst {
10 
11  GENERATE_SOA_LAYOUT(SegmentsSoALayout,
12  SOA_COLUMN(FPX, dPhis),
13  SOA_COLUMN(FPX, dPhiMins),
14  SOA_COLUMN(FPX, dPhiMaxs),
15  SOA_COLUMN(FPX, dPhiChanges),
16  SOA_COLUMN(FPX, dPhiChangeMins),
17  SOA_COLUMN(FPX, dPhiChangeMaxs),
18  SOA_COLUMN(uint16_t, innerLowerModuleIndices),
19  SOA_COLUMN(uint16_t, outerLowerModuleIndices),
21  SOA_COLUMN(unsigned int, innerMiniDoubletAnchorHitIndices),
22  SOA_COLUMN(unsigned int, outerMiniDoubletAnchorHitIndices))
23 
25  SOA_COLUMN(unsigned int, nSegments), //number of segments per inner lower module
26  SOA_COLUMN(unsigned int, totOccupancySegments))
27 
29  SOA_COLUMN(unsigned int, seedIdx),
30  SOA_COLUMN(int, charge),
31  SOA_COLUMN(int, superbin),
32  SOA_COLUMN(uint4, pLSHitsIdxs),
33  SOA_COLUMN(PixelType, pixelType),
34  SOA_COLUMN(char, isQuad),
35  SOA_COLUMN(char, isDup),
36  SOA_COLUMN(bool, partOfPT5),
37  SOA_COLUMN(float, ptIn),
38  SOA_COLUMN(float, ptErr),
39  SOA_COLUMN(float, px),
40  SOA_COLUMN(float, py),
41  SOA_COLUMN(float, pz),
42  SOA_COLUMN(float, etaErr),
43  SOA_COLUMN(float, eta),
44  SOA_COLUMN(float, phi),
45  SOA_COLUMN(float, score),
46  SOA_COLUMN(float, circleCenterX),
47  SOA_COLUMN(float, circleCenterY),
48  SOA_COLUMN(float, circleRadius))
49 
53 
54  using Segments = SegmentsSoA::View;
55  using SegmentsConst = SegmentsSoA::ConstView;
59  using SegmentsPixelConst = SegmentsPixelSoA::ConstView;
60 
61 } // namespace lst
62 
63 #endif
Definition: Common.h:15
PixelType
Definition: Common.h:18
#define GENERATE_SOA_LAYOUT(CLASS,...)
Definition: SoALayout.h:431
float FPX
Definition: Common.h:51
#define SOA_COLUMN(TYPE, NAME)
Definition: SoACommon.h:564
edm::StdArray< unsigned int, kLayers > ArrayUxLayers
Definition: Common.h:75