17 int CRC_BIT = (*trailer >> CRC_shift) & CRC_mask;
21 LogDebug(
"CRCCheck") <<
"CRC check failed, errorType = 39";
24 errors[dummyDetId].emplace_back(*trailer, errorType,
fedId);
31 if (!fedHeader.
check())
34 LogDebug(
"CTPPSPixelDataFormatter::interpretRawData, fedHeader.sourceID() != fedId")
35 <<
", sourceID = " << fedHeader.
sourceID() <<
", fedId = " <<
fedId <<
", errorType = 32";
47 FEDTrailer fedTrailer(reinterpret_cast<const unsigned char*>(trailer));
48 if (!fedTrailer.
check()) {
51 errors[dummyDetId].emplace_back(*trailer, errorType,
fedId);
54 LogDebug(
"FedTrailerCheck") <<
"fedTrailer.check failed, Fed: " <<
fedId <<
", errorType = 33";
58 LogDebug(
"FedTrailerLenght") <<
"fedTrailer.fragmentLength()!= nWords !! Fed: " <<
fedId <<
", errorType = 34";
62 errors[dummyDetId].emplace_back(*trailer, errorType,
fedId);
76 LogDebug(
"") <<
" invalid ROC=25 found (errorType=25)";
81 LogDebug(
"") <<
" gap word found (errorType=26)";
85 LogDebug(
"") <<
" dummy word found (errorType=27)";
89 LogDebug(
"") <<
" error fifo nearly full (errorType=28)";
94 LogDebug(
"") <<
" timeout on a channel (errorType=29)";
97 LogDebug(
"") <<
" ...first errorType=29 error, this gets masked out";
103 LogDebug(
"") <<
" TBM error trailer (errorType=30)";
104 errorsInEvent =
true;
108 LogDebug(
"") <<
" event number error (errorType=31)";
109 errorsInEvent =
true;
116 if (includeErrors_) {
118 if (errorType == 30) {
119 uint32_t stateMach_bits = 4;
120 uint32_t stateMach_shift = 8;
121 uint32_t stateMach_mask = ~(~uint32_t(0) << stateMach_bits);
122 uint32_t stateMach = (errorWord >> stateMach_shift) & stateMach_mask;
123 if (stateMach == 4 || stateMach == 9)
128 errors[iD].emplace_back(errorWord, errorType,
fedId);
140 LogDebug(
"ErrorChecker::conversionError") <<
" Fed: " <<
fedId <<
" invalid channel Id (errorType=35)";
145 LogDebug(
"ErrorChecker::conversionError") <<
" Fed: " <<
fedId <<
" invalid ROC Id (errorType=36)";
150 LogDebug(
"ErrorChecker::conversionError") <<
" Fed: " <<
fedId <<
" invalid dcol/pixel value (errorType=37)";
156 LogDebug(
"ErrorChecker::conversionError") <<
" cabling check returned unexpected result, status = " <<
state;
159 if (includeErrors_ && errorType > 0)
160 errors[iD].emplace_back(errorWord, errorType,
fedId);