CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
RawTask Class Reference

#include <RawTask.h>

Inheritance diagram for RawTask:
hcaldqm::DQTask DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > > hcaldqm::DQModule edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
std::shared_ptr< hcaldqm::CacheglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 RawTask (edm::ParameterSet const &)
 
 ~RawTask () override
 
- Public Member Functions inherited from hcaldqm::DQTask
void analyze (edm::Event const &, edm::EventSetup const &) override
 
void dqmBeginRun (edm::Run const &, edm::EventSetup const &) override
 
 DQTask (edm::ParameterSet const &)
 
std::shared_ptr< hcaldqm::CacheglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 ~DQTask () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
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 EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 
- Public Member Functions inherited from hcaldqm::DQModule
 DQModule (edm::ParameterSet const &)
 
virtual ~DQModule () noexcept(false)
 

Public Attributes

 calibProcessing
 
 debug
 
 mtype
 
 name
 
 ptype
 
 rawTask
 
 runkeyName
 
 runkeyVal
 
 subsystem
 
 tagFEDs
 
 tagReport
 
 thresh_calib_nbadq
 

Protected Types

enum  RawFlag {
  fEvnMsm = 0, fBcnMsm = 1, fOrnMsm = 2, fBadQ = 3,
  nRawFlag = 4
}
 

Protected Member Functions

void _process (edm::Event const &, edm::EventSetup const &) override
 
void _resetMonitors (hcaldqm::UpdateFreq) override
 
- Protected Member Functions inherited from hcaldqm::DQTask
virtual int _getCalibType (edm::Event const &)
 
virtual bool _isApplicable (edm::Event const &)
 
- Protected Member Functions inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
virtual void dqmEndRun (edm::Run const &, edm::EventSetup const &)
 
- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
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 ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
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)
 
void resetItemsToGetFrom (BranchType iType)
 

Protected Attributes

bool _calibProcessing
 
hcaldqm::Container2D _cBadQuality_depth
 
hcaldqm::Container2D _cBadQuality_FEDuTCA
 
hcaldqm::Container2D _cBadQualityLS_depth
 
hcaldqm::ContainerSingleProf1D _cBadQualityvsBX
 
hcaldqm::ContainerSingleProf1D _cBadQualityvsLS
 
hcaldqm::Container2D _cBcnMsm_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cDataSizevsLS_FED
 
hcaldqm::Container2D _cEvnMsm_ElectronicsuTCA
 
hcaldqm::Container2D _cOrnMsm_ElectronicsuTCA
 
hcaldqm::ContainerSingle2D _cSummaryvsLS
 
hcaldqm::Container2D _cSummaryvsLS_FED
 
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
 
hcaldqm::filter::HashFilter _filter_FEDsuTCA
 
hcaldqm::filter::HashFilter _filter_FEDsVME
 
hcaldqm::filter::HashFilter _filter_uTCA
 
hcaldqm::filter::HashFilter _filter_VME
 
edm::InputTag _tagFEDs
 
edm::InputTag _tagReport
 
int _thresh_calib_nbadq
 
edm::EDGetTokenT< FEDRawDataCollection_tokFEDs
 
edm::EDGetTokenT< HcalUnpackerReport_tokReport
 
std::vector< hcaldqm::flag::Flag_vflags
 
std::vector< uint32_t > _vhashFEDs
 
hcaldqm::ContainerXXX< uint32_t > _xBadQLS
 
hcaldqm::ContainerXXX< uint32_t > _xBcnMsmLS
 
hcaldqm::ContainerXXX< uint32_t > _xEvnMsmLS
 
hcaldqm::ContainerXXX< uint32_t > _xOrnMsmLS
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
- Protected Attributes inherited from hcaldqm::DQTask
ContainerI _cEvsPerLS
 
ContainerI _cEvsTotal
 
ContainerS _cProcessingTypeName
 
ContainerS _cRunKeyName
 
ContainerI _cRunKeyVal
 
edm::ESHandle< HcalDbService_dbService
 
HcalElectronicsMap const * _emap = nullptr
 
int _procLSs
 
edm::InputTag _tagRaw
 
edm::EDGetTokenT< FEDRawDataCollection_tokRaw
 
std::vector< uint32_t > _vcdaqEids
 
ContainerXXX< uint32_t > _xQuality
 
edm::ESGetToken< HcalChannelQuality, HcalChannelQualityRcdhcalChannelQualityToken_
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
edm::ESGetToken< RunInfo, RunInfoRcdrunInfoToken_
 
- Protected Attributes inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
edm::EDPutTokenT< DQMTokenrunToken_
 
- Protected Attributes inherited from hcaldqm::DQModule
int _currentLS
 
int _debug
 
int _evsPerLS
 
int _evsTotal
 
Logger _logger
 
int _maxLS
 
ModuleType _mtype
 
std::string _name
 
ProcessingType _ptype
 
std::string _runkeyName
 
int _runkeyVal
 
std::string _subsystem
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from hcaldqm::DQTask
static void fillPSetDescription (edm::ParameterSetDescription &des)
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from hcaldqm::DQModule
static void fillPSetDescription (edm::ParameterSetDescription &desc)
 

Detailed Description

file: Author: Description:

Definition at line 24 of file RawTask.h.

Member Enumeration Documentation

◆ RawFlag

enum RawTask::RawFlag
protected
Enumerator
fEvnMsm 
fBcnMsm 
fOrnMsm 
fBadQ 
nRawFlag 

Definition at line 46 of file RawTask.h.

Constructor & Destructor Documentation

◆ RawTask()

RawTask::RawTask ( edm::ParameterSet const &  ps)

Definition at line 6 of file RawTask.cc.

