#include <L1GTDigiToRaw.h>
Public Member Functions | |
L1GTDigiToRaw (const edm::ParameterSet &) | |
constructor(s) More... | |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
EDProducer (const EDProducer &)=delete | |
bool | hasAbilityToProduceInBeginLumis () const final |
bool | hasAbilityToProduceInBeginProcessBlocks () const final |
bool | hasAbilityToProduceInBeginRuns () const final |
bool | hasAbilityToProduceInEndLumis () const final |
bool | hasAbilityToProduceInEndProcessBlocks () const final |
bool | hasAbilityToProduceInEndRuns () const final |
const EDProducer & | operator= (const EDProducer &)=delete |
Private Member Functions | |
unsigned int | flipPtQ (unsigned int) |
void | packFDL (const edm::EventSetup &, unsigned char *, L1GtFdlWord &) |
pack FDL blocks for various bunch crosses More... | |
unsigned int | packGMT (L1MuGMTReadoutRecord const &, unsigned char *) |
pack a GMT record More... | |
unsigned int | packGmtCollection (unsigned char *ptrGt, L1MuGMTReadoutCollection const *digis) |
pack the GMT collection using packGMT (GMT record packing) More... | |
void | packGTFE (const edm::EventSetup &, unsigned char *, L1GtfeWord &, cms_uint16_t activeBoardsGtValue) |
void | packHeader (unsigned char *, edm::Event &) |
block packers -------—— More... | |
void | packPSB (const edm::EventSetup &, unsigned char *, L1GtPsbWord &) |
void | packTrailer (unsigned char *, unsigned char *, int) |
pack trailer word More... | |
void | produce (edm::Event &, const edm::EventSetup &) override |
loop over events More... | |
Private Attributes | |
cms_uint16_t | m_activeBoardsMaskGt |
mask for active boards More... | |
int | m_daqGtFedId |
const edm::InputTag | m_daqGtInputTag |
const edm::EDGetTokenT < L1GlobalTriggerReadoutRecord > | m_daqGtInputToken |
input tag for GT DAQ record More... | |
bool | m_isDebugEnabled |
const edm::ESGetToken < L1GtBoardMaps, L1GtBoardMapsRcd > | m_l1GtBMToken |
EventSetup Token for L1GtBoardMaps. More... | |
int | m_maxBxInEvent |
int | m_minBxInEvent |
const edm::InputTag | m_muGmtInputTag |
const edm::EDGetTokenT < L1MuGMTReadoutCollection > | m_muGmtInputToken |
input tag for GMT record More... | |
int | m_totalBxInEvent |
total Bx's in the event, obtained from GTFE block More... | |
int | m_verbosity |
verbosity level More... | |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
using | CacheTypes = CacheContexts< T...> |
using | GlobalCache = typename CacheTypes::GlobalCache |
using | HasAbility = AbilityChecker< T...> |
using | InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache |
using | LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache |
using | LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache > |
using | LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache |
using | RunCache = typename CacheTypes::RunCache |
using | RunContext = RunContextT< RunCache, GlobalCache > |
using | RunSummaryCache = typename CacheTypes::RunSummaryCache |
Description: generate raw data from digis.
Implementation: <TODO: enter implementation details>
Definition at line 48 of file L1GTDigiToRaw.h.
|
explicit |
constructor(s)
Definition at line 54 of file L1GTDigiToRaw.cc.
References TauDecayModes::dec, LogDebug, m_activeBoardsMaskGt, m_daqGtFedId, m_daqGtInputTag, m_isDebugEnabled, m_muGmtInputTag, and m_verbosity.
|
private |
Definition at line 739 of file L1GTDigiToRaw.cc.
|
private |
pack FDL blocks for various bunch crosses
Definition at line 527 of file L1GTDigiToRaw.cc.
References TauDecayModes::dec, L1GtFdlWord::getSize(), LogDebug, LogTrace, m_isDebugEnabled, m_verbosity, L1GtFdlWord::setBoardIdWord64(), L1GtFdlWord::setBxInEventWord64(), L1GtFdlWord::setBxNrWord64(), L1GtFdlWord::setEventNrWord64(), L1GtFdlWord::setFinalORWord64(), L1GtFdlWord::setGtDecisionWordAWord64(), L1GtFdlWord::setGtDecisionWordBWord64(), L1GtFdlWord::setGtDecisionWordExtendedWord64(), L1GtFdlWord::setGtPrescaleFactorIndexAlgoWord64(), L1GtFdlWord::setGtPrescaleFactorIndexTechWord64(), L1GtFdlWord::setGtTechnicalTriggerWordWord64(), L1GtFdlWord::setLocalBxNrWord64(), L1GtFdlWord::setLumiSegmentNrWord64(), L1GtFdlWord::setNoAlgoWord64(), L1GtFdlWord::setOrbitNrWord64(), L1GtFdlWord::setPhysicsDeclaredWord64(), and L1GlobalTriggerReadoutSetup::UnitLength.
Referenced by produce().
|
private |
pack a GMT record
Definition at line 645 of file L1GTDigiToRaw.cc.
References stage2BMTFBufferRaw_cfi::boardId, L1MuGMTReadoutRecord::getBCERR(), L1MuGMTReadoutRecord::getBrlRPCCands(), L1MuGMTReadoutRecord::getBxInEvent(), L1MuGMTReadoutRecord::getBxNr(), L1MuGMTReadoutRecord::getCSCCands(), L1MuGMTReadoutRecord::getDTBXCands(), L1MuGMTReadoutRecord::getEvNr(), L1MuGMTReadoutRecord::getFwdRPCCands(), L1MuGMTReadoutRecord::getGMTBrlCands(), L1MuGMTReadoutRecord::getGMTCands(), L1MuGMTReadoutRecord::getGMTFwdCands(), mps_fire::i, AlCaHLTBitMon_ParallelJobs::p, createTree::pp, SIZE, and w().
Referenced by packGmtCollection().
|
private |
pack the GMT collection using packGMT (GMT record packing)
Definition at line 627 of file L1GTDigiToRaw.cc.
References L1MuGMTReadoutCollection::getRecord(), LogDebug, m_isDebugEnabled, m_maxBxInEvent, m_minBxInEvent, m_totalBxInEvent, m_verbosity, and packGMT().
Referenced by produce().
|
private |
pack the GTFE block gives the number of bunch crosses in the event, as well as the active boards records for inactive boards are not written in the GT DAQ record
Definition at line 481 of file L1GTDigiToRaw.cc.
References TauDecayModes::dec, L1GtfeWord::getSize(), LogDebug, LogTrace, m_isDebugEnabled, m_verbosity, L1GtfeWord::setActiveBoardsWord64(), L1GtfeWord::setAltNrBxBoardWord64(), L1GtfeWord::setBoardIdWord64(), L1GtfeWord::setBxNrWord64(), L1GtfeWord::setRecordLength1Word64(), L1GtfeWord::setRecordLengthWord64(), L1GtfeWord::setSetupVersionWord64(), L1GtfeWord::setTotalTriggerNrWord64(), and L1GlobalTriggerReadoutSetup::UnitLength.
Referenced by produce().
|
private |
block packers -------——
pack header
Definition at line 440 of file L1GTDigiToRaw.cc.
References edm::EventBase::bunchCrossing(), TauDecayModes::dec, edm::EventID::event(), edm::EventBase::id(), LogDebug, m_daqGtFedId, m_isDebugEnabled, m_verbosity, and FEDHeader::set().
Referenced by produce().
|
private |
pack PSB blocks packing is done in PSB class format
Definition at line 583 of file L1GTDigiToRaw.cc.
References TauDecayModes::dec, L1GtPsbWord::getSize(), LogDebug, LogTrace, m_isDebugEnabled, m_verbosity, L1GtPsbWord::setADataWord64(), L1GtPsbWord::setBDataWord64(), L1GtPsbWord::setBoardIdWord64(), L1GtPsbWord::setBxInEventWord64(), L1GtPsbWord::setBxNrWord64(), L1GtPsbWord::setEventNrWord64(), L1GtPsbWord::setLocalBxNrWord64(), and L1GlobalTriggerReadoutSetup::UnitLength.
Referenced by produce().
|
private |
pack trailer word
Definition at line 742 of file L1GTDigiToRaw.cc.
References evf::compute_crc(), and FEDTrailer::set().
Referenced by produce().
|
overrideprivate |
loop over events
Definition at line 88 of file L1GTDigiToRaw.cc.
References L1GtfeWord::activeBoards(), L1GtfeWord::altNrBxBoard(), FEDRawData::data(), TauDecayModes::dec, FDL, edm::Event::getByToken(), edm::EventSetup::getHandle(), L1GtPsbWord::getSize(), L1GtfeWord::getSize(), L1TcsWord::getSize(), L1GtFdlWord::getSize(), GMT, GTFE, edm::HandleBase::isValid(), LogDebug, LogTrace, m_activeBoardsMaskGt, m_daqGtFedId, m_daqGtInputTag, m_daqGtInputToken, m_isDebugEnabled, m_l1GtBMToken, m_maxBxInEvent, m_minBxInEvent, m_muGmtInputTag, m_muGmtInputToken, m_totalBxInEvent, m_verbosity, eostools::move(), packFDL(), packGmtCollection(), packGTFE(), packHeader(), packPSB(), packTrailer(), L1GtPsbWord::print(), L1GtfeWord::print(), L1GtFdlWord::print(), edm::Handle< T >::product(), PSB, edm::Event::put(), L1GtfeWord::recordLength(), L1GtfeWord::recordLength1(), FEDRawData::resize(), FEDRawData::size(), TCS, and TIM.
|
private |
mask for active boards
Definition at line 101 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), and produce().
|
private |
FED Id for GT DAQ record default value defined in DataFormats/FEDRawData/src/FEDNumbering.cc
Definition at line 87 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), packHeader(), and produce().
|
private |
Definition at line 94 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), and produce().
|
private |
|
private |
Definition at line 117 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), packFDL(), packGmtCollection(), packGTFE(), packHeader(), packPSB(), and produce().
|
private |
EventSetup Token for L1GtBoardMaps.
Definition at line 98 of file L1GTDigiToRaw.h.
Referenced by produce().
|
private |
max Bx's in the event, computed after m_totalBxInEvent is obtained from GTFE block assume symmetrical number of BX around L1Accept
Definition at line 112 of file L1GTDigiToRaw.h.
Referenced by packGmtCollection(), and produce().
|
private |
min Bx's in the event, computed after m_totalBxInEvent is obtained from GTFE block assume symmetrical number of BX around L1Accept
Definition at line 108 of file L1GTDigiToRaw.h.
Referenced by packGmtCollection(), and produce().
|
private |
Definition at line 95 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), and produce().
|
private |
|
private |
total Bx's in the event, obtained from GTFE block
Definition at line 104 of file L1GTDigiToRaw.h.
Referenced by packGmtCollection(), and produce().
|
private |
verbosity level
Definition at line 116 of file L1GTDigiToRaw.h.
Referenced by L1GTDigiToRaw(), packFDL(), packGmtCollection(), packGTFE(), packHeader(), packPSB(), and produce().