#include <EventFilter/RctRawToDigi/src/RctRawToDigi.cc>
Public Member Functions | |
RctRawToDigi (const edm::ParameterSet &) | |
~RctRawToDigi () | |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
Public Member Functions inherited from edm::stream::EDProducerBase | |
EDProducerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducerBase () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
Private Member Functions | |
void | checkHeaders () |
bool | decodeLinkID (const uint32_t inputValue, uint32_t &crateNumber, uint32_t &linkNumber, bool &even) |
virtual void | endJob () |
method called at job end - use to print summary report More... | |
bool | printAll (const unsigned char *data, const unsigned size) |
void | produce (edm::Event &, const edm::EventSetup &) |
void | unpack (const FEDRawData &d, edm::Event &e, RctUnpackCollections *const colls) |
Unpacks the raw data. More... | |
void | unpackCTP7 (const uint32_t *data, const unsigned block_id, const unsigned size, RctUnpackCollections *const colls) |
Private Attributes | |
std::vector< unsigned > | errorCounters_ |
Counts number of errors for each code (index) More... | |
L1TriggerErrorCollection * | errors_ |
pointer to error collection More... | |
int | fedId_ |
RCT FED ID. More... | |
edm::InputTag | inputLabel_ |
FED collection label. More... | |
unsigned | unpackFailures_ |
To count the total number of RCT unpack failures. More... | |
const bool | verbose_ |
If true, then debug print out for each event. More... | |
Static Private Attributes | |
static const unsigned | amc13HeaderSize_ = 16 |
static const unsigned | amc13TrailerSize_ = 8 |
static const unsigned | ctp7HeaderSize_ = 8 |
static const unsigned | ctp7TrailerSize_ = 8 |
static const unsigned | MAX_DATA = 4680 |
The maximum number of blocks we will try to unpack before thinking something is wrong. More... | |
static const unsigned | MAX_ERR_CODE = 6 |
static const unsigned | MIN_DATA = 900 |
The minimum number of blocks we will try to unpack before thinking something is wrong (really this should be 920, to be tested) More... | |
static const unsigned | sLinkHeaderSize_ = 8 |
static const unsigned | sLinkTrailerSize_ = 8 |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
typedef CacheContexts< T...> | CacheTypes |
typedef CacheTypes::GlobalCache | GlobalCache |
typedef AbilityChecker< T...> | HasAbility |
typedef CacheTypes::LuminosityBlockCache | LuminosityBlockCache |
typedef LuminosityBlockContextT < LuminosityBlockCache, RunCache, GlobalCache > | LuminosityBlockContext |
typedef CacheTypes::LuminosityBlockSummaryCache | LuminosityBlockSummaryCache |
typedef CacheTypes::RunCache | RunCache |
typedef RunContextT< RunCache, GlobalCache > | RunContext |
typedef CacheTypes::RunSummaryCache | RunSummaryCache |
Public Types inherited from edm::stream::EDProducerBase | |
typedef EDProducerAdaptorBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::stream::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Description: Produce RCT digis from raw data
Implementation: <Notes on="" implementation>="">
Definition at line 40 of file RctRawToDigi.h.
|
explicit |
Register Products
Definition at line 36 of file RctRawToDigi.cc.
References fedId_, inputLabel_, and LogDebug.
RctRawToDigi::~RctRawToDigi | ( | ) |
Definition at line 53 of file RctRawToDigi.cc.
|
private |
Looks at the firmware version header in the S-Link packet and instantiates relevant format translator. check block headers for consistency
|
private |
|
privatevirtual |
method called at job end - use to print summary report
Definition at line 344 of file RctRawToDigi.cc.
References errorCounters_, i, MAX_ERR_CODE, pileupDistInMC::total, and verbose_.
|
private |
Definition at line 332 of file RctRawToDigi.cc.
References gather_cfg::cout, i, and findQualityFiles::size.
|
privatevirtual |
Implements edm::stream::EDProducerBase.
Definition at line 61 of file RctRawToDigi.cc.
References amc13HeaderSize_, amc13TrailerSize_, TauDecayModes::dec, fedId_, HcalMonitorModule_cfi::feds, edm::Event::get(), edm::Event::getByLabel(), inputLabel_, LogDebug, MIN_DATA, FEDRawData::size(), sLinkHeaderSize_, sLinkTrailerSize_, and unpack().
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
|
private |
Unpacks the raw data.
invalidDataFlag | - if true, then won't attempt unpack but just output empty collecions. |
Definition at line 102 of file RctRawToDigi.cc.
References FEDHeader::bxID(), FEDTrailer::check(), FEDHeader::check(), FEDTrailer::crc(), FEDRawData::data(), AlCaHLTBitMon_QueryRunRegistry::data, FEDTrailer::evtStatus(), FEDTrailer::lenght(), LogDebug, FEDHeader::lvl1ID(), FEDRawData::size(), sLinkTrailerSize_, FEDHeader::sourceID(), FEDHeader::triggerType(), FEDTrailer::ttsBits(), unpackCTP7(), and FEDHeader::version().
Referenced by produce().
|
private |
Definition at line 142 of file RctRawToDigi.cc.
References assert(), j, relval_steps::k, LogDebug, visualization-live-secondInstance_cfg::m, python.connectstrParser::o, hltrates_dqm_sourceclient-live_cfg::offset, lumiQueryAPI::q, RctUnpackCollections::rctCalo(), RctUnpackCollections::rctEm(), L1CaloEmCand::setBx(), L1CaloRegion::setBx(), findQualityFiles::size, tree::t, and tmp.
Referenced by unpack().
|
staticprivate |
Definition at line 80 of file RctRawToDigi.h.
Referenced by produce().
|
staticprivate |
Definition at line 83 of file RctRawToDigi.h.
Referenced by produce().
|
staticprivate |
Definition at line 86 of file RctRawToDigi.h.
|
staticprivate |
Definition at line 89 of file RctRawToDigi.h.
|
private |
Counts number of errors for each code (index)
Definition at line 109 of file RctRawToDigi.h.
Referenced by endJob().
|
private |
pointer to error collection
Definition at line 108 of file RctRawToDigi.h.
|
private |
RCT FED ID.
Definition at line 99 of file RctRawToDigi.h.
Referenced by produce(), and RctRawToDigi().
|
private |
FED collection label.
Definition at line 98 of file RctRawToDigi.h.
Referenced by produce(), and RctRawToDigi().
|
staticprivate |
The maximum number of blocks we will try to unpack before thinking something is wrong.
Definition at line 92 of file RctRawToDigi.h.
|
staticprivate |
Definition at line 107 of file RctRawToDigi.h.
Referenced by endJob().
|
staticprivate |
The minimum number of blocks we will try to unpack before thinking something is wrong (really this should be 920, to be tested)
Definition at line 95 of file RctRawToDigi.h.
Referenced by produce().
|
staticprivate |
Definition at line 74 of file RctRawToDigi.h.
Referenced by produce().
|
staticprivate |
Definition at line 77 of file RctRawToDigi.h.
|
private |
To count the total number of RCT unpack failures.
Definition at line 110 of file RctRawToDigi.h.
|
private |
If true, then debug print out for each event.
Definition at line 101 of file RctRawToDigi.h.
Referenced by endJob().