References _calibProcessing, _tagFEDs, _tagReport, _thresh_calib_nbadq, _tokFEDs, _tokReport, _vflags, fBadQ, fBcnMsm, fEvnMsm, nanoDQM_cff::Flag, fOrnMsm, edm::ParameterSet::getUntrackedParameter(), HLT_2022v12_cff::InputTag, and nRawFlag.

7  : DQTask(ps), hcalDbServiceToken_(esConsumes<HcalDbService, HcalDbRecord, edm::Transition::BeginRun>()) {
8  _tagFEDs = ps.getUntrackedParameter<edm::InputTag>("tagFEDs", edm::InputTag("rawDataCollector"));
9  _tagReport = ps.getUntrackedParameter<edm::InputTag>("tagReport", edm::InputTag("hcalDigis"));
10  _calibProcessing = ps.getUntrackedParameter<bool>("calibProcessing", false);
11  _thresh_calib_nbadq = ps.getUntrackedParameter<int>("thresh_calib_nbadq", 5000);
12 
13  _tokFEDs = consumes<FEDRawDataCollection>(_tagFEDs);
14  _tokReport = consumes<HcalUnpackerReport>(_tagReport);
15 
16  _vflags.resize(nRawFlag);
17  _vflags[fEvnMsm] = flag::Flag("EvnMsm");
18  _vflags[fBcnMsm] = flag::Flag("BcnMsm");
19  _vflags[fBadQ] = flag::Flag("BadQ");
20  _vflags[fOrnMsm] = flag::Flag("OrnMsm");
21 }
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: RawTask.h:42
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:8
bool _calibProcessing
Definition: RawTask.h:52
edm::EDGetTokenT< HcalUnpackerReport > _tokReport
Definition: RawTask.h:41
edm::EDGetTokenT< FEDRawDataCollection > _tokFEDs
Definition: RawTask.h:40
int _thresh_calib_nbadq
Definition: RawTask.h:53
edm::InputTag _tagFEDs
Definition: RawTask.h:38
std::vector< hcaldqm::flag::Flag > _vflags
Definition: RawTask.h:45
edm::InputTag _tagReport
Definition: RawTask.h:39

◆ ~RawTask()

RawTask::~RawTask ( )
inlineoverride

Definition at line 27 of file RawTask.h.

27 {}

Member Function Documentation

◆ _process()

void RawTask::_process ( edm::Event const &  e,
edm::EventSetup const &   
)
overrideprotectedvirtual

Implements hcaldqm::DQTask.

Definition at line 193 of file RawTask.cc.

References _calibProcessing, _cBadQuality_depth, _cBadQuality_FEDuTCA, _cBadQualityvsBX, _cBadQualityvsLS, _cBcnMsm_ElectronicsuTCA, _cDataSizevsLS_FED, _cEvnMsm_ElectronicsuTCA, _cOrnMsm_ElectronicsuTCA, hcaldqm::DQModule::_currentLS, _ehashmap, _filter_FEDsuTCA, _filter_FEDsVME, hcaldqm::DQModule::_logger, hcaldqm::DQModule::_ptype, _tagFEDs, _tagReport, _thresh_calib_nbadq, _tokFEDs, _tokReport, _xBadQLS, _xBcnMsmLS, _xEvnMsmLS, _xOrnMsmLS, hcaldqm::DQTask::_xQuality, hcal::AMC13Header::AMCId(), hcal::AMC13Header::AMCPayload(), hcal::AMC13Header::AMCSize(), hcal::AMC13Header::AMCSlot(), HcalUnpackerReport::bad_quality_begin(), HcalUnpackerReport::bad_quality_end(), HcalUnpackerReport::badQualityDigis(), hcal::AMC13Header::bunchId(), simKBmtfDigis_cfi::bx, HcalHTRData::check(), callgraph::cs, FEDRawData::data(), ecaldqm::dccId(), Logger::dqmthrow(), MillePedeFileConverter_cfg::e, runTauDisplay::eid, hcaldqm::ContainerXXX< STDTYPE >::exists(), hcaldqm::utilities::fed2crate(), hcaldqm::constants::FED_VME_MIN, FEDRawDataCollection::FEDData(), hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::ContainerSingle1D::fill(), hcaldqm::Container2D::fill(), hcaldqm::Container1D::fill(), hcaldqm::filter::HashFilter::filter(), hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::ContainerXXX< STDTYPE >::get(), HcalDCCHeader::getBunchId(), HcalHTRData::getBunchNumber(), HcalDCCHeader::getDCCEventNumber(), HcalHTRData::getL1ANumber(), HcalDCCHeader::getOrbitNumber(), HcalHTRData::getOrbitNumber(), HcalDCCHeader::getSourceId(), HcalDCCHeader::getSpigotData(), HcalChannelStatus::HcalCellDead, HcalChannelStatus::HcalCellMask, edm::InputTag::instance(), HcalGenericDetId::isHcalDetId(), hcal::AMC13Header::l1aNumber(), HcalUHTRData::l1ANumber(), edm::InputTag::label(), hcaldqm::electronicsmap::ElectronicsMap::lookup(), FEDNumbering::MAXHCALFEDID, FEDNumbering::MAXHCALuTCAFEDID, FEDNumbering::MINHCALFEDID, FEDNumbering::MINHCALuTCAFEDID, hcal::AMC13Header::NAMC(), groupFilesInBlocks::nn, hcal::AMC13Header::orbitNumber(), alignCSCRings::r, hcaldqm::constants::RAW_EMPTY, hcaldqm::ContainerXXX< STDTYPE >::reset(), FEDRawData::size(), HcalDCCHeader::SPIGOT_COUNT, hcaldqm::constants::SPIGOT_MAX, and hcaldqm::constants::SPIGOT_MIN.

