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 | 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(), 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 rpcdqm::BX, ProcessOptoRxFrameParallel(), 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 185 of file RawDataUnpacker.cc.
References PFRecoTauDiscriminationByIsolation_cfi::offset, jets_cff::payload, ProcessVFATDataParallel(), and TotemFEDInfo::setOrbitCounter().
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 101 of file RawDataUnpacker.cc.
References EnergyCorrector::c, VFATFrame::getData(), mps_fire::i, training_settings::idx, SimpleVFATFrameCollection::InsertEmptyFrame(), 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 214 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 RawDataUnpacker(), and TotemVFATRawToDigi::run().
|
private |
Definition at line 61 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().