#include <SiStripFEDBuffer.h>
Public Member Functions | |
virtual bool | channelGood (const uint8_t internalFEDannelNum, const bool doAPVeCheck=true) const |
bool | checkAllChannelStatusBits () const |
bool | checkChannelLengths () const |
bool | checkChannelLengthsMatchBufferLength () const |
bool | checkChannelPacketCodes () const |
bool | checkFEPayloadsPresent () const |
bool | checkFEUnitAPVAddresses () const |
bool | checkFEUnitLengths () const |
bool | checkStatusBits (const uint8_t internalFEDChannelNum) const |
bool | checkStatusBits (const uint8_t internalFEUnitNum, const uint8_t internalChannelNum) const |
std::string | checkSummary () const override |
virtual bool | doChecks (bool doCRC=true) const |
virtual bool | doCorruptBufferChecks () const |
FEDBuffer (const uint8_t *fedBuffer, const uint16_t fedBufferSize, const bool allowBadBuffer=false) | |
bool | feGood (const uint8_t internalFEUnitNum) const |
bool | feGoodWithoutAPVEmulatorCheck (const uint8_t internalFEUnitNum) const |
const FEDFEHeader * | feHeader () const |
bool | fePresent (uint8_t internalFEUnitNum) const |
void | print (std::ostream &os) const override |
void | setLegacyMode (bool legacy) |
~FEDBuffer () override | |
Public Member Functions inherited from sistrip::FEDBufferBase | |
uint8_t | apveAddress () const |
FEDBufferFormat | bufferFormat () const |
size_t | bufferSize () const |
uint16_t | calcCRC () const |
const FEDChannel & | channel (const uint8_t internalFEDChannelNum) const |
const FEDChannel & | channel (const uint8_t internalFEUnitNum, const uint8_t internalChannelNum) const |
virtual bool | channelGood (const uint8_t internalFEDChannelNum) const |
bool | channelGood (const uint8_t internalFEUnitNum, const uint8_t internalChannelNum) const |
bool | checkAPVEAddressValid () const |
bool | checkBufferFormat () const |
bool | checkCRC () const |
bool | checkHeaderType () const |
bool | checkLengthFromTrailer () const |
bool | checkMajorityAddresses () const |
bool | checkNoExtraHeadersOrTrailers () const |
bool | checkNoFEOverflows () const |
bool | checkNoSlinkCRCError () const |
bool | checkNoSLinkTransmissionError () const |
bool | checkNoUnexpectedSourceID () const |
bool | checkReadoutMode () const |
bool | checkSourceIDs () const |
uint16_t | daqBXID () const |
uint16_t | daqCRC () const |
uint32_t | daqEventLengthIn64bitWords () const |
uint32_t | daqEventLengthInBytes () const |
FEDDAQEventType | daqEventType () const |
FEDDAQHeader | daqHeader () const |
uint32_t | daqLvl1ID () const |
uint16_t | daqSourceID () const |
FEDDAQTrailer | daqTrailer () const |
FEDTTSBits | daqTTSState () const |
virtual bool | doChecks () const |
bool | doDAQHeaderAndTrailerChecks () const |
bool | doTrackerSpecialHeaderChecks () const |
void | dump (std::ostream &os) const |
void | dumpOriginalBuffer (std::ostream &os) const |
FEDBufferBase (const uint8_t *fedBuffer, const size_t fedBufferSize, const bool allowUnrecognizedFormat=false) | |
FEDStatusRegister | fedStatusRegister () const |
bool | feEnabled (const uint8_t internalFEUnitNum) const |
bool | feOverflow (const uint8_t internalFEUnitNum) const |
FEDHeaderType | headerType () const |
FEDLegacyReadoutMode | legacyReadoutMode () const |
bool | majorityAddressErrorForFEUnit (const uint8_t internalFEUnitNum) const |
uint8_t | nFEUnitsEnabled () const |
uint8_t | packetCode (bool legacy=false, const uint8_t internalFEDChannelNum=0) const |
FEDReadoutMode | readoutMode () const |
uint16_t | sourceID () const |
TrackerSpecialHeader | trackerSpecialHeader () const |
virtual | ~FEDBufferBase () |
Private Member Functions | |
uint16_t | calculateFEUnitLength (const uint8_t internalFEUnitNumber) const |
void | findChannels () |
uint8_t | getCorrectPacketCode () const |
uint8_t | nFEUnitsPresent () const |
Private Attributes | |
std::unique_ptr< FEDFEHeader > | feHeader_ |
bool | fePresent_ [FEUNITS_PER_FED] |
bool | legacyUnpacker_ =false |
uint16_t | payloadLength_ |
const uint8_t * | payloadPointer_ |
uint8_t | validChannels_ |
Additional Inherited Members | |
Protected Member Functions inherited from sistrip::FEDBufferBase | |
FEDBufferBase (const uint8_t *fedBuffer, const size_t fedBufferSize, const bool allowUnrecognizedFormat, const bool fillChannelVector) | |
const uint8_t * | getPointerToByteAfterEndOfPayload () const |
const uint8_t * | getPointerToDataAfterTrackerSpecialHeader () const |
Protected Attributes inherited from sistrip::FEDBufferBase | |
std::vector< FEDChannel > | channels_ |
Definition at line 23 of file SiStripFEDBuffer.h.
sistrip::FEDBuffer::FEDBuffer | ( | const uint8_t * | fedBuffer, |
const uint16_t | fedBufferSize, | ||
const bool | allowBadBuffer = false |
||
) |
Definition at line 12 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::channels_, MillePedeFileConverter_cfg::e, Exception, sistrip::FEDStatusRegister::feDataMissingFlag(), sistrip::FEDCH_PER_FED, sistrip::FEDBufferBase::fedStatusRegister(), feHeader_, sistrip::FEDFullDebugHeader::fePresent(), fePresent_, sistrip::FEUNITS_PER_FED, findChannels(), sistrip::FEDBufferBase::getPointerToByteAfterEndOfPayload(), sistrip::FEDBufferBase::getPointerToDataAfterTrackerSpecialHeader(), sistrip::HEADER_TYPE_INVALID, sistrip::HEADER_TYPE_NONE, sistrip::FEDBufferBase::headerType(), sistrip::TrackerSpecialHeader::headerTypeNibble(), sistrip::FEDFEHeader::newFEHeader(), payloadLength_, payloadPointer_, sistrip::printHex(), sistrip::READOUT_MODE_SPY, sistrip::FEDBufferBase::readoutMode(), sistrip::FEDBufferBase::trackerSpecialHeader(), and validChannels_.
|
override |
Definition at line 67 of file SiStripFEDBuffer.cc.
|
private |
Definition at line 289 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::channels_, sistrip::FEDCH_PER_FEUNIT, and sistrip::internalFEDChannelNum().
Referenced by checkFEUnitLengths(), checkSummary(), and getCorrectPacketCode().
|
virtual |
Definition at line 156 of file SiStripFEDBuffer.cc.
References checkStatusBits(), sistrip::FEDCH_PER_FEUNIT, feGood(), feGoodWithoutAPVEmulatorCheck(), sistrip::READOUT_MODE_SCOPE, sistrip::FEDBufferBase::readoutMode(), and validChannels_.
Referenced by checkChannelPacketCodes(), and SiStripClusterizerFromRaw::run().
bool sistrip::FEDBuffer::checkAllChannelStatusBits | ( | ) | const |
Definition at line 186 of file SiStripFEDBuffer.cc.
References checkStatusBits(), sistrip::FEDCH_PER_FED, sistrip::FEDCH_PER_FEUNIT, and feGood().
Referenced by checkSummary(), and setLegacyMode().
bool sistrip::FEDBuffer::checkChannelLengths | ( | ) | const |
Definition at line 201 of file SiStripFEDBuffer.cc.
References sistrip::FEDCH_PER_FED, and validChannels_.
Referenced by checkChannelLengthsMatchBufferLength(), and setLegacyMode().
bool sistrip::FEDBuffer::checkChannelLengthsMatchBufferLength | ( | ) | const |
Definition at line 206 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::channels_, checkChannelLengths(), sistrip::FEDCH_PER_FEUNIT, sistrip::FEDBufferBase::feEnabled(), fePresent(), sistrip::internalFEDChannelNum(), sistrip::FEDChannel::length(), sistrip::FEDChannel::offset(), and payloadLength_.
Referenced by checkSummary(), doCorruptBufferChecks(), and setLegacyMode().
bool sistrip::FEDBuffer::checkChannelPacketCodes | ( | ) | const |
Definition at line 235 of file SiStripFEDBuffer.cc.
References channelGood(), sistrip::FEDBufferBase::channels_, sistrip::FEDCH_PER_FED, sistrip::FEDCH_PER_FEUNIT, feGood(), getCorrectPacketCode(), and sistrip::FEDBufferBase::packetCode().
Referenced by checkSummary(), doCorruptBufferChecks(), and setLegacyMode().
bool sistrip::FEDBuffer::checkFEPayloadsPresent | ( | ) | const |
Definition at line 299 of file SiStripFEDBuffer.cc.
References fePresent(), and sistrip::FEUNITS_PER_FED.
Referenced by checkSummary(), and setLegacyMode().
bool sistrip::FEDBuffer::checkFEUnitAPVAddresses | ( | ) | const |
Definition at line 256 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::apveAddress(), feGood(), feHeader_, sistrip::FEDFullDebugHeader::feUnitMajorityAddress(), and sistrip::FEUNITS_PER_FED.
Referenced by checkSummary(), and setLegacyMode().
bool sistrip::FEDBuffer::checkFEUnitLengths | ( | ) | const |
Definition at line 275 of file SiStripFEDBuffer.cc.
References calculateFEUnitLength(), feGood(), feHeader_, sistrip::FEDFullDebugHeader::feUnitLength(), and sistrip::FEUNITS_PER_FED.
Referenced by checkSummary(), doCorruptBufferChecks(), and setLegacyMode().
|
inline |
Definition at line 197 of file SiStripFEDBuffer.h.
References feHeader_.
Referenced by channelGood(), checkAllChannelStatusBits(), checkStatusBits(), checkSummary(), and setLegacyMode().
|
inline |
Definition at line 202 of file SiStripFEDBuffer.h.
References checkStatusBits(), and sistrip::internalFEDChannelNum().
|
overridevirtual |
Reimplemented from sistrip::FEDBufferBase.
Definition at line 307 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::apveAddress(), calculateFEUnitLength(), sistrip::FEDBufferBase::channels_, checkAllChannelStatusBits(), checkChannelLengthsMatchBufferLength(), checkChannelPacketCodes(), checkFEPayloadsPresent(), checkFEUnitAPVAddresses(), checkFEUnitLengths(), checkStatusBits(), sistrip::FEDBufferBase::checkSummary(), sistrip::FEDCH_PER_FED, sistrip::FEDCH_PER_FEUNIT, feGood(), feHeader_, fePresent(), sistrip::FEDFullDebugHeader::feUnitLength(), sistrip::FEDFullDebugHeader::feUnitMajorityAddress(), sistrip::FEUNITS_PER_FED, sistrip::FEDFullDebugHeader::getChannelStatus(), getCorrectPacketCode(), sistrip::HEADER_TYPE_FULL_DEBUG, sistrip::FEDBufferBase::headerType(), sistrip::FEDBufferBase::packetCode(), and heppy_report::summary.
Referenced by setLegacyMode().
|
virtual |
Definition at line 165 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::checkCRC(), sistrip::FEDBufferBase::doChecks(), sistrip::FEDCH_PER_FED, and validChannels_.
|
virtual |
Definition at line 176 of file SiStripFEDBuffer.cc.
References checkChannelLengthsMatchBufferLength(), checkChannelPacketCodes(), sistrip::FEDBufferBase::checkCRC(), and checkFEUnitLengths().
Referenced by setLegacyMode().
|
inline |
Definition at line 182 of file SiStripFEDBuffer.h.
References sistrip::FEDBufferBase::feOverflow(), fePresent(), and sistrip::FEDBufferBase::majorityAddressErrorForFEUnit().
Referenced by channelGood(), checkAllChannelStatusBits(), checkChannelPacketCodes(), checkFEUnitAPVAddresses(), checkFEUnitLengths(), and checkSummary().
|
inline |
Definition at line 187 of file SiStripFEDBuffer.h.
References sistrip::FEDBufferBase::feOverflow(), and fePresent().
Referenced by channelGood().
|
inline |
Definition at line 177 of file SiStripFEDBuffer.h.
References feHeader_.
Referenced by print(), and sistrip::RawToDigiUnpacker::updateEventSummary().
|
inline |
Definition at line 192 of file SiStripFEDBuffer.h.
References fePresent_.
Referenced by checkChannelLengthsMatchBufferLength(), checkFEPayloadsPresent(), checkSummary(), feGood(), feGoodWithoutAPVEmulatorCheck(), findChannels(), and nFEUnitsPresent().
|
private |
Definition at line 71 of file SiStripFEDBuffer.cc.
References sistrip::FEDBufferBase::channels_, Exception, SiStripFedKey::feChan(), sistrip::FEDCH_PER_FED, sistrip::FEDCH_PER_FEUNIT, sistrip::FEDBufferBase::feEnabled(), fePresent(), SiStripFedKey::feUnit(), mps_fire::i, crabWrapper::key, payloadLength_, payloadPointer_, sistrip::READOUT_MODE_PREMIX_RAW, sistrip::READOUT_MODE_ZERO_SUPPRESSED, sistrip::READOUT_MODE_ZERO_SUPPRESSED_FAKE, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE10, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE10_CMOVERRIDE, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8_BOTBOT, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8_BOTBOT_CMOVERRIDE, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8_CMOVERRIDE, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8_TOPBOT, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE8_TOPBOT_CMOVERRIDE, sistrip::FEDBufferBase::readoutMode(), UNLIKELY, and validChannels_.
Referenced by FEDBuffer(), and setLegacyMode().
|
inlineprivate |
Definition at line 78 of file SiStripFEDBuffer.h.
References calculateFEUnitLength(), legacyUnpacker_, and sistrip::FEDBufferBase::packetCode().
Referenced by checkChannelPacketCodes(), and checkSummary().
|
private |
Definition at line 392 of file SiStripFEDBuffer.cc.
References fePresent(), sistrip::FEUNITS_PER_FED, and mps_fire::result.
Referenced by print(), and setLegacyMode().
|
overridevirtual |
Reimplemented from sistrip::FEDBufferBase.
Definition at line 401 of file SiStripFEDBuffer.cc.
References feHeader(), sistrip::HEADER_TYPE_FULL_DEBUG, sistrip::FEDBufferBase::headerType(), nFEUnitsPresent(), and sistrip::FEDBufferBase::print().
|
inline |
Definition at line 42 of file SiStripFEDBuffer.h.
References checkAllChannelStatusBits(), checkChannelLengths(), checkChannelLengthsMatchBufferLength(), checkChannelPacketCodes(), checkFEPayloadsPresent(), checkFEUnitAPVAddresses(), checkFEUnitLengths(), checkStatusBits(), checkSummary(), sistrip::FEDBufferBase::doChecks(), doCorruptBufferChecks(), findChannels(), sistrip::internalFEDChannelNum(), legacyUnpacker_, nFEUnitsPresent(), and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by SiStripClusterizerFromRaw::run().
|
private |
Definition at line 80 of file SiStripFEDBuffer.h.
Referenced by checkFEUnitAPVAddresses(), checkFEUnitLengths(), checkStatusBits(), checkSummary(), FEDBuffer(), and feHeader().
|
private |
Definition at line 84 of file SiStripFEDBuffer.h.
Referenced by FEDBuffer(), and fePresent().
|
private |
Definition at line 85 of file SiStripFEDBuffer.h.
Referenced by getCorrectPacketCode(), and setLegacyMode().
|
private |
Definition at line 82 of file SiStripFEDBuffer.h.
Referenced by checkChannelLengthsMatchBufferLength(), FEDBuffer(), and findChannels().
|
private |
Definition at line 81 of file SiStripFEDBuffer.h.
Referenced by FEDBuffer(), and findChannels().
|
private |
Definition at line 83 of file SiStripFEDBuffer.h.
Referenced by channelGood(), checkChannelLengths(), doChecks(), FEDBuffer(), and findChannels().