193  {
196  if (!e.getByToken(_tokFEDs, craw))
197  _logger.dqmthrow("Collection FEDRawDataCollection isn't available" + _tagFEDs.label() + " " + _tagFEDs.instance());
198  if (!e.getByToken(_tokReport, creport))
199  _logger.dqmthrow("Collection HcalUnpackerReport isn't available" + _tagReport.label() + " " +
200  _tagReport.instance());
201 
202  // extract some info
203  int bx = e.bunchCrossing();
204 
205  auto lumiCache = luminosityBlockCache(e.getLuminosityBlock().index());
206  _currentLS = lumiCache->currentLS;
207  _xQuality.reset();
208  _xQuality = lumiCache->xQuality;
209 
210  /*
211  * For Calibration/Abort Gap Processing
212  * check if the #channels taht are bad from the unpacker
213  * is > 5000. If it is skip...
214  */
215  if (_calibProcessing) {
216  int nbadq = creport->badQualityDigis();
217  if (nbadq >= _thresh_calib_nbadq)
218  return;
219  }
220 
221  int nn = 0;
222  // loop thru and fill the detIds with bad quality
223  // NOTE: Calibration Channels are skipped!
224  // TODO: Include for Online Calibration Channels marked as bad
225  // a comment below is left on purpose!
226  //_cBadQualityvsBX.fill(bx, creport->badQualityDigis());
227  for (std::vector<DetId>::const_iterator it = creport->bad_quality_begin(); it != creport->bad_quality_end(); ++it) {
228  // skip non HCAL det ids
229  if (!HcalGenericDetId(*it).isHcalDetId())
230  continue;
231 
232  // skip those that are of bad quality from conditions
233  // Masked or Dead
234  if (_xQuality.exists(HcalDetId(*it))) {
235  HcalChannelStatus cs(it->rawId(), _xQuality.get(HcalDetId(*it)));
237  continue;
238  }
239 
240  nn++;
243  // ONLINE ONLY!
244  if (_ptype == fOnline)
245  _xBadQLS.get(eid)++;
246  if (_ptype != fOffline) { // hidefed2crate
247  if (!eid.isVMEid()) {
249  continue;
251  }
252  }
253  }
256 
257  if (_ptype != fOffline) { // hidefed2crate
258  for (int fed = FEDNumbering::MINHCALFEDID; fed <= FEDNumbering::MAXHCALuTCAFEDID; fed++) {
259  // skip nonHCAL FEDs
262  continue;
263  FEDRawData const& raw = craw->FEDData(fed);
264  if (raw.size() < constants::RAW_EMPTY)
265  continue;
266 
267  if (fed <= FEDNumbering::MAXHCALFEDID) // VME
268  {
269  HcalDCCHeader const* hdcc = (HcalDCCHeader const*)(raw.data());
270  if (!hdcc)
271  continue;
272 
273  uint32_t bcn = hdcc->getBunchId();
274  uint32_t orn = hdcc->getOrbitNumber() & 0x1F; // LS 5 bits only
275  uint32_t evn = hdcc->getDCCEventNumber();
276  int dccId = hdcc->getSourceId() - constants::FED_VME_MIN;
277 
278  /* online only */
279  if (_ptype == fOnline) {
283  continue;
284  _cDataSizevsLS_FED.fill(eid, _currentLS, double(raw.size()) / 1024.);
285  }
286 
287  // iterate over spigots
288  HcalHTRData htr;
289  for (int is = 0; is < HcalDCCHeader::SPIGOT_COUNT; is++) {
290  int r = hdcc->getSpigotData(is, htr, raw.size());
291  if (r != 0 || !htr.check())
292  continue;
295  continue;
296 
297  uint32_t htr_evn = htr.getL1ANumber();
298  uint32_t htr_orn = htr.getOrbitNumber();
299  uint32_t htr_bcn = htr.getBunchNumber();
300  bool qevn = (htr_evn != evn);
301  bool qbcn = (htr_bcn != bcn);
302  bool qorn = (htr_orn != orn);
303  if (qevn) {
304  if (_ptype == fOnline && is <= constants::SPIGOT_MAX)
305  _xEvnMsmLS.get(eid)++;
306  }
307  if (qorn) {
308  if (_ptype == fOnline && is <= constants::SPIGOT_MAX)
309  _xOrnMsmLS.get(eid)++;
310  }
311  if (qbcn) {
312  if (_ptype == fOnline && is <= constants::SPIGOT_MAX)
313  _xBcnMsmLS.get(eid)++;
314  }
315  }
316  } else // uTCA
317  {
318  hcal::AMC13Header const* hamc13 = (hcal::AMC13Header const*)raw.data();
319  if (!hamc13)
320  continue;
321 
322  /* online only */
323  if (_ptype == fOnline) {
324  std::pair<uint16_t, uint16_t> cspair = utilities::fed2crate(fed);
325  HcalElectronicsId eid = HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false);
327  continue;
328  _cDataSizevsLS_FED.fill(eid, _currentLS, double(raw.size()) / 1024.);
329  }
330 
331  uint32_t bcn = hamc13->bunchId();
332  uint32_t orn = hamc13->orbitNumber() & 0xFFFF; // LS 16bits only
333  uint32_t evn = hamc13->l1aNumber();
334  int namc = hamc13->NAMC();
335 
336  for (int iamc = 0; iamc < namc; iamc++) {
337  int slot = hamc13->AMCSlot(iamc);
338  int crate = hamc13->AMCId(iamc) & 0xFF;
339  HcalElectronicsId eid(crate, slot, FIBER_uTCA_MIN1, FIBERCH_MIN, false);
341  continue;
342  HcalUHTRData uhtr(hamc13->AMCPayload(iamc), hamc13->AMCSize(iamc));
343 
344  uint32_t uhtr_evn = uhtr.l1ANumber();
345  uint32_t uhtr_bcn = uhtr.bunchNumber();
346  uint32_t uhtr_orn = uhtr.orbitNumber();
347  bool qevn = (uhtr_evn != evn);
348  bool qbcn = (uhtr_bcn != bcn);
349  bool qorn = (uhtr_orn != orn);
350  if (qevn) {
352 
353  if (_ptype == fOnline)
354  _xEvnMsmLS.get(eid)++;
355  }
356  if (qorn) {
358 
359  if (_ptype == fOnline)
360  _xOrnMsmLS.get(eid)++;
361  }
362  if (qbcn) {
364 
365  if (_ptype == fOnline)
366  _xBcnMsmLS.get(eid)++;
367  }
368  }
369  }
370  }
371  }
372 }
int const RAW_EMPTY
Definition: Constants.h:250
virtual bool exists(HcalDetId const &)
Definition: ContainerXXX.h:212
int getSpigotData(int nspigot, HcalHTRData &decodeTool, int validSize) const
std::pair< uint16_t, uint16_t > fed2crate(int fed)
Definition: Utilities.cc:10
bool _calibProcessing
Definition: RawTask.h:52
const uint64_t * AMCPayload(int i) const
Definition: AMC13Header.cc:4
std::string const & instance() const
Definition: InputTag.h:37
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: RawTask.h:49
void dqmthrow(std::string const &msg) const
Definition: Logger.h:12
hcaldqm::Container2D _cOrnMsm_ElectronicsuTCA
Definition: RawTask.h:75
size_t size() const
Lenght of the data buffer in bytes.
Definition: FEDRawData.h:45
int const SPIGOT_MIN
Definition: Constants.h:120
DetIdVector::const_iterator bad_quality_begin() const
hcaldqm::ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:76
virtual void reset()
Definition: ContainerXXX.h:292
std::string const & label() const
Definition: InputTag.h:36
int const FIBER_VME_MIN
Definition: Constants.h:125
int const FIBERCH_MIN
Definition: Constants.h:134
int const SPIGOT_MAX
Definition: Constants.h:121
unsigned int getOrbitNumber() const
Definition: HcalDCCHeader.h:46
hcaldqm::Container2D _cBadQuality_depth
Definition: RawTask.h:66
int bunchId() const
Definition: AMC13Header.h:17
int getBunchId() const
Definition: HcalDCCHeader.h:34
int AMCSlot(int i) const
Definition: AMC13Header.h:33
hcaldqm::ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:76
ProcessingType _ptype
Definition: DQModule.h:44
virtual void fill(uint32_t)
Definition: Container1D.cc:73
bool isHcalDetId() const
hcaldqm::filter::HashFilter _filter_FEDsuTCA
Definition: RawTask.h:62
ContainerXXX< uint32_t > _xQuality
Definition: DQTask.h:66
int const FED_VME_MIN
Definition: Constants.h:82
int getSourceId() const
Definition: HcalDCCHeader.h:32
unsigned int getBunchNumber() const
Get the HTR bunch number.
Definition: HcalHTRData.h:122
int const FIBER_uTCA_MIN1
Definition: Constants.h:128
int AMCSize(int i) const
Definition: AMC13Header.h:37
unsigned dccId(DetId const &, EcalElectronicsMapping const *)
hcaldqm::ContainerXXX< uint32_t > _xOrnMsmLS
Definition: RawTask.h:76
Logger _logger
Definition: DQModule.h:55
edm::EDGetTokenT< HcalUnpackerReport > _tokReport
Definition: RawTask.h:41
int l1aNumber() const
Definition: AMC13Header.h:19
edm::EDGetTokenT< FEDRawDataCollection > _tokFEDs
Definition: RawTask.h:40
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
hcaldqm::Container2D _cBadQuality_FEDuTCA
Definition: RawTask.h:65
hcaldqm::Container2D _cEvnMsm_ElectronicsuTCA
Definition: RawTask.h:73
unsigned int getL1ANumber() const
Get the HTR event number.
Definition: HcalHTRData.h:120
int _thresh_calib_nbadq
Definition: RawTask.h:53
unsigned int orbitNumber() const
Definition: AMC13Header.h:23
hcaldqm::ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:76
unsigned int getOrbitNumber() const
Get the HTR orbit number.
Definition: HcalHTRData.cc:345
int NAMC() const
Definition: AMC13Header.h:25
uint32_t l1ANumber() const
Get the HTR event number.
Definition: HcalUHTRData.h:87
unsigned long getDCCEventNumber() const
Definition: HcalDCCHeader.h:36
int badQualityDigis() const
hcaldqm::filter::HashFilter _filter_FEDsVME
Definition: RawTask.h:61
hcaldqm::ContainerSingleProf1D _cBadQualityvsLS
Definition: RawTask.h:68
edm::InputTag _tagFEDs
Definition: RawTask.h:38
static const int SPIGOT_COUNT
Definition: HcalDCCHeader.h:19
hcaldqm::Container2D _cBcnMsm_ElectronicsuTCA
Definition: RawTask.h:74
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
hcaldqm::ContainerProf1D _cDataSizevsLS_FED
Definition: RawTask.h:70
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
uint16_t AMCId(int i) const
Definition: AMC13Header.h:31
virtual bool filter(HcalDetId const &) const
Definition: HashFilter.cc:24
edm::InputTag _tagReport
Definition: RawTask.h:39
const unsigned char * data() const
Return a const pointer to the beginning of the data buffer.
Definition: FEDRawData.cc:24
hcaldqm::ContainerSingleProf1D _cBadQualityvsBX
Definition: RawTask.h:69
Readout chain identification for Hcal.
bool check() const
Check for a good event Requires a minimum length, matching wordcount and length, not an empty event...
Definition: HcalHTRData.cc:63
DetIdVector::const_iterator bad_quality_end() const

