5 #ifndef PIXELATHERRORMONTOOL_H
6 #define PIXELATHERRORMONTOOL_H
30 static const int kNumErrorStatesFEI3 {
33 static const int kNumErrorStatesFEI4 {
36 static const int kNumErrorStatesPerFE {
42 static constexpr std::array<const char*, kNumErrorStatesFEI3> error_names_stateFEI3 {
45 "RODSyncLVL1IDErrors",
47 "ModSyncLVL1IDErrors",
50 "ModTruncEoEOverflowErrors",
51 "ModTruncHitOverflowErrors",
57 "RODTrailerBitErrors",
58 "RODTruncHTLimitErrors",
62 static constexpr std::array<const char*, kNumErrorStatesFEI4> error_names_stateFEI4 {
71 "SR0BCIDCounterErrors",
72 "SR1HammingCode0Errors",
73 "SR2HammingCode1Errors",
74 "SR3HammingCode2Errors",
75 "SR4L1InCounterErrors",
76 "SR5L1RequestCounterErrors",
77 "SR6L1RegisterErrors",
78 "SR7L1TriggerIDErrors",
79 "SR8FEReadoutProcessErrors",
80 "SR15SkipppedTrigCountErrors",
81 "SR16TruncatedEventFlagErrors",
82 "SR24TripleRedundantErrorsCNFGMEM",
83 "SR25WriteRegDataErrors",
85 "SR27OtherCMDDecoderErrors",
86 "SR28CMDDecoderBitflipErrors",
87 "SR29TripleRedundantErrorsCMD",
88 "SR30DataBusAddressErrors",
89 "SR31TripleRedundantErrorsEFUSE"
92 static constexpr std::array<const char*, ErrorCategoryRODMOD::COUNT> error_names_cat_rodmod {
97 "OpticalErrorsRODMod",
102 static constexpr std::array<const char*, 4> error_names_cat_rodmod_norm {
103 "SyncErrorsModFracPerEvent",
104 "SyncErrorsRODFracPerEvent",
105 "TruncErrorsModFracPerEvent",
106 "TruncErrorsRODFracPerEvent"
109 static constexpr std::array<const char*, ErrorCategory::COUNT> error_names_cat {
117 static constexpr std::array<const char*, ErrorCategory::COUNT> error_names_cat_norm {
118 "SyncErrorsFracPerEvent",
119 "TruncationErrorsFracPerEvent",
120 "OpticalErrorsFracPerEvent",
121 "SEUErrorsFracPerEvent",
122 "TimeoutErrorsFracPerEvent"
126 kNumErrorStatesFEI3, kNumErrorStatesFEI3, kNumErrorStatesFEI3, kNumErrorStatesFEI3,
127 kNumErrorStatesFEI3, kNumErrorStatesFEI4, kNumErrorStatesFEI4
129 static const int kNumErrorCatRODMods {
133 kNumErrorCatRODMods, kNumErrorCatRODMods, kNumErrorCatRODMods, kNumErrorCatRODMods,
134 kNumErrorCatRODMods, kNumErrorCatRODMods, kNumErrorCatRODMods
137 static const int nFEIBL2D {
160 {
this,
"PixelByteStreamErrs",
"PixelByteStreamErrs",
"PixelByteStreamErrs container key"};
162 {
this,
"UseByteStreamFEI4",
false,
"Switch of the ByteStream error for FEI4"};
164 {
this,
"UseByteStreamFEI3",
false,
"Switch of the ByteStream error for FEI3"};
166 {
this,
"UseByteStreamRD53",
false,
"Switch of the ByteStream error for RD53"};