ATLAS Offline Software
Loading...
Searching...
No Matches
ChanCalibErrorCode.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGT1CALOCALIBCONDITIONS_CHANCALIBERRORCODE_H
6#define TRIGT1CALOCALIBCONDITIONS_CHANCALIBERRORCODE_H
7
9
10#include <string>
11#include <iosfwd>
12
20
22
23 friend std::ostream& operator<<(std::ostream& output, const ChanCalibErrorCode& r);
24
25public:
26
28 // Bits 0-3 common for all calibrations
32
33 // Specific bits (4-15) for PPM calibrations
34
35 // PPM DAC scan
40
41 // PPM pedestal run
45
46 // PPM PHOS4 Scan
54
55
56 // Specific bits (4-15) for CPM calibrations
57 // (none defined yet)
58
59 // Specific bits (4-15) for JEM calibrations
64
65 // Specific bits (4-15) for CMM calibrations
66 // (none defined yet)
67
68 // Bits 16-31 are used as copies of 0-3
69 // for component calibrations when combined
70 // several results into one validated folder.
71 };
72
74 // NB the maximum allowed value here is 7.
75 // Components of PPrChanCalib folder.
83 };
84
85
86 // Identifies the various sets of specific bits
87 // (only used for printing the meaning of the bits).
89 PPM=0,
90 CPM=1,
91 JEM=2,
93 };
94
96 ChanCalibErrorCode(unsigned int errorCode);
98
103
105 unsigned int errorCode(ChanErrorComponent component) const;
106
107 bool chanValid() const;
108 bool chanValid(ChanErrorComponent component) const;
109
110 bool noData() const { return bitIsSet(NoDataBit); }
111 void noData(bool nodata) { setBit(NoDataBit,nodata); }
112
113 bool badData() const { return bitIsSet(BadDataBit); }
114 void badData(bool bad) { setBit(BadDataBit,bad); }
115
116 bool badResult() const { return bitIsSet(BadResultBit); }
118
121
124
127
130
131 bool pedRunBadMean() const { return bitIsSet(PedRunBadMeanBit); }
133
134 bool pedRunBadSigma() const { return bitIsSet(PedRunBadSigmaBit); }
136
139
142
145
148
151
154
157
160
163
166
167 bool exceededDelay() const { return bitIsSet(ExceededDelayBit); }
168 void exceededDelay(bool exceeded ){ setBit(ExceededDelayBit,exceeded); setBad(); }
169
171 void exceededDelayAfterCorr(bool exceeded ) { setBit(ExceededDelayAfterCorrBit,exceeded); setBad(); }
172
173 std::string printStatus(ChanErrorSet spec) const;
174
175protected:
176 void setBad() { setBit(BadDataBit,true); }
177};
178
179#endif
180
181
bool bitIsSet(unsigned int number) const
void setBit(unsigned int number, bool value)
AbstractErrorCode(unsigned int errorCode)
ChanCalibErrorCode class for L1Calo error codes Adapted from /LVL1/l1calo/coolL1Calo/coolL1Calo/ChanE...
bool chanValid() const
Checks if channel is valid, ie.
void pedRunBadSigma(bool bad)
void pedRunBadMean(bool bad)
std::string printStatus(ChanErrorSet spec) const
bool phos4ScanBadWidth() const
void phos4ScanSignalSaturated(bool bad)
bool phos4ScanBadSignal() const
bool dacScanBadCorrCoeff() const
bool dacScanBadAdcDistrib() const
void phos4ScanBadSignal(bool bad)
bool phos4ScanBadSignalShape() const
void exceededDelayAfterCorr(bool exceeded)
void dacScanBadAdcDistrib(bool bad)
friend std::ostream & operator<<(std::ostream &output, const ChanCalibErrorCode &r)
void distToErrorRegionUndercut(bool undercut)
void exceededDelay(bool exceeded)
unsigned int errorCode() const
bool totalWindowSizeUndercut() const
bool dacScanBadOffset() const
unsigned int errorCode(ChanErrorComponent component) const
void dacScanBadOffset(bool bad)
void noData(bool nodata)
bool distToErrorRegionUndercut() const
void totalWindowSizeUndercut(bool undercut)
bool pedRunBadAdcDistrib() const
void phos4ScanBadRiseTime(bool bad)
void dacScanBadSlope(bool bad)
ChanCalibErrorCode & operator=(const ChanCalibErrorCode &e)
void phos4ScanBadAdcDistrib(bool bad)
bool phos4ScanBadRiseTime() const
bool exceededDelayAfterCorr() const
ChanCalibErrorCode & operator=(ChanCalibErrorCode &&) noexcept=default
void pedRunBadAdcDistrib(bool bad)
bool phos4ScanSignalSaturated() const
void dacScanBadCorrCoeff(bool bad)
bool phos4ScanNoSignal() const
bool phos4ScanBadAdcDistrib() const
void phos4ScanBadSignalShape(bool bad)
void phos4ScanBadWidth(bool bad)
void phos4ScanNoSignal(bool bad)
int r
Definition globals.cxx:22