Definition at line 147 of file CastorDataIntegrityMonitor.cc.
References HcalDCCHeader::BOEshouldBe5Always(), HcalDCCHeader::BOEshouldBeZeroAlways(), CDFEventType_list, CDFEvT_it, CDFProbThisDCC, CDFReservedBits_it, CDFReservedBits_list, CDFvers_it, CDFversionNumber_list, FEDTrailer::check(), HcalHTRData::check(), gather_cfg::cout, FEDRawData::data(), dccid, fedEntries, fedFatal, MonitorElement::Fill(), CastorBaseMonitor::fVerbosity, HcalDCCHeader::getCDFEventType(), HcalDCCHeader::getCDFversionNumber(), HcalDCCHeader::getLRBErrorBits(), HcalDCCHeader::getSlink64ReservedBits(), HcalDCCHeader::getSourceId(), HcalDCCHeader::getSpigotCRCError(), HcalDCCHeader::getSpigotData(), HcalDCCHeader::getSpigotDataLength(), HcalDCCHeader::getSpigotDataTruncated(), HcalDCCHeader::getSpigotEnabled(), HcalDCCHeader::getSpigotPresent(), HcalHTRData::isHistogramEvent(), FEDTrailer::lenght(), FEDTrailer::moreTrailers(), problemsSpigot, FEDRawData::size(), HcalDCCHeader::SPIGOT_COUNT, spigotStatus, HcalDCCHeader::thereIsASecondCDFHeaderWord(), and HcalDCCHeader::thereIsAThirdCDFHeaderWord().
Referenced by processEvent().
152 if(!dccHeader)
return;
155 unsigned char* trailer_ptr = (
unsigned char*) (raw.
data()+raw.
size()-
sizeof(
uint64_t));
252 if (!trailer.
check())
273 int WholeErrorList=0;
285 if (
dccid==693)
continue;
289 if (WholeErrorList!=0) {
291 if ((WholeErrorList>>0)&0x01) {
297 if (((WholeErrorList>>1)&0x01)!=0) {
298 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: error ==> Uncorrected Error" << std::endl;
303 if (((WholeErrorList>>2)&0x01)!=0) {
304 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: error ==> Truncated data coming into LRB" << std::endl;
309 if (((WholeErrorList>>3)&0x01)!=0) {
310 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor: error ==>: FIFO Overflow" << std::endl;
315 if (((WholeErrorList>>4)&0x01)!=0) {
316 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: error ==> (EvN Mismatch), htr payload metadeta" << std::endl;
321 if (((WholeErrorList>>5)&0x01)!=0) {
322 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: error ==> STatus: hdr/data/trlr error" << std::endl;
327 if (((WholeErrorList>>6)&0x01)!=0) {
328 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: error ==> ODD 16-bit word count from HT error" << std::endl;
338 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: HTR Problem: Spigot Not Present"<<std::endl;
344 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: HTR Problem: Spigot Data Truncated"<<std::endl;
349 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: HTR Problem: Spigot CRC Error"<<std::endl;
354 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: HTR Problem: Spigot Data Length too small"<<std::endl;
360 if(
fVerbosity>0)
std::cout<<
"CastorDataIntegrityMonitor:: Invalid HTR data (data beyond payload size) observed on spigot " << spigot
361 <<
" of DCC with source id " << dccHeader->
getSourceId()<< std::endl;
367 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: Invalid HTR data observed on spigot " << spigot <<
" of DCC with source id " << dccHeader->
getSourceId() << std::endl;
373 if(
fVerbosity>0)
std::cout <<
"CastorDataIntegrityMonitor:: Histogram data passed to non-histogram unpacker on spigot " << spigot <<
" of DCC with source id "
std::map< int, short > CDFEventType_list
bool check() const
Check for a good event Requires a minimum length, matching wordcount and length, not an empty event...
int problemsSpigot[15][3]
MonitorElement * fedFatal
size_t size() const
Lenght of the data buffer in bytes.
std::map< int, short >::iterator CDFvers_it
std::map< int, short > CDFReservedBits_list
std::map< int, short >::iterator CDFReservedBits_it
unsigned long long uint64_t
int lenght()
The length of the event fragment counted in 64-bit words including header and trailer.
std::map< int, short > CDFversionNumber_list
std::map< int, short >::iterator CDFEvT_it
const unsigned char * data() const
Return a const pointer to the beginning of the data buffer.
MonitorElement * fedEntries
bool isHistogramEvent() const
Is this event a histogram event? (do not call standard unpack in this case!!!!!)