Collection of code for unpacking of TOTEM raw-data. More...
#include <RawDataUnpacker.h>
Public Types | |
enum | { vmCluster = 0x80, vmRaw = 0x90, vmDiamondCompact = 0xB0 } |
VFAT transmission modes. More... | |
typedef uint64_t | word |
Public Member Functions | |
int | processOptoRxFrame (const word *buf, unsigned int frameSize, TotemFEDInfo &fedInfo, SimpleVFATFrameCollection *fc) const |
Process one Opto-Rx (or LoneG) frame. More... | |
int | processOptoRxFrameParallel (const word *buffer, unsigned int frameSize, TotemFEDInfo &fedInfo, SimpleVFATFrameCollection *fc) const |
Process one Opto-Rx frame in parallel (new) format. More... | |
int | processOptoRxFrameSampic (const word *buffer, unsigned int frameSize, TotemFEDInfo &fedInfo, SimpleVFATFrameCollection *fc) const |
Process one Opto-Rx frame that contains SAMPIC frames. More... | |
int | processOptoRxFrameSerial (const word *buffer, unsigned int frameSize, SimpleVFATFrameCollection *fc) const |
Process one Opto-Rx frame in serial (old) format. More... | |
int | processVFATDataParallel (const uint16_t *buf, unsigned int maxWords, unsigned int OptoRxId, SimpleVFATFrameCollection *fc) const |
Process data from one VFAT in parallel (new) format. More... | |
RawDataUnpacker () | |
RawDataUnpacker (const edm::ParameterSet &conf) | |
int | run (int fedId, const FEDRawData &data, std::vector< TotemFEDInfo > &fedInfoColl, SimpleVFATFrameCollection &coll) const |
Unpack data from FED with fedId into `coll' collection. More... | |
Static Public Attributes | |
static constexpr unsigned int | VFAT_DIAMOND_HEADER_OF_WORD_2 = 0x7800 |
static constexpr unsigned int | VFAT_DIAMOND_HEADER_OF_WORD_3 = 0x7000 |
static constexpr unsigned int | VFAT_DIAMOND_HEADER_OF_WORD_5 = 0x6800 |
static constexpr unsigned int | VFAT_DIAMOND_HEADER_OF_WORD_7 = 0x6000 |
static constexpr unsigned int | VFAT_HEADER_OF_EC = 0xC000 |
Private Attributes | |
unsigned char | verbosity |
Collection of code for unpacking of TOTEM raw-data.
Definition at line 26 of file RawDataUnpacker.h.
typedef uint64_t ctpps::RawDataUnpacker::word |
Definition at line 29 of file RawDataUnpacker.h.
anonymous enum |
VFAT transmission modes.
Enumerator | |
---|---|
vmCluster | |
vmRaw | |
vmDiamondCompact |
Definition at line 32 of file RawDataUnpacker.h.
|
inline |
Definition at line 41 of file RawDataUnpacker.h.
References edmScanValgrind::buffer, coll, data, benchmark_cfg::fc, l1t::stage2::layer2::fedId, processOptoRxFrame(), processOptoRxFrameParallel(), processOptoRxFrameSampic(), processOptoRxFrameSerial(), processVFATDataParallel(), and run().
RawDataUnpacker::RawDataUnpacker | ( | const edm::ParameterSet & | conf | ) |
Definition at line 22 of file RawDataUnpacker.cc.
int RawDataUnpacker::processOptoRxFrame | ( | const word * | buf, |
unsigned int | frameSize, | ||
TotemFEDInfo & | fedInfo, | ||
SimpleVFATFrameCollection * | fc | ||
) | const |
Process one Opto-Rx (or LoneG) frame.
Definition at line 46 of file RawDataUnpacker.cc.
References LogDebug, FEDNumbering::MAXTotemRPTimingVerticalFEDID, FEDNumbering::MINTotemRPTimingVerticalFEDID, processOptoRxFrameParallel(), processOptoRxFrameSampic(), processOptoRxFrameSerial(), TotemFEDInfo::setFooter(), TotemFEDInfo::setHeader(), and verbosity.
Referenced by RawDataUnpacker(), and run().
int RawDataUnpacker::processOptoRxFrameParallel | ( | const word * | buffer, |
unsigned int | frameSize, | ||
TotemFEDInfo & | fedInfo, | ||
SimpleVFATFrameCollection * | fc | ||
) | const |
Process one Opto-Rx frame in parallel (new) format.
Definition at line 187 of file RawDataUnpacker.cc.
References PFRecoTauDiscriminationByIsolation_cfi::offset, jets_cff::payload, processVFATDataParallel(), and TotemFEDInfo::setOrbitCounter().
Referenced by processOptoRxFrame(), and RawDataUnpacker().
int RawDataUnpacker::processOptoRxFrameSampic | ( | const word * | buffer, |
unsigned int | frameSize, | ||
TotemFEDInfo & | fedInfo, | ||
SimpleVFATFrameCollection * | fc | ||
) | const |
Process one Opto-Rx frame that contains SAMPIC frames.
Definition at line 433 of file RawDataUnpacker.cc.
References mps_fire::i, SimpleVFATFrameCollection::Insert(), LogDebug, and VFATFrame::setPresenceFlags().
Referenced by processOptoRxFrame(), and RawDataUnpacker().
int RawDataUnpacker::processOptoRxFrameSerial | ( | const word * | buffer, |
unsigned int | frameSize, | ||
SimpleVFATFrameCollection * | fc | ||
) | const |
Process one Opto-Rx frame in serial (old) format.
Definition at line 105 of file RawDataUnpacker.cc.
References EnergyCorrector::c, VFATFrame::getData(), mps_fire::i, training_settings::idx, SimpleVFATFrameCollection::InsertEmptyFrame(), LogDebug, alignCSCRings::r, verbosity, w, and globals_cff::x1.
Referenced by processOptoRxFrame(), and RawDataUnpacker().
int RawDataUnpacker::processVFATDataParallel | ( | const uint16_t * | buf, |
unsigned int | maxWords, | ||
unsigned int | OptoRxId, | ||
SimpleVFATFrameCollection * | fc | ||
) | const |
Process data from one VFAT in parallel (new) format.
Definition at line 216 of file RawDataUnpacker.cc.
References f, VFATFrame::getData(), mps_fire::i, SimpleVFATFrameCollection::Insert(), VFATFrame::setDAQErrorFlags(), VFATFrame::setNumberOfClusters(), VFATFrame::setPresenceFlags(), verbosity, VFAT_DIAMOND_HEADER_OF_WORD_2, VFAT_DIAMOND_HEADER_OF_WORD_3, VFAT_DIAMOND_HEADER_OF_WORD_5, VFAT_DIAMOND_HEADER_OF_WORD_7, VFAT_HEADER_OF_EC, vmCluster, vmDiamondCompact, vmRaw, and w.
Referenced by processOptoRxFrameParallel(), and RawDataUnpacker().
int RawDataUnpacker::run | ( | int | fedId, |
const FEDRawData & | data, | ||
std::vector< TotemFEDInfo > & | fedInfoColl, | ||
SimpleVFATFrameCollection & | coll | ||
) | const |
Unpack data from FED with fedId into `coll' collection.
Definition at line 28 of file RawDataUnpacker.cc.
References coll, FEDRawData::data(), processOptoRxFrame(), FEDRawData::size(), and verbosity.
Referenced by Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), RawDataUnpacker(), and TotemVFATRawToDigi::run().
|
private |
Definition at line 64 of file RawDataUnpacker.h.
Referenced by processOptoRxFrame(), processOptoRxFrameSerial(), processVFATDataParallel(), and run().
|
static |
Definition at line 35 of file RawDataUnpacker.h.
Referenced by processVFATDataParallel().
|
static |
Definition at line 36 of file RawDataUnpacker.h.
Referenced by processVFATDataParallel().
|
static |
Definition at line 37 of file RawDataUnpacker.h.
Referenced by processVFATDataParallel().
|
static |
Definition at line 38 of file RawDataUnpacker.h.
Referenced by processVFATDataParallel().
|
static |
Definition at line 39 of file RawDataUnpacker.h.
Referenced by processVFATDataParallel().