#include <HcalUnpacker.h>
Classes | |
struct | Collections |
Public Member Functions | |
HcalUnpacker (int sourceIdOffset, int beg, int end) | |
for normal data More... | |
HcalUnpacker (int sourceIdOffset) | |
For histograms, no begin and end. More... | |
void | setExpectedOrbitMessageTime (int time) |
void | setMode (int mode) |
void | unpack (const FEDRawData &raw, const HcalElectronicsMap &emap, std::vector< HcalHistogramDigi > &histoDigis) |
void | unpack (const FEDRawData &raw, const HcalElectronicsMap &emap, Collections &conts, HcalUnpackerReport &report, bool silent=false) |
Private Member Functions | |
void | unpackUTCA (const FEDRawData &raw, const HcalElectronicsMap &emap, Collections &conts, HcalUnpackerReport &report, bool silent=false) |
void | unpackVME (const FEDRawData &raw, const HcalElectronicsMap &emap, Collections &conts, HcalUnpackerReport &report, bool silent=false) |
Private Attributes | |
int | endSample_ |
last sample from fed raw data to copy (if present) More... | |
int | expectedOrbitMessageTime_ |
Expected orbit bunch time (needed to evaluate time differences) More... | |
int | mode_ |
int | sourceIdOffset_ |
number to subtract from the source id to get the dcc id More... | |
int | startSample_ |
first sample from fed raw data to copy More... | |
std::set< HcalElectronicsId > | unknownIds_ |
std::set< HcalElectronicsId > | unknownIdsTrig_ |
Recorded to limit number of times a log message is generated. More... | |
Definition at line 20 of file HcalUnpacker.h.
|
inline |
for normal data
Definition at line 39 of file HcalUnpacker.h.
|
inline |
For histograms, no begin and end.
Definition at line 41 of file HcalUnpacker.h.
|
inline |
Definition at line 42 of file HcalUnpacker.h.
References expectedOrbitMessageTime_.
Referenced by HcalRawToDigi::HcalRawToDigi().
|
inline |
Definition at line 45 of file HcalUnpacker.h.
References alignBH_cfg::mode, and mode_.
Referenced by HcalRawToDigi::HcalRawToDigi().
void HcalUnpacker::unpack | ( | const FEDRawData & | raw, |
const HcalElectronicsMap & | emap, | ||
std::vector< HcalHistogramDigi > & | histoDigis | ||
) |
Definition at line 800 of file HcalUnpacker.cc.
References HcalHTRData::check(), FEDRawData::data(), DetId::det(), f, benchmark_cfg::fc, HcalHistogramDigi::getArray(), HcalHTRData::getHistogramFibers(), HcalDCCHeader::getSourceId(), HcalDCCHeader::getSpigotData(), HcalDCCHeader::getSpigotPresent(), HcalHTRData::getSubmodule(), DetId::Hcal, HcalHTRData::isHistogramEvent(), HcalElectronicsMap::lookup(), DetId::null(), HcalElectronicsId::setHTR(), FEDRawData::size(), sourceIdOffset_, HcalDCCHeader::SPIGOT_COUNT, DetId::subdetId(), unknownIds_, and HcalHTRData::unpackHistogram().
Referenced by HcalHistogramRawToDigi::produce(), and HcalRawToDigi::produce().
void HcalUnpacker::unpack | ( | const FEDRawData & | raw, |
const HcalElectronicsMap & | emap, | ||
Collections & | conts, | ||
HcalUnpackerReport & | report, | ||
bool | silent = false |
||
) |
Definition at line 173 of file HcalUnpacker.cc.
References HcalDCCHeader::BOEshouldBeZeroAlways(), FEDRawData::data(), FEDRawData::size(), unpackUTCA(), and unpackVME().
|
private |
Definition at line 553 of file HcalUnpacker.cc.
References HcalDataFrameContainer< Digi >::addDataFrame(), hcal::AMC13Header::AMCCRCOk(), hcal::AMC13Header::AMCDataPresent(), hcal::AMC13Header::AMCEnabled(), hcal::AMC13Header::AMCId(), hcal::AMC13Header::AMCPayload(), hcal::AMC13Header::AMCSegmented(), hcal::AMC13Header::AMCSize(), hcal::AMC13Header::AMCSlot(), HcalUnpacker::Collections::calibCont, DetId::Calo, HcalUHTRData::const_iterator::channelid(), HcalUnpackerReport::countSpigotFormatError(), HcalUnpackerReport::countUnmappedDigi(), HcalUnpackerReport::countUnmappedTPDigi(), gather_cfg::cout, FEDRawData::data(), DetId::det(), endSample_, HcalUHTRData::const_iterator::flavor(), HcalUHTRData::getRawLengthBytes(), HcalUnpacker::Collections::hbheCont, DetId::Hcal, HcalBarrel, HcalCalibration, HcalEmpty, HcalEndcap, HcalForward, HcalOther, HcalOuter, HcalUnpacker::Collections::hfCont, HcalUnpacker::Collections::hoCont, i, HcalUHTRData::const_iterator::isHeader(), j, HcalElectronicsMap::lookup(), HcalElectronicsMap::lookupTrigger(), hcal::AMC13Header::NAMC(), DetId::null(), HcalUnpacker::Collections::qie10, HcalUnpacker::Collections::qie11, HcalUHTRData::const_iterator::raw(), HcalDataFrameContainer< Digi >::samples(), HcalUHTRData::const_iterator::soi(), hcal::AMC13Header::sourceId(), startSample_, HcalOtherDetId::subdet(), HcalZDCDetId::SubdetectorId, DetId::subdetId(), HcalUnpacker::Collections::tpCont, HcalTrigTowerDetId::Undefined, unknownIds_, unknownIdsTrig_, HcalUHTRData::const_iterator::value(), and HcalUnpacker::Collections::zdcCont.
Referenced by unpack().
|
private |
work through the samples
branch point between 2006-2011 data format and 2012+ data format
work through the samples
Definition at line 194 of file HcalUnpacker.cc.
References HcalUnpacker::Collections::calibCont, DetId::Calo, HcalHTRData::check(), HOUnrolledTP::checked, HcalUnpackerReport::countBusySpigot(), HcalUnpackerReport::countEmptyEventSpigot(), HcalUnpackerReport::countOFWSpigot(), HcalUnpackerReport::countSpigotFormatError(), HcalUnpackerReport::countUnmappedDigi(), HcalUnpackerReport::countUnmappedTPDigi(), FEDRawData::data(), HcalHTRData::dataPointers(), DetId::det(), endSample_, expectedOrbitMessageTime_, benchmark_cfg::fc, HcalQIESample::fiber(), HcalQIESample::fiberAndChan(), HcalQIESample::fiberChan(), HcalHTRData::FORMAT_VERSION_COMPACT_DATA, HcalDCCHeader::getDCCDataFormatVersion(), HcalHTRData::getFirmwareFlavor(), HcalHTRData::getFormatVersion(), HcalHTRData::getNPS(), HcalDTCHeader::getSlotCRCError(), HcalDTCHeader::getSlotData(), HcalDTCHeader::getSlotPresent(), HcalDCCHeader::getSourceId(), HcalDTCHeader::getSourceId(), HcalDCCHeader::getSpigotCRCError(), HcalDCCHeader::getSpigotData(), HcalDCCHeader::getSpigotPresent(), HcalHTRData::getSubmodule(), HcalUnpacker::Collections::hbheCont, DetId::Hcal, HcalBarrel, HcalCalibration, HcalEmpty, HcalEndcap, HcalForward, HcalOther, HcalOuter, HcalUnpacker::Collections::hfCont, HcalUnpacker::Collections::hoCont, i, HcalDetId::ieta(), HOUnrolledTP::ieta, HcalDetId::iphi(), HOUnrolledTP::iphi, HcalHTRData::is_channel_header(), HcalHTRData::isBusy(), HcalHTRData::isEmptyEvent(), HcalHTRData::isHistogramEvent(), HcalHTRData::isOverflowWarning(), isTPGSOI(), HcalHTRData::isUnsuppressed(), linear(), LogDebug, HcalElectronicsMap::lookup(), HcalElectronicsMap::lookupTrigger(), HcalDTCHeader::MAXIMUM_SLOT, mode_, DetId::null(), HcalTriggerPrimitiveSample::raw(), HcalQIESample::raw(), HOUnrolledTP::samples, HOUnrolledTP::setbit(), HcalElectronicsId::setHTR(), FEDRawData::size(), slb(), slbAndChan(), slbChan(), HOUnrolledTP::soi, sourceIdOffset_, HcalDCCHeader::SPIGOT_COUNT, startSample_, HcalOtherDetId::subdet(), HcalZDCDetId::SubdetectorId, DetId::subdetId(), HcalUnpacker::Collections::tpCont, HcalUnpacker::Collections::tphoCont, HcalUnpacker::Collections::ttp, HcalTrigTowerDetId::Undefined, unknownIds_, unknownIdsTrig_, HcalTTPUnpacker::unpack(), HcalHTRData::unpack_per_channel_header(), HOUnrolledTP::valid, HcalHTRData::wasMarkAndPassZSTP(), and HcalUnpacker::Collections::zdcCont.
Referenced by unpack().
|
private |
last sample from fed raw data to copy (if present)
Definition at line 53 of file HcalUnpacker.h.
Referenced by unpackUTCA(), and unpackVME().
|
private |
Expected orbit bunch time (needed to evaluate time differences)
Definition at line 54 of file HcalUnpacker.h.
Referenced by setExpectedOrbitMessageTime(), and unpackVME().
|
private |
Definition at line 55 of file HcalUnpacker.h.
Referenced by setMode(), and unpackVME().
|
private |
number to subtract from the source id to get the dcc id
Definition at line 51 of file HcalUnpacker.h.
Referenced by unpack(), and unpackVME().
|
private |
first sample from fed raw data to copy
Definition at line 52 of file HcalUnpacker.h.
Referenced by unpackUTCA(), and unpackVME().
|
private |
Definition at line 56 of file HcalUnpacker.h.
Referenced by unpack(), unpackUTCA(), and unpackVME().
|
private |
Recorded to limit number of times a log message is generated.
Definition at line 56 of file HcalUnpacker.h.
Referenced by unpackUTCA(), and unpackVME().