◆ _resetMonitors()

void RawTask::_resetMonitors ( hcaldqm::UpdateFreq  uf)
overrideprotectedvirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 188 of file RawTask.cc.

188  {
189  // base reset
190  DQTask::_resetMonitors(uf);
191 }

◆ bookHistograms()

void RawTask::bookHistograms ( DQMStore::IBooker ib,
edm::Run const &  r,
edm::EventSetup const &  es 
)
overridevirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 23 of file RawTask.cc.

References _cBadQuality_depth, _cBadQuality_FEDuTCA, _cBadQualityvsBX, _cBadQualityvsLS, _cBcnMsm_ElectronicsuTCA, _cDataSizevsLS_FED, _cEvnMsm_ElectronicsuTCA, _cOrnMsm_ElectronicsuTCA, _cSummaryvsLS, _cSummaryvsLS_FED, _ehashmap, hcaldqm::DQTask::_emap, _filter_FEDsuTCA, _filter_FEDsVME, _filter_uTCA, _filter_VME, hcaldqm::DQModule::_maxLS, hcaldqm::DQModule::_name, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_subsystem, _vflags, _vhashFEDs, _xBadQLS, _xBcnMsmLS, _xEvnMsmLS, _xOrnMsmLS, hcaldqm::ContainerXXX< STDTYPE >::book(), hcaldqm::ContainerSingleProf1D::book(), hcaldqm::ContainerProf1D::book(), hcaldqm::ContainerSingle2D::book(), hcaldqm::Container2D::book(), bookHistograms(), hcaldqm::constants::CRATE_uTCA_MIN, hcaldqm::constants::CRATE_VME_MIN, hcaldqm::quantity::fBX, hcaldqm::hashfunctions::fCrate, hcaldqm::electronicsmap::fD2EHashMap, hcaldqm::quantity::fDataSize, hcaldqm::hashfunctions::fdepth, hcaldqm::utilities::fed2crate(), hcaldqm::constants::FED_VME_MIN, hcaldqm::hashfunctions::fElectronics, hcaldqm::hashfunctions::fFED, hcaldqm::quantity::fFiberuTCA, hcaldqm::filter::fFilter, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::quantity::fieta, hcaldqm::quantity::fiphi, hcaldqm::quantity::fN, hcaldqm::quantity::fN_m0to10000, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::filter::fPreserver, hcaldqm::quantity::fSlotuTCA, hcaldqm::quantity::fState, hcaldqm::utilities::getFEDList(), hcaldqm::utilities::getFEDuTCAList(), hcaldqm::utilities::getFEDVMEList(), edm::EventSetup::getHandle(), HcalDbService::getHcalMapping(), hcalDbServiceToken_, cuy::ib, hcaldqm::ContainerProf1D::initialize(), hcaldqm::ContainerSingleProf1D::initialize(), hcaldqm::ContainerXXX< STDTYPE >::initialize(), hcaldqm::filter::HashFilter::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::ContainerSingle2D::initialize(), hcaldqm::electronicsmap::ElectronicsMap::initialize(), alignCSCRings::r, HcalElectronicsId::rawId(), hcaldqm::constants::SLOT_uTCA_MIN, and hcaldqm::constants::SPIGOT_MIN.

