CMS 3D CMS Logo

HcalMahiConditionsSoA.h
Go to the documentation of this file.
1 #ifndef CondFormats_HcalObjects_HcalMahiConditionsSoA_h
2 #define CondFormats_HcalObjects_HcalMahiConditionsSoA_h
3 
5 
9 
10 #include <array>
11 
12 namespace hcal {
13 
14  static constexpr uint32_t numValuesPerChannel = 16;
15  using HcalPedestalArray = std::array<float, 4>; // 4 capIds
16  using HcalQIECodersArray = std::array<float, numValuesPerChannel>; // QIEData
17 
19  SOA_COLUMN(HcalPedestalArray, pedestals_value),
20  SOA_COLUMN(HcalPedestalArray, pedestals_width),
21  SOA_COLUMN(HcalPedestalArray, gains_value),
22  SOA_COLUMN(HcalPedestalArray, effectivePedestals),
23  SOA_COLUMN(HcalPedestalArray, effectivePedestalWidths),
24  SOA_COLUMN(float, lutCorrs_values),
25  SOA_COLUMN(float, respCorrs_values),
26  SOA_COLUMN(float, timeCorrs_values),
27  // Use EIGEN_COLUMN for matrix?
28  SOA_COLUMN(float, pedestalWidths_sigma00),
29  SOA_COLUMN(float, pedestalWidths_sigma01),
30  SOA_COLUMN(float, pedestalWidths_sigma02),
31  SOA_COLUMN(float, pedestalWidths_sigma03),
32  SOA_COLUMN(float, pedestalWidths_sigma10),
33  SOA_COLUMN(float, pedestalWidths_sigma11),
34  SOA_COLUMN(float, pedestalWidths_sigma12),
35  SOA_COLUMN(float, pedestalWidths_sigma13),
36  SOA_COLUMN(float, pedestalWidths_sigma20),
37  SOA_COLUMN(float, pedestalWidths_sigma21),
38  SOA_COLUMN(float, pedestalWidths_sigma22),
39  SOA_COLUMN(float, pedestalWidths_sigma23),
40  SOA_COLUMN(float, pedestalWidths_sigma30),
41  SOA_COLUMN(float, pedestalWidths_sigma31),
42  SOA_COLUMN(float, pedestalWidths_sigma32),
43  SOA_COLUMN(float, pedestalWidths_sigma33),
44  SOA_COLUMN(float, gainWidths_value0),
45  SOA_COLUMN(float, gainWidths_value1),
46  SOA_COLUMN(float, gainWidths_value2),
47  SOA_COLUMN(float, gainWidths_value3),
48  SOA_COLUMN(uint32_t, channelQuality_status),
49  SOA_COLUMN(HcalQIECodersArray, qieCoders_offsets),
50  SOA_COLUMN(HcalQIECodersArray, qieCoders_slopes),
51  SOA_COLUMN(int, qieTypes_values),
52  SOA_COLUMN(int, sipmPar_type),
53  SOA_COLUMN(int, sipmPar_auxi1),
54  SOA_COLUMN(float, sipmPar_fcByPE),
55  SOA_COLUMN(float, sipmPar_darkCurrent),
56  SOA_COLUMN(float, sipmPar_auxi2),
57  SOA_SCALAR(int, maxDepthHB),
58  SOA_SCALAR(int, maxDepthHE),
59  SOA_SCALAR(int, maxPhiHE),
60  SOA_SCALAR(int, firstHBRing),
61  SOA_SCALAR(int, lastHBRing),
62  SOA_SCALAR(int, firstHERing),
63  SOA_SCALAR(int, lastHERing),
64  SOA_SCALAR(int, nEtaHB),
65  SOA_SCALAR(int, nEtaHE),
66  SOA_SCALAR(uint32_t, offsetForHashes))
68 
69 } // namespace hcal
70 
71 #endif
std::array< float, 4 > HcalPedestalArray
#define GENERATE_SOA_LAYOUT(CLASS,...)
Definition: SoALayout.h:431
#define SOA_SCALAR(TYPE, NAME)
Definition: SoACommon.h:563
std::array< float, numValuesPerChannel > HcalQIECodersArray
static constexpr uint32_t numValuesPerChannel
#define SOA_COLUMN(TYPE, NAME)
Definition: SoACommon.h:564