23  {
25 
26  // GET WHAT YOU NEED
28  _emap = dbs->getHcalMapping();
29  std::vector<uint32_t> vVME;
30  std::vector<uint32_t> vuTCA;
31  vVME.push_back(
33  vuTCA.push_back(HcalElectronicsId(CRATE_uTCA_MIN, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
36 
38  "BadQualityvsLS",
41  0);
43  "BadQualityvsBX",
46  0);
48  "BadQuality",
53  0);
54 
55  // FED-based plots
56  if (_ptype != fOffline) { // hidefed2crate
57  std::vector<int> vFEDs = hcaldqm::utilities::getFEDList(_emap);
58  std::vector<int> vFEDsVME = hcaldqm::utilities::getFEDVMEList(_emap);
59  std::vector<int> vFEDsuTCA = hcaldqm::utilities::getFEDuTCAList(_emap);
60 
61  std::vector<uint32_t> vhashFEDsVME;
62  std::vector<uint32_t> vhashFEDsuTCA;
63 
64  for (std::vector<int>::const_iterator it = vFEDsVME.begin(); it != vFEDsVME.end(); ++it) {
65  vhashFEDsVME.push_back(
68  .rawId());
69  _vhashFEDs.push_back(
72  .rawId());
73  }
74  for (std::vector<int>::const_iterator it = vFEDsuTCA.begin(); it != vFEDsuTCA.end(); ++it) {
75  std::pair<uint16_t, uint16_t> cspair = utilities::fed2crate(*it);
76  vhashFEDsuTCA.push_back(
77  HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
78  _vhashFEDs.push_back(HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
79  }
82 
83  // INITIALIZE FIRST
85  "EvnMsm",
87  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
90  0);
92  "BcnMsm",
94  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
97  0);
99  "OrnMsm",
101  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
104  0);
105 
106  // Bad Quality
108  "BadQuality",
113  0);
114 
115  // Online only
116  if (_ptype == fOnline) {
122  "SummaryvsLS",
127  0);
129  "SummaryvsLS",
133  0);
134  // FED Size vs LS
136  "DataSizevsLS",
140  0);
141  }
142  }
143 
144  // BOOK HISTOGRAMS
145  if (_ptype != fOffline) {
149 
151  }
152  if (_ptype == fOffline) {
153  auto scope = DQMStore::IBooker::UseLumiScope(ib);
155  } else {
157  }
160 
161  // BOOK HISTOGRAMS to be used in ONLINE ONLY!
162  if (_ptype == fOnline) {
170  }
171 
172  // FOR OFFLINE PROCESSING MARK THESE HISTOGRAMS AS LUMI BASED
173  //if (_ptype == fOffline) {
174  //if (_ptype != fOffline) { // hidefed2crate
175  // Note that this is deliberately contradictory for the fed2crate fix, so it can be reversed if fed2crate is ever fixed properly,
176  // TODO: set LUMI scope while booking.
177  // _cEvnMsm_ElectronicsVME.setLumiFlag();
178  // _cBcnMsm_ElectronicsVME.setLumiFlag();
179  // _cEvnMsm_ElectronicsuTCA.setLumiFlag();
180  // _cBcnMsm_ElectronicsuTCA.setLumiFlag();
181  //}
182  //}
183 
184  // initialize hash map
186 }
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: RawTask.h:42
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: RawTask.h:78
int const CRATE_VME_MIN
Definition: Constants.h:95
std::pair< uint16_t, uint16_t > fed2crate(int fed)
Definition: Utilities.cc:10
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: RawTask.h:49
hcaldqm::Container2D _cOrnMsm_ElectronicsuTCA
Definition: RawTask.h:75
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
int const SPIGOT_MIN
Definition: Constants.h:120
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
const HcalElectronicsMap * getHcalMapping() const
hcaldqm::ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:76
int const FIBER_VME_MIN
Definition: Constants.h:125
void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0) override
int const FIBERCH_MIN
Definition: Constants.h:134
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
example_stream void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
Definition: Utilities.cc:115
hcaldqm::Container2D _cBadQuality_depth
Definition: RawTask.h:66
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: RawTask.h:79
hcaldqm::ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:76
ProcessingType _ptype
Definition: DQModule.h:44
hcaldqm::filter::HashFilter _filter_FEDsuTCA
Definition: RawTask.h:62
std::vector< uint32_t > _vhashFEDs
Definition: RawTask.h:56
int const FED_VME_MIN
Definition: Constants.h:82
int const FIBER_uTCA_MIN1
Definition: Constants.h:128
hcaldqm::ContainerXXX< uint32_t > _xOrnMsmLS
Definition: RawTask.h:76
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:540
std::string _name
Definition: DQModule.h:42
HcalElectronicsMap const * _emap
Definition: DQTask.h:81
hcaldqm::Container2D _cBadQuality_FEDuTCA
Definition: RawTask.h:65
int const CRATE_uTCA_MIN
Definition: Constants.h:100
hcaldqm::Container2D _cEvnMsm_ElectronicsuTCA
Definition: RawTask.h:73
hcaldqm::filter::HashFilter _filter_uTCA
Definition: RawTask.h:60
hcaldqm::ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:76
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:87
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container2D.cc:25
void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="") override
constexpr uint32_t rawId() const
hcaldqm::filter::HashFilter _filter_FEDsVME
Definition: RawTask.h:61
hcaldqm::ContainerSingleProf1D _cBadQualityvsLS
Definition: RawTask.h:68
std::vector< hcaldqm::flag::Flag > _vflags
Definition: RawTask.h:45
hcaldqm::Container2D _cBcnMsm_ElectronicsuTCA
Definition: RawTask.h:74
hcaldqm::ContainerProf1D _cDataSizevsLS_FED
Definition: RawTask.h:70
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:97
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
Definition: Utilities.cc:135
virtual void initialize(FilterType ftype, hashfunctions::HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:17
std::string _subsystem
Definition: DQModule.h:49
hcaldqm::filter::HashFilter _filter_VME
Definition: RawTask.h:59
hcaldqm::ContainerSingleProf1D _cBadQualityvsBX
Definition: RawTask.h:69
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:81
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:567
Readout chain identification for Hcal.
int const SLOT_uTCA_MIN
Definition: Constants.h:107
ib
Definition: cuy.py:661

◆ globalBeginLuminosityBlock()

std::shared_ptr< hcaldqm::Cache > RawTask::globalBeginLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
) const
override

Definition at line 374 of file RawTask.cc.

375  {
376  return DQTask::globalBeginLuminosityBlock(lb, es);
377  // _cBadQualityvsLS.extendAxisRange(_currentLS);
378  // _cSummaryvsLS_FED.extendAxisRange(_currentLS);
379  // _cSummaryvsLS.extendAxisRange(_currentLS);
380 }

◆ globalEndLuminosityBlock()

void RawTask::globalEndLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
override

Definition at line 382 of file RawTask.cc.

References _cSummaryvsLS, _cSummaryvsLS_FED, hcaldqm::DQModule::_currentLS, hcaldqm::DQModule::_evsPerLS, hcaldqm::DQModule::_ptype, hcaldqm::flag::Flag::_state, hcaldqm::DQTask::_vcdaqEids, _vflags, _vhashFEDs, _xBadQLS, _xBcnMsmLS, _xEvnMsmLS, _xOrnMsmLS, runTauDisplay::eid, hcaldqm::flag::fBAD, fBadQ, fBcnMsm, fEvnMsm, hcaldqm::flag::fGOOD, spr::find(), hcaldqm::flag::fNCDAQ, hcaldqm::fOnline, fOrnMsm, hcaldqm::flag::fPROBLEMATIC, hcaldqm::ContainerXXX< STDTYPE >::get(), edm::LuminosityBlock::index(), hcaldqm::utilities::isFEDHBHE(), hcaldqm::utilities::isFEDHF(), hcaldqm::utilities::isFEDHO(), hcaldqm::ContainerXXX< STDTYPE >::reset(), hcaldqm::flag::Flag::reset(), hcaldqm::ContainerSingle2D::setBinContent(), and hcaldqm::Container2D::setBinContent().

382  {
383  auto lumiCache = luminosityBlockCache(lb.index());
384  _currentLS = lumiCache->currentLS;
385  _evsPerLS = lumiCache->EvtCntLS;
386 
387  if (_ptype != fOnline)
388  return;
389 
390  //
391  // GENERATE STATUS ONLY FOR ONLINE!
392  //
393  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
394  flag::Flag fSum("RAW");
396 
397  std::vector<uint32_t>::const_iterator cit = std::find(_vcdaqEids.begin(), _vcdaqEids.end(), *it);
398  if (cit == _vcdaqEids.end()) {
399  // not @cDAQ
400  for (uint32_t iflag = 0; iflag < _vflags.size(); iflag++)
403  continue;
404  }
405 
406  // FED is @cDAQ
408  if (_xEvnMsmLS.get(eid) > 0)
409  _vflags[fEvnMsm]._state = flag::fBAD;
410  else
411  _vflags[fEvnMsm]._state = flag::fGOOD;
412  if (_xBcnMsmLS.get(eid) > 0)
413  _vflags[fBcnMsm]._state = flag::fBAD;
414  else
415  _vflags[fBcnMsm]._state = flag::fGOOD;
416  if (_xOrnMsmLS.get(eid) > 0)
417  _vflags[fOrnMsm]._state = flag::fBAD;
418  else
419  _vflags[fOrnMsm]._state = flag::fGOOD;
420  if (double(_xBadQLS.get(eid)) > double(12 * _evsPerLS))
421  _vflags[fBadQ]._state = flag::fBAD;
422  else if (_xBadQLS.get(eid) > 0)
423  _vflags[fBadQ]._state = flag::fPROBLEMATIC;
424  else
425  _vflags[fBadQ]._state = flag::fGOOD;
426  }
427 
428  int iflag = 0;
429  // iterate over all flags:
430  // - sum them all up in summary flag for this FED
431  // - reset each flag right after using it
432  for (std::vector<flag::Flag>::iterator ft = _vflags.begin(); ft != _vflags.end(); ++ft) {
433  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag), ft->_state);
434  fSum += (*ft);
435  iflag++;
436 
437  // this is the MUST! We don't keep flags per FED, reset
438  // each one of them after using
439  ft->reset();
440  }
441  _cSummaryvsLS.setBinContent(eid, _currentLS, fSum._state);
442  }
443 
444  // reset...
445  _xOrnMsmLS.reset();
446  _xEvnMsmLS.reset();
447  _xBcnMsmLS.reset();
448  _xBadQLS.reset();
449 
450  // in the end always do the DQTask::endLumi
451  DQTask::globalEndLuminosityBlock(lb, es);
452 }
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: RawTask.h:78
hcaldqm::ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:76
virtual void reset()
Definition: ContainerXXX.h:292
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: RawTask.h:79
hcaldqm::ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:76
ProcessingType _ptype
Definition: DQModule.h:44
virtual void setBinContent(int, int, int)
std::vector< uint32_t > _vhashFEDs
Definition: RawTask.h:56
hcaldqm::ContainerXXX< uint32_t > _xOrnMsmLS
Definition: RawTask.h:76
hcaldqm::ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:76
bool isFEDHBHE(HcalElectronicsId const &)
Definition: Utilities.cc:156
void setBinContent(HcalDetId const &, int) override
Definition: Container2D.cc:163
std::vector< hcaldqm::flag::Flag > _vflags
Definition: RawTask.h:45
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
bool isFEDHO(HcalElectronicsId const &)
Definition: Utilities.cc:182
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:69
Readout chain identification for Hcal.
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:170

Member Data Documentation

◆ _calibProcessing

bool RawTask::_calibProcessing
protected

Definition at line 52 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _cBadQuality_depth

hcaldqm::Container2D RawTask::_cBadQuality_depth
protected

Definition at line 66 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadQuality_FEDuTCA

hcaldqm::Container2D RawTask::_cBadQuality_FEDuTCA
protected

Definition at line 65 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadQualityLS_depth

hcaldqm::Container2D RawTask::_cBadQualityLS_depth
protected

Definition at line 67 of file RawTask.h.

◆ _cBadQualityvsBX

hcaldqm::ContainerSingleProf1D RawTask::_cBadQualityvsBX
protected

Definition at line 69 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadQualityvsLS

hcaldqm::ContainerSingleProf1D RawTask::_cBadQualityvsLS
protected

Definition at line 68 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBcnMsm_ElectronicsuTCA

hcaldqm::Container2D RawTask::_cBcnMsm_ElectronicsuTCA
protected

Definition at line 74 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cDataSizevsLS_FED

hcaldqm::ContainerProf1D RawTask::_cDataSizevsLS_FED
protected

Definition at line 70 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cEvnMsm_ElectronicsuTCA

hcaldqm::Container2D RawTask::_cEvnMsm_ElectronicsuTCA
protected

Definition at line 73 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOrnMsm_ElectronicsuTCA

hcaldqm::Container2D RawTask::_cOrnMsm_ElectronicsuTCA
protected

Definition at line 75 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSummaryvsLS

hcaldqm::ContainerSingle2D RawTask::_cSummaryvsLS
protected

Definition at line 79 of file RawTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _cSummaryvsLS_FED

hcaldqm::Container2D RawTask::_cSummaryvsLS_FED
protected

Definition at line 78 of file RawTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _ehashmap

hcaldqm::electronicsmap::ElectronicsMap RawTask::_ehashmap
protected

Definition at line 49 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _filter_FEDsuTCA

hcaldqm::filter::HashFilter RawTask::_filter_FEDsuTCA
protected

Definition at line 62 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _filter_FEDsVME

hcaldqm::filter::HashFilter RawTask::_filter_FEDsVME
protected

Definition at line 61 of file RawTask.h.

Referenced by _process(), and bookHistograms().

◆ _filter_uTCA

hcaldqm::filter::HashFilter RawTask::_filter_uTCA
protected

Definition at line 60 of file RawTask.h.

Referenced by bookHistograms().

◆ _filter_VME

hcaldqm::filter::HashFilter RawTask::_filter_VME
protected

Definition at line 59 of file RawTask.h.

Referenced by bookHistograms().

◆ _tagFEDs

edm::InputTag RawTask::_tagFEDs
protected

Definition at line 38 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _tagReport

edm::InputTag RawTask::_tagReport
protected

Definition at line 39 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _thresh_calib_nbadq

int RawTask::_thresh_calib_nbadq
protected

Definition at line 53 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _tokFEDs

edm::EDGetTokenT<FEDRawDataCollection> RawTask::_tokFEDs
protected

Definition at line 40 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _tokReport

edm::EDGetTokenT<HcalUnpackerReport> RawTask::_tokReport
protected

Definition at line 41 of file RawTask.h.

Referenced by _process(), and RawTask().

◆ _vflags

std::vector<hcaldqm::flag::Flag> RawTask::_vflags
protected

Definition at line 45 of file RawTask.h.

Referenced by bookHistograms(), globalEndLuminosityBlock(), and RawTask().

◆ _vhashFEDs

std::vector<uint32_t> RawTask::_vhashFEDs
protected

Definition at line 56 of file RawTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _xBadQLS

hcaldqm::ContainerXXX<uint32_t> RawTask::_xBadQLS
protected

Definition at line 76 of file RawTask.h.

Referenced by _process(), bookHistograms(), and globalEndLuminosityBlock().

◆ _xBcnMsmLS

hcaldqm::ContainerXXX<uint32_t> RawTask::_xBcnMsmLS
protected

Definition at line 76 of file RawTask.h.

Referenced by _process(), bookHistograms(), and globalEndLuminosityBlock().

◆ _xEvnMsmLS

hcaldqm::ContainerXXX<uint32_t> RawTask::_xEvnMsmLS
protected

Definition at line 76 of file RawTask.h.

Referenced by _process(), bookHistograms(), and globalEndLuminosityBlock().

◆ _xOrnMsmLS

hcaldqm::ContainerXXX<uint32_t> RawTask::_xOrnMsmLS
protected

Definition at line 76 of file RawTask.h.

Referenced by _process(), bookHistograms(), and globalEndLuminosityBlock().

◆ calibProcessing

RawTask.calibProcessing

Definition at line 21 of file RawTask.py.

◆ debug

RawTask.debug

◆ hcalDbServiceToken_

edm::ESGetToken<HcalDbService, HcalDbRecord> RawTask::hcalDbServiceToken_
protected

Definition at line 42 of file RawTask.h.

Referenced by bookHistograms().

◆ mtype

RawTask.mtype

Definition at line 15 of file RawTask.py.

◆ name

RawTask.name

Definition at line 10 of file RawTask.py.

Referenced by ElectronMVAID.ElectronMVAID.__call__(), FWLite.ElectronMVAID.__call__(), dirstructure.Directory.__create_pie_image(), DisplayManager.DisplayManager.__del__(), dqm_interfaces.DirID.__eq__(), dirstructure.Directory.__get_full_path(), dirstructure.Comparison.__get_img_name(), dataset.Dataset.__getDataType(), dataset.Dataset.__getFileInfoList(), dirstructure.Comparison.__make_image(), core.autovars.NTupleVariable.__repr__(), core.autovars.NTupleObjectType.__repr__(), core.autovars.NTupleObject.__repr__(), core.autovars.NTupleCollection.__repr__(), dirstructure.Directory.__repr__(), dqm_interfaces.DirID.__repr__(), dirstructure.Comparison.__repr__(), config.Service.__setattr__(), config.CFG.__str__(), counter.Counter.__str__(), average.Average.__str__(), FWLite.WorkingPoints._reformat_cut_definitions(), core.autovars.NTupleObjectType.addSubObjects(), core.autovars.NTupleObjectType.addVariables(), core.autovars.NTupleObjectType.allVars(), dataset.CMSDataset.buildListOfFiles(), dataset.LocalDataset.buildListOfFiles(), dataset.CMSDataset.buildListOfFilesDBS(), dirstructure.Directory.calcStats(), validation.Sample.digest(), python.rootplot.utilities.Hist.divide(), python.rootplot.utilities.Hist.divide_wilson(), DisplayManager.DisplayManager.Draw(), TreeCrawler.Package.dump(), core.autovars.NTupleVariable.fillBranch(), core.autovars.NTupleObject.fillBranches(), core.autovars.NTupleCollection.fillBranchesScalar(), core.autovars.NTupleCollection.fillBranchesVector(), core.autovars.NTupleCollection.get_cpp_declaration(), core.autovars.NTupleCollection.get_cpp_wrapper_class(), core.autovars.NTupleCollection.get_py_wrapper_class(), utils.StatisticalTest.get_status(), production_tasks.Task.getname(), dataset.CMSDataset.getPrimaryDatasetEntries(), dataset.PrivateDataset.getPrimaryDatasetEntries(), VIDSelectorBase.VIDSelectorBase.initialize(), personalPlayback.Applet.log(), core.autovars.NTupleVariable.makeBranch(), core.autovars.NTupleObject.makeBranches(), core.autovars.NTupleCollection.makeBranchesScalar(), core.autovars.NTupleCollection.makeBranchesVector(), dirstructure.Directory.print_report(), dataset.BaseDataset.printInfo(), dataset.Dataset.printInfo(), production_tasks.MonitorJobs.run(), python.rootplot.utilities.Hist.TGraph(), python.rootplot.utilities.Hist.TH1F(), counter.Counter.write(), and average.Average.write().

◆ ptype

RawTask.ptype

Definition at line 14 of file RawTask.py.

◆ rawTask

RawTask.rawTask

Definition at line 6 of file RawTask.py.

◆ runkeyName

RawTask.runkeyName

Definition at line 13 of file RawTask.py.

◆ runkeyVal

RawTask.runkeyVal

Definition at line 12 of file RawTask.py.

◆ subsystem

RawTask.subsystem

Definition at line 16 of file RawTask.py.

◆ tagFEDs

RawTask.tagFEDs

Definition at line 19 of file RawTask.py.

◆ tagReport

RawTask.tagReport

Definition at line 20 of file RawTask.py.

◆ thresh_calib_nbadq

RawTask.thresh_calib_nbadq

Definition at line 22 of file RawTask.py.