CMS 3D CMS Logo

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

#include <DigiTask.h>

Inheritance diagram for DigiTask:
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
 
 DigiTask (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
 
 ~DigiTask () 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

 cutSumQ_HBHE
 
 cutSumQ_HF
 
 cutSumQ_HO
 
 debug
 
 digiTask
 
 ledCalibrationChannels
 
 mtype
 
 name
 
 ptype
 
 qie10InConditions
 
 refDigiSize
 
 runkeyName
 
 runkeyVal
 
 subsystem
 
 tagHBHE
 
 tagHF
 
 tagHO
 
 thresh_led
 
 thresh_unifh
 

Protected Types

enum  DigiFlag {
  fDigiSize = 0, fUni = 1, fNChsHF = 2, fUnknownIds = 3,
  fLED = 4, fCapId = 5, nDigiFlag = 6
}
 

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

hcaldqm::Container1D _cADC_SubdetPM
 
hcaldqm::Container1D _cADC_SubdetPM_QIE1011
 
hcaldqm::Container2D _cADCvsTS_SubdetPM
 
hcaldqm::Container2D _cADCvsTS_SubdetPM_QIE1011
 
std::map< HcalSubdetector, short > _capidmbx
 
hcaldqm::Container2D _cBadTDCCount_depth
 
hcaldqm::Container1D _cBadTDCValues
 
hcaldqm::Container1D _cBadTDCValues_SubdetPM
 
hcaldqm::Container1D _cBadTDCvsBX
 
hcaldqm::Container1D _cBadTDCvsBX_SubdetPM
 
hcaldqm::Container1D _cBadTDCvsLS
 
hcaldqm::Container1D _cBadTDCvsLS_SubdetPM
 
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLS
 
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLSmod60
 
hcaldqm::ContainerSingle2D _cCapidMinusBXmod4_CrateSlotuTCA [4]
 
hcaldqm::Container1D _cCapidMinusBXmod4_SubdetPM
 
hcaldqm::Container1D _cDigiSize_Crate
 
hcaldqm::Container1D _cDigiSize_FED
 
hcaldqm::ContainerProf1D _cDigiSizevsLS_FED
 
hcaldqm::Container1D _cfC_SubdetPM
 
hcaldqm::Container1D _cfC_SubdetPM_QIE1011
 
hcaldqm::ContainerProf2D _cLETDCTime_depth
 
hcaldqm::Container1D _cLETDCTime_SubdetPM
 
hcaldqm::Container2D _cLETDCTimevsADC_SubdetPM
 
hcaldqm::Container2D _cLETDCvsADC_2bit_SubdetPM
 
hcaldqm::Container2D _cLETDCvsADC_6bit_SubdetPM
 
hcaldqm::Container2D _cLETDCvsTS_2bit_SubdetPM
 
hcaldqm::Container2D _cLETDCvsTS_6bit_SubdetPM
 
hcaldqm::Container2D _cOccupancy_Crate
 
hcaldqm::Container2D _cOccupancy_CrateSlot
 
hcaldqm::Container2D _cOccupancy_depth
 
hcaldqm::Container2D _cOccupancy_ElectronicsuTCA
 
hcaldqm::Container2D _cOccupancy_FEDuTCA
 
hcaldqm::Container2D _cOccupancyCut_depth
 
hcaldqm::Container2D _cOccupancyCut_ElectronicsuTCA
 
hcaldqm::Container2D _cOccupancyCut_FEDuTCA
 
hcaldqm::ContainerProf1D _cOccupancyCutvsBX_Subdet
 
hcaldqm::Container1D _cOccupancyCutvsieta_Subdet
 
hcaldqm::Container1D _cOccupancyCutvsiphi_SubdetPM
 
hcaldqm::Container2D _cOccupancyCutvsiphivsLS_SubdetPM
 
hcaldqm::ContainerProf1D _cOccupancyCutvsLS_Subdet
 
hcaldqm::Container1D _cOccupancyvsieta_Subdet
 
hcaldqm::Container1D _cOccupancyvsiphi_SubdetPM
 
hcaldqm::ContainerProf1D _cOccupancyvsLS_Subdet
 
hcaldqm::ContainerProf1D _cQ2Q12CutvsLS_FEDHF
 
hcaldqm::Container1D _cShapeCut_FED
 
hcaldqm::ContainerSingle2D _cSummaryvsLS
 
hcaldqm::Container2D _cSummaryvsLS_FED
 
hcaldqm::ContainerProf2D _cSumQ_depth
 
hcaldqm::Container1D _cSumQ_SubdetPM
 
hcaldqm::Container1D _cSumQ_SubdetPM_QIE1011
 
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM
 
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM_QIE1011
 
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM
 
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM_QIE1011
 
hcaldqm::ContainerProf2D _cTimingCut_depth
 
hcaldqm::ContainerProf2D _cTimingCut_ElectronicsuTCA
 
hcaldqm::ContainerProf2D _cTimingCut_FEDuTCA
 
hcaldqm::Container1D _cTimingCut_SubdetPM
 
hcaldqm::Container1D _cTimingCutHTH_SubdetPM
 
hcaldqm::ContainerProf1D _cTimingCutvsieta_Subdet
 
hcaldqm::ContainerProf1D _cTimingCutvsiphi_SubdetPM
 
hcaldqm::ContainerProf1D _cTimingCutvsLS_FED
 
hcaldqm::ContainerProf1D _cTimingCutvsLS_SubdetPM
 
double _cutSumQ_HBHE
 
double _cutSumQ_HF
 
double _cutSumQ_HO
 
hcaldqm::electronicsmap::ElectronicsMap _dhashmap
 
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
 
hcaldqm::filter::HashFilter _filter_FEDHF
 
hcaldqm::filter::HashFilter _filter_QIE1011
 
hcaldqm::filter::HashFilter _filter_QIE8
 
hcaldqm::filter::HashFilter _filter_TDC2bit
 
hcaldqm::filter::HashFilter _filter_TDC6bit
 
hcaldqm::filter::HashFilter _filter_uTCA
 
hcaldqm::filter::HashFilter _filter_VME
 
hcaldqm::Container2D _LED_ADCvsBX_Subdet
 
hcaldqm::Container1D _LED_CUCountvsLS_Subdet
 
hcaldqm::Container1D _LED_CUCountvsLSmod60_Subdet
 
std::map< HcalSubdetector, std::vector< HcalDetId > > _ledCalibrationChannels
 
bool _qie10InConditions
 
std::map< HcalSubdetector, int > _refDigiSize
 
edm::InputTag _tagHO
 
edm::InputTag _tagQIE10
 
edm::InputTag _tagQIE11
 
double _thresh_led
 
double _thresh_unihf
 
edm::EDGetTokenT< HODigiCollection_tokHO
 
edm::EDGetTokenT< QIE10DigiCollection_tokQIE10
 
edm::EDGetTokenT< QIE11DigiCollection_tokQIE11
 
bool _unknownIdsPresent
 
std::vector< hcaldqm::flag::Flag_vflags
 
std::vector< uint32_t > _vhashFEDs
 
hcaldqm::ContainerXXX< uint32_t > _xBadCapid
 
hcaldqm::ContainerXXX< uint32_t > _xDigiSize
 
hcaldqm::ContainerXXX< uint32_t > _xNChs
 
hcaldqm::ContainerXXX< uint32_t > _xNChsNominal
 
hcaldqm::ContainerXXX< uint32_t > _xUni
 
hcaldqm::ContainerXXX< uint32_t > _xUniHF
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
MonitorElementmeNumEvents1LS
 
MonitorElementmeUnknownIds1LS
 
- 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: DigiTask.h Author: VK Description: HCAL DIGI Data Tier Processing.

Online:

Offline:

Definition at line 29 of file DigiTask.h.

Member Enumeration Documentation

◆ DigiFlag

enum DigiTask::DigiFlag
protected
Enumerator
fDigiSize 
fUni 
fNChsHF 
fUnknownIds 
fLED 
fCapId 
nDigiFlag 

Definition at line 56 of file DigiTask.h.

Constructor & Destructor Documentation

◆ DigiTask()

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

Definition at line 7 of file DigiTask.cc.

References _capidmbx, _cutSumQ_HBHE, _cutSumQ_HF, _cutSumQ_HO, _qie10InConditions, _refDigiSize, _tagHO, _tagQIE10, _tagQIE11, _thresh_led, _thresh_unihf, _tokHO, _tokQIE10, _tokQIE11, _vflags, fCapId, fDigiSize, nanoDQM_cff::Flag, fLED, fNChsHF, fUni, fUnknownIds, edm::ParameterSet::getUntrackedParameter(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HLT_2022v12_cff::InputTag, createfilelist::int, and nDigiFlag.

8  : DQTask(ps), hcalDbServiceToken_(esConsumes<HcalDbService, HcalDbRecord, edm::Transition::BeginRun>()) {
9  _tagQIE11 = ps.getUntrackedParameter<edm::InputTag>("tagHE", edm::InputTag("hcalDigis"));
10  _tagHO = ps.getUntrackedParameter<edm::InputTag>("tagHO", edm::InputTag("hcalDigis"));
11  _tagQIE10 = ps.getUntrackedParameter<edm::InputTag>("tagHF", edm::InputTag("hcalDigis"));
12 
13  _tokQIE11 = consumes<QIE11DigiCollection>(_tagQIE11);
14  _tokHO = consumes<HODigiCollection>(_tagHO);
15  _tokQIE10 = consumes<QIE10DigiCollection>(_tagQIE10);
16 
17  _cutSumQ_HBHE = ps.getUntrackedParameter<double>("cutSumQ_HBHE", 20);
18  _cutSumQ_HO = ps.getUntrackedParameter<double>("cutSumQ_HO", 20);
19  _cutSumQ_HF = ps.getUntrackedParameter<double>("cutSumQ_HF", 20);
20  _thresh_unihf = ps.getUntrackedParameter<double>("thresh_unihf", 0.2);
21  _thresh_led = ps.getUntrackedParameter<double>("thresh_led", 20);
22 
23  _vflags.resize(nDigiFlag);
24  _vflags[fUni] = hcaldqm::flag::Flag("UniSlotHF");
25  _vflags[fDigiSize] = hcaldqm::flag::Flag("DigiSize");
26  _vflags[fNChsHF] = hcaldqm::flag::Flag("NChsHF");
27  _vflags[fUnknownIds] = hcaldqm::flag::Flag("UnknownIds");
28  _vflags[fLED] = hcaldqm::flag::Flag("LEDMisfire");
29  _vflags[fCapId] = hcaldqm::flag::Flag("BadCapId");
30 
31  _qie10InConditions = ps.getUntrackedParameter<bool>("qie10InConditions", true);
32 
33  // Get reference digi sizes. Convert from unsigned to signed int, because <digi>::size()/samples() return ints for some reason.
34  std::vector<uint32_t> vrefDigiSize = ps.getUntrackedParameter<std::vector<uint32_t>>("refDigiSize");
35  _refDigiSize[HcalBarrel] = (int)vrefDigiSize[0];
36  _refDigiSize[HcalEndcap] = (int)vrefDigiSize[1];
37  _refDigiSize[HcalOuter] = (int)vrefDigiSize[2];
38  _refDigiSize[HcalForward] = (int)vrefDigiSize[3];
39 
40  // (capid - BX) % 4 to 1
41  _capidmbx[HcalBarrel] = 1;
42  _capidmbx[HcalEndcap] = 1;
43  _capidmbx[HcalOuter] = 1;
45 }
bool _qie10InConditions
Definition: DigiTask.h:182
double _thresh_led
Definition: DigiTask.h:187
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: DigiTask.h:49
edm::InputTag _tagQIE10
Definition: DigiTask.h:45
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:8
edm::InputTag _tagHO
Definition: DigiTask.h:44
std::map< HcalSubdetector, int > _refDigiSize
Definition: DigiTask.h:61
double _cutSumQ_HO
Definition: DigiTask.h:51
double _thresh_unihf
Definition: DigiTask.h:52
std::map< HcalSubdetector, short > _capidmbx
Definition: DigiTask.h:184
edm::EDGetTokenT< QIE10DigiCollection > _tokQIE10
Definition: DigiTask.h:48
edm::EDGetTokenT< HODigiCollection > _tokHO
Definition: DigiTask.h:47
double _cutSumQ_HF
Definition: DigiTask.h:51
edm::EDGetTokenT< QIE11DigiCollection > _tokQIE11
Definition: DigiTask.h:46
double _cutSumQ_HBHE
Definition: DigiTask.h:51
std::vector< hcaldqm::flag::Flag > _vflags
Definition: DigiTask.h:55
edm::InputTag _tagQIE11
Definition: DigiTask.h:43

◆ ~DigiTask()

DigiTask::~DigiTask ( )
inlineoverride

Definition at line 32 of file DigiTask.h.

32 {}

Member Function Documentation

◆ _process()

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

Implements hcaldqm::DQTask.

Definition at line 768 of file DigiTask.cc.

References _cADC_SubdetPM, _cADC_SubdetPM_QIE1011, _cADCvsTS_SubdetPM, _cADCvsTS_SubdetPM_QIE1011, _capidmbx, _cBadTDCCount_depth, _cBadTDCValues_SubdetPM, _cBadTDCvsBX_SubdetPM, _cBadTDCvsLS_SubdetPM, _cCapid_BadvsFEDvsLS, _cCapid_BadvsFEDvsLSmod60, _cCapidMinusBXmod4_CrateSlotuTCA, _cCapidMinusBXmod4_SubdetPM, _cDigiSize_Crate, _cDigiSize_FED, _cDigiSizevsLS_FED, _cfC_SubdetPM, _cfC_SubdetPM_QIE1011, _cLETDCTime_depth, _cLETDCTime_SubdetPM, _cLETDCTimevsADC_SubdetPM, _cLETDCvsADC_2bit_SubdetPM, _cLETDCvsADC_6bit_SubdetPM, _cLETDCvsTS_2bit_SubdetPM, _cLETDCvsTS_6bit_SubdetPM, _cOccupancy_Crate, _cOccupancy_CrateSlot, _cOccupancy_depth, _cOccupancy_ElectronicsuTCA, _cOccupancy_FEDuTCA, _cOccupancyCut_depth, _cOccupancyCut_ElectronicsuTCA, _cOccupancyCut_FEDuTCA, _cOccupancyCutvsBX_Subdet, _cOccupancyCutvsieta_Subdet, _cOccupancyCutvsiphi_SubdetPM, _cOccupancyCutvsiphivsLS_SubdetPM, _cOccupancyCutvsLS_Subdet, _cOccupancyvsieta_Subdet, _cOccupancyvsiphi_SubdetPM, _cOccupancyvsLS_Subdet, _cQ2Q12CutvsLS_FEDHF, _cShapeCut_FED, _cSumQ_depth, _cSumQ_SubdetPM, _cSumQ_SubdetPM_QIE1011, _cSumQvsBX_SubdetPM, _cSumQvsBX_SubdetPM_QIE1011, _cSumQvsLS_SubdetPM, _cSumQvsLS_SubdetPM_QIE1011, _cTimingCut_depth, _cTimingCut_ElectronicsuTCA, _cTimingCut_FEDuTCA, _cTimingCut_SubdetPM, _cTimingCutHTH_SubdetPM, _cTimingCutvsieta_Subdet, _cTimingCutvsiphi_SubdetPM, _cTimingCutvsLS_FED, _cTimingCutvsLS_SubdetPM, hcaldqm::DQModule::_currentLS, _cutSumQ_HBHE, _cutSumQ_HF, _cutSumQ_HO, hcaldqm::DQTask::_dbService, _ehashmap, _LED_ADCvsBX_Subdet, _LED_CUCountvsLS_Subdet, _LED_CUCountvsLSmod60_Subdet, _ledCalibrationChannels, hcaldqm::DQModule::_logger, hcaldqm::DQModule::_ptype, _qie10InConditions, _refDigiSize, _tagHO, _tagQIE10, _tagQIE11, _thresh_led, _tokHO, _tokQIE10, _tokQIE11, _unknownIdsPresent, _vhashFEDs, _xBadCapid, _xDigiSize, _xNChs, hcaldqm::DQTask::_xQuality, _xUniHF, gpuClustering::adc, edm::SortedCollection< T, SORT >::begin(), edm::DataFrameContainer::begin(), simKBmtfDigis_cfi::bx, callgraph::cs, QIE11DataFrame::detid(), QIE10DataFrame::detid(), Logger::dqmthrow(), MillePedeFileConverter_cfg::e, runTauDisplay::eid, edm::SortedCollection< T, SORT >::end(), edm::DataFrameContainer::end(), mps_fire::end, hcaldqm::ContainerXXX< STDTYPE >::exists(), hcaldqm::Container2D::fill(), hcaldqm::ContainerSingle2D::fill(), hcaldqm::ContainerProf2D::fill(), hcaldqm::Container1D::fill(), dqm::impl::MonitorElement::Fill(), spr::find(), hcaldqm::fLocal, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::ContainerXXX< STDTYPE >::get(), HcalBarrel, HcalCalibration, HcalChannelStatus::HcalCellDead, HcalChannelStatus::HcalCellMask, HcalEndcap, HcalForward, HcalOther, HcalOuter, mps_fire::i, edm::InputTag::instance(), edm::InputTag::label(), hcaldqm::electronicsmap::ElectronicsMap::lookup(), meNumEvents1LS, meUnknownIds1LS, submitPVResolutionJobs::q, DetId::rawId(), hcaldqm::ContainerXXX< STDTYPE >::reset(), QIE11DataFrame::samples(), QIE10DataFrame::samples(), hcaldqm::ContainerSingle2D::setBinContent(), CaloSamples::size(), HODataFrame::size(), HcalOtherDetId::subdet(), HcalDetId::subdet(), hcaldqm::utilities::sumQ(), protons_cff::time, and ecalMatacq_cfi::timing.

768  {
772 
773  if (!e.getByToken(_tokQIE11, c_QIE11))
774  _logger.dqmthrow("Collection QIE11DigiCollection isn't available" + _tagQIE11.label() + " " + _tagQIE11.instance());
775  if (!e.getByToken(_tokHO, c_ho))
776  _logger.dqmthrow("Collection HODigiCollection isn't available" + _tagHO.label() + " " + _tagHO.instance());
777  if (!e.getByToken(_tokQIE10, c_QIE10))
778  _logger.dqmthrow("Collection QIE10DigiCollection isn't available" + _tagQIE10.label() + " " + _tagQIE10.instance());
779 
780  // extract some info per event
781  int bx = e.bunchCrossing();
782  meNumEvents1LS->Fill(0.5); // just increment
783 
784  auto lumiCache = luminosityBlockCache(e.getLuminosityBlock().index());
785  _currentLS = lumiCache->currentLS;
786  _xQuality.reset();
787  _xQuality = lumiCache->xQuality;
788 
789  if (_ptype == fOnline &&
790  lumiCache->EvtCntLS == 1) { // Reset the bin for _cCapid_BadvsFEDvsLSmod60 at the beginning of each new LS
791  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
794  }
795  }
796 
797  // To fill histograms outside of the loop, you need to determine if there were
798  // any valid det ids first
799  uint32_t rawidValid = 0;
800  uint32_t rawidHBValid = 0;
801  uint32_t rawidHEValid = 0;
802 
803  // HB collection
804  int numChs = 0;
805  int numChsCut = 0;
806  int numChsHE = 0;
807  int numChsCutHE = 0;
808 
809  // HB+HE QIE11 collection
810  for (QIE11DigiCollection::const_iterator it = c_QIE11->begin(); it != c_QIE11->end(); ++it) {
811  const QIE11DataFrame digi = static_cast<const QIE11DataFrame>(*it);
812 
813  // Explicit check on the DetIds present in the Collection
814  HcalDetId const& did = digi.detid();
815  if ((did.subdet() != HcalBarrel) && (did.subdet() != HcalEndcap)) {
816  // LED monitoring from calibration channels
817  if (_ptype != fLocal) {
818  if (did.subdet() == HcalOther) {
819  HcalOtherDetId hodid(digi.detid());
820  if (hodid.subdet() == HcalCalibration) {
823  did) != _ledCalibrationChannels[HcalEndcap].end()) {
824  bool channelLEDSignalPresent = false;
825  for (int i = 0; i < digi.samples(); i++) {
826  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalEndcap, 16, 1, 1), bx, digi[i].adc());
827 
828  if (digi[i].adc() > _thresh_led) {
829  channelLEDSignalPresent = true;
830  }
831  }
832  if (channelLEDSignalPresent) {
834  if (_ptype == fOnline) {
836  }
837  }
838  } else if (std::find(_ledCalibrationChannels[HcalBarrel].begin(),
841  bool channelLEDSignalPresent = false;
842  for (int i = 0; i < digi.samples(); i++) {
843  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalBarrel, 1, 1, 1), bx, digi[i].adc());
844 
845  if (digi[i].adc() > _thresh_led) {
846  channelLEDSignalPresent = true;
847  }
848  }
849  if (channelLEDSignalPresent) {
851  if (_ptype == fOnline) {
853  }
854  }
855  }
856  }
857  }
858  }
859  continue;
860  }
861 
862  uint32_t rawid = _ehashmap.lookup(did);
863  if (rawid == 0) {
864  meUnknownIds1LS->Fill(1);
865  _unknownIdsPresent = true;
866  continue;
867  } else {
868  if (did.subdet() == HcalBarrel) {
869  rawidHBValid = did.rawId();
870  } else if (did.subdet() == HcalEndcap) {
871  rawidHEValid = did.rawId();
872  }
873  }
874  HcalElectronicsId const& eid(rawid);
875 
876  // filter out channels that are masked out
877  if (_xQuality.exists(did)) {
878  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
880  continue;
881  }
882 
883  // (capid - BX) % 4
884  if (_ptype == fOnline) {
885  short soi = -1;
886  for (int i = 0; i < digi.samples(); i++) {
887  if (digi[i].soi()) {
888  soi = i;
889  break;
890  }
891  }
892  short this_capidmbx = (digi[soi].capid() - bx) % 4;
893  if (this_capidmbx < 0) {
894  this_capidmbx += 4;
895  }
896  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
897  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
898  if (!good_capidmbx) {
899  _xBadCapid.get(eid)++;
902  }
903  if (!eid.isVMEid()) {
904  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
905  }
906  }
907 
908  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE11DataFrame>(_dbService, did, digi);
909  double sumQ = hcaldqm::utilities::sumQDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1);
910 
912  _cOccupancy_depth.fill(did);
913  if (_ptype == fOnline || _ptype == fLocal) {
916  }
917  if (_ptype == fOnline) {
918  _cDigiSizevsLS_FED.fill(eid, _currentLS, digi.samples());
919  digi.samples() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
922  }
923  _cDigiSize_Crate.fill(eid, digi.samples());
924  if (_ptype != fOffline) { // hidefed2crate
925  _cDigiSize_FED.fill(eid, digi.samples());
926  if (!eid.isVMEid()) {
929  /*
930  if (!digi.validate(0, digi.size()))
931  {
932  _cCapIdRots_depth.fill(did);
933  _cCapIdRots_FEDuTCA.fill(eid, 1);
934  }*/
935  }
936  }
937  for (int i = 0; i < digi.samples(); i++) {
938  double q = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE11DataFrame>(_dbService, digi_fC, did, digi, i);
939  _cADC_SubdetPM_QIE1011.fill(did, digi[i].adc());
941 
942  if (did.subdet() == HcalBarrel) {
943  _cLETDCvsADC_2bit_SubdetPM.fill(did, digi[i].adc(), digi[i].tdc());
944  _cLETDCvsTS_2bit_SubdetPM.fill(did, (int)i, digi[i].tdc());
945 
946  if (digi[i].tdc() < 2) {
947  double time = i * 25. + (digi[i].tdc() * 12.5);
950  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
951  }
952  } else if (did.subdet() == HcalEndcap) {
953  _cLETDCvsADC_6bit_SubdetPM.fill(did, digi[i].adc(), digi[i].tdc());
954  _cLETDCvsTS_6bit_SubdetPM.fill(did, (int)i, digi[i].tdc());
955  if (digi[i].tdc() < 50) {
956  double time = i * 25. + (digi[i].tdc() / 2.);
959  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
960  }
961  // Bad TDC values: 50-61 should never happen in QIE10 or QIE11, but we saw some in 2017 data.
962  if ((50 <= digi[i].tdc()) && (digi[i].tdc() <= 61)) {
963  _cBadTDCValues_SubdetPM.fill(did, digi[i].tdc());
967  }
968  }
969  if (_ptype != fOffline) { // hidefed2crate
970  _cADCvsTS_SubdetPM_QIE1011.fill(did, i, digi[i].adc());
971  if (sumQ > _cutSumQ_HBHE) {
973  }
974  }
975  }
976 
977  if (sumQ > _cutSumQ_HBHE) {
978  //double timing = hcaldqm::utilities::aveTS_v10<QIE11DataFrame>(digi, 2.5, 0,digi.samples()-1);
979  // without pedestal substraction, request from https://gitlab.cern.ch/cmshcal/docs/-/issues/106
980  double timing =
981  hcaldqm::utilities::aveTSDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1, false);
983  // with pedestal substraction for energetic hits
984  if (sumQ > 100. * _cutSumQ_HBHE)
986  did, hcaldqm::utilities::aveTSDB<QIE11DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1));
990  if (_ptype != fOffline) { // hidefed2crate
992  }
993  _cSumQ_depth.fill(did, sumQ);
995  if (_ptype == fOnline) {
1002  }
1003  if (_ptype != fOffline) { // hidefed2crate
1004  if (!eid.isVMEid()) {
1009  }
1010  }
1011  did.subdet() == HcalBarrel ? numChsCut++ : numChsCutHE++;
1012  }
1013  did.subdet() == HcalBarrel ? numChs++ : numChsHE++;
1014  }
1015 
1016  if (rawidHBValid != 0 && rawidHEValid != 0) {
1017  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidHBValid), _currentLS, numChs);
1018  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidHEValid), _currentLS, numChsHE);
1019  // ONLINE ONLY!
1020  if (_ptype == fOnline) {
1021  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidHBValid), _currentLS, numChsCut);
1022  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidHBValid), bx, numChsCut);
1023  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidHEValid), _currentLS, numChsCutHE);
1024  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidHEValid), bx, numChsCutHE);
1025  }
1026  // ^^^ONLINE ONLY!
1027  }
1028  numChs = 0;
1029  numChsCut = 0;
1030 
1031  // reset
1032  rawidValid = 0;
1033 
1034  // HO collection
1035  for (HODigiCollection::const_iterator it = c_ho->begin(); it != c_ho->end(); ++it) {
1036  const HODataFrame digi = (const HODataFrame)(*it);
1037  // Explicit check on the DetIds present in the Collection
1038  HcalDetId const& did = it->id();
1039  if (did.subdet() != HcalOuter) {
1040  // LED monitoring from calibration channels
1041  if (_ptype != fLocal) {
1042  if (did.subdet() == HcalOther) {
1043  HcalOtherDetId hodid(did);
1044  if (hodid.subdet() == HcalCalibration) {
1047  bool channelLEDSignalPresent = false;
1048  for (int i = 0; i < digi.size(); i++) {
1049  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalOuter, 1, 1, 4), bx, digi[i].adc());
1050 
1051  if (digi[i].adc() > _thresh_led) {
1052  channelLEDSignalPresent = true;
1053  }
1054  }
1055  if (channelLEDSignalPresent) {
1057  if (_ptype == fOnline) {
1059  }
1060  }
1061  }
1062  }
1063  }
1064  }
1065  continue;
1066  }
1067  uint32_t rawid = _ehashmap.lookup(did);
1068  if (rawid == 0) {
1069  meUnknownIds1LS->Fill(1);
1070  _unknownIdsPresent = true;
1071  continue;
1072  } else {
1073  rawidValid = did.rawId();
1074  }
1075  HcalElectronicsId const& eid(rawid);
1076 
1077  // filter out channels that are masked out
1078  if (_xQuality.exists(did)) {
1079  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
1081  continue;
1082  }
1083 
1084  if (_ptype == fOnline) {
1085  short this_capidmbx = (it->sample(it->presamples()).capid() - bx) % 4;
1086  if (this_capidmbx < 0) {
1087  this_capidmbx += 4;
1088  }
1089  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
1090  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
1091  if (!good_capidmbx) {
1092  _xBadCapid.get(eid)++;
1095  }
1096  if (!eid.isVMEid()) {
1097  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
1098  }
1099  }
1100 
1101  //double sumQ = hcaldqm::utilities::sumQ<HODataFrame>(*it, 8.5, 0, it->size()-1);
1102  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<HODataFrame>(_dbService, did, *it);
1103  double sumQ = hcaldqm::utilities::sumQDB<HODataFrame>(_dbService, digi_fC, did, *it, 0, it->size() - 1);
1104 
1105  _cSumQ_SubdetPM.fill(did, sumQ);
1106  _cOccupancy_depth.fill(did);
1107  if (_ptype == fOnline) {
1108  _cDigiSizevsLS_FED.fill(eid, _currentLS, it->size());
1109  it->size() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
1112  }
1113  _cDigiSize_Crate.fill(eid, it->size());
1114  if (_ptype != fOffline) { // hidefed2crate
1115  _cDigiSize_FED.fill(eid, it->size());
1116  if (!eid.isVMEid()) {
1119  /*
1120  if (!it->validate(0, it->size()))
1121  _cCapIdRots_FEDuTCA.fill(eid, 1);*/
1122  }
1123  }
1124 
1125  for (int i = 0; i < it->size(); i++) {
1126  _cADC_SubdetPM.fill(did, it->sample(i).adc());
1127  _cfC_SubdetPM.fill(did, it->sample(i).nominal_fC());
1128  if (_ptype != fOffline) { // hidefed2crate
1129  _cADCvsTS_SubdetPM.fill(did, i, it->sample(i).adc());
1130  if (sumQ > _cutSumQ_HO)
1131  _cShapeCut_FED.fill(eid, i, it->sample(i).nominal_fC());
1132  }
1133  }
1134 
1135  if (sumQ > _cutSumQ_HO) {
1136  //double timing = hcaldqm::utilities::aveTS<HODataFrame>(*it, 8.5, 0,it->size()-1);
1137  // without pedestal substraction, request from https://gitlab.cern.ch/cmshcal/docs/-/issues/106
1138  double timing = hcaldqm::utilities::aveTSDB<HODataFrame>(_dbService, digi_fC, did, *it, 0, it->size() - 1, false);
1139  _cSumQ_depth.fill(did, sumQ);
1143  // with pedestal substraction for energetic hits
1144  if (sumQ > 100. * _cutSumQ_HO)
1146  did, hcaldqm::utilities::aveTSDB<HODataFrame>(_dbService, digi_fC, did, *it, 0, it->size() - 1));
1149  if (_ptype != fOffline) { // hidefed2crate
1151  }
1152  if (_ptype == fOnline) {
1159  }
1160  if (_ptype != fOffline) { // hidefed2crate
1161  if (!eid.isVMEid()) {
1166  }
1167  }
1168  numChsCut++;
1169  }
1170  numChs++;
1171  }
1172 
1173  if (rawidValid != 0) {
1174  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChs);
1175 
1176  if (_ptype == fOnline) {
1177  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChsCut);
1178  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidValid), bx, numChsCut);
1179  }
1180  }
1181  numChs = 0;
1182  numChsCut = 0;
1183 
1184  // reset
1185  rawidValid = 0;
1186 
1187  // HF collection
1188  if (_qie10InConditions) {
1189  for (QIE10DigiCollection::const_iterator it = c_QIE10->begin(); it != c_QIE10->end(); ++it) {
1190  const QIE10DataFrame digi = static_cast<const QIE10DataFrame>(*it);
1191 
1192  // Explicit check on the DetIds present in the Collection
1193  HcalDetId const& did = digi.detid();
1194  if (did.subdet() != HcalForward) {
1195  // LED monitoring from calibration channels
1196  if (_ptype != fLocal) {
1197  if (did.subdet() == HcalOther) {
1198  HcalOtherDetId hodid(digi.detid());
1199  if (hodid.subdet() == HcalCalibration) {
1202  did) != _ledCalibrationChannels[HcalForward].end()) {
1203  bool channelLEDSignalPresent = false;
1204  for (int i = 0; i < digi.samples(); i++) {
1205  _LED_ADCvsBX_Subdet.fill(HcalDetId(HcalForward, 29, 1, 1), bx, digi[i].adc());
1206 
1207  if (digi[i].adc() > _thresh_led) {
1208  channelLEDSignalPresent = true;
1209  }
1210  }
1211  if (channelLEDSignalPresent) {
1213  if (_ptype == fOnline) {
1215  }
1216  }
1217  }
1218  }
1219  }
1220  }
1221  continue;
1222  }
1223 
1224  uint32_t rawid = _ehashmap.lookup(did);
1225  if (rawid == 0) {
1226  meUnknownIds1LS->Fill(1);
1227  _unknownIdsPresent = true;
1228  continue;
1229  } else {
1230  rawidValid = did.rawId();
1231  }
1232  HcalElectronicsId const& eid(rawid);
1233 
1234  // filter out channels that are masked out
1235  if (_xQuality.exists(did)) {
1236  HcalChannelStatus cs(did.rawId(), _xQuality.get(did));
1238  continue;
1239  }
1240 
1241  // (capid - BX) % 4
1242  if (_ptype == fOnline) {
1243  short soi = -1;
1244  for (int i = 0; i < digi.samples(); i++) {
1245  if (digi[i].soi()) {
1246  soi = i;
1247  break;
1248  }
1249  }
1250  short this_capidmbx = (digi[soi].capid() - bx) % 4;
1251  if (this_capidmbx < 0) {
1252  this_capidmbx += 4;
1253  }
1254  _cCapidMinusBXmod4_SubdetPM.fill(did, this_capidmbx);
1255  bool good_capidmbx = (_capidmbx[did.subdet()] == this_capidmbx);
1256  if (!good_capidmbx) {
1257  _xBadCapid.get(eid)++;
1260  }
1261  if (!eid.isVMEid()) {
1262  _cCapidMinusBXmod4_CrateSlotuTCA[this_capidmbx].fill(eid);
1263  }
1264  }
1265 
1266  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE10DataFrame>(_dbService, did, digi);
1267  double sumQ = hcaldqm::utilities::sumQDB<QIE10DataFrame>(_dbService, digi_fC, did, digi, 0, digi.samples() - 1);
1268  //double sumQ = hcaldqm::utilities::sumQ_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples()-1);
1269 
1270  //if (!_filter_QIE1011.filter(did)) {
1272  //}
1273 
1274  _cOccupancy_depth.fill(did);
1275  if (_ptype == fOnline) {
1276  _xNChs.get(eid)++;
1277  _cDigiSizevsLS_FED.fill(eid, _currentLS, digi.samples());
1278  digi.samples() != _refDigiSize[did.subdet()] ? _xDigiSize.get(eid)++ : _xDigiSize.get(eid) += 0;
1281  }
1282  _cDigiSize_Crate.fill(eid, digi.samples());
1283  if (_ptype != fOffline) { // hidefed2crate
1284  _cDigiSize_FED.fill(eid, digi.samples());
1285  if (!eid.isVMEid()) {
1288  /*
1289  if (!it->validate(0, it->size()))
1290  _cCapIdRots_FEDuTCA.fill(eid, 1);*/
1291  }
1292  }
1293 
1294  for (int i = 0; i < digi.samples(); i++) {
1295  double q = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, i);
1296  //if (!_filter_QIE1011.filter(did)) {
1297  _cADC_SubdetPM_QIE1011.fill(did, digi[i].adc());
1299  _cLETDCvsADC_6bit_SubdetPM.fill(did, digi[i].adc(), digi[i].le_tdc());
1300  _cLETDCvsTS_6bit_SubdetPM.fill(did, (int)i, digi[i].le_tdc());
1301  if (digi[i].le_tdc() < 50) {
1302  double time = i * 25. + (digi[i].le_tdc() / 2.);
1304  _cLETDCTime_depth.fill(did, time);
1305  _cLETDCTimevsADC_SubdetPM.fill(did, digi[i].adc(), time);
1306  }
1307 
1308  // Bad TDC values: 50-61 should never happen in QIE10 or QIE11, but we are seeing some in 2017 data.
1309  if ((50 <= digi[i].le_tdc()) && (digi[i].le_tdc() <= 61)) {
1310  _cBadTDCValues_SubdetPM.fill(did, digi[i].le_tdc());
1314  }
1315  if (_ptype != fOffline) { // hidefed2crate
1316  _cADCvsTS_SubdetPM_QIE1011.fill(did, (int)i, digi[i].adc());
1317  if (sumQ > _cutSumQ_HF)
1318  _cShapeCut_FED.fill(eid, (int)i, q);
1319  }
1320  //}
1321  }
1322 
1323  if (sumQ > _cutSumQ_HF) {
1324  double timing = hcaldqm::utilities::aveTS_v10<QIE10DataFrame>(digi, 2.5, 0, digi.samples() - 1);
1325  double q1 = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, 1);
1326  double q2 = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE10DataFrame>(_dbService, digi_fC, did, digi, 2);
1327  double q2q12 = q2 / (q1 + q2);
1328  _cSumQ_depth.fill(did, sumQ);
1329  //if (!_filter_QIE1011.filter(did)) {
1331  //}
1332  _cTimingCut_SubdetPM.fill(did, hcaldqm::utilities::aveTS_v10<QIE10DataFrame>(digi, 0., 0, digi.samples() - 1));
1333  if (sumQ > 100. * _cutSumQ_HF)
1337  if (_ptype == fOnline) {
1338  //if (!_filter_QIE1011.filter(did)) {
1340  //}
1346  // _cOccupancyCutvsSlotvsLS_HFPM.fill(did, _currentLS);
1347  _xUniHF.get(eid)++;
1348  }
1349  if (_ptype != fOffline) { // hidefed2crate
1351  }
1353  if (!eid.isVMEid())
1354  if (_ptype == fOnline)
1356  if (_ptype != fOffline) { // hidefed2crate
1357  if (!eid.isVMEid()) {
1362  }
1363  }
1364  numChsCut++;
1365  }
1366  numChs++;
1367  }
1368  }
1369 
1370  if (rawidValid != 0) {
1371  _cOccupancyvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChs);
1372 
1373  if (_ptype == fOnline) {
1374  _cOccupancyCutvsLS_Subdet.fill(HcalDetId(rawidValid), _currentLS, numChsCut);
1375  _cOccupancyCutvsBX_Subdet.fill(HcalDetId(rawidValid), bx, numChsCut);
1376  }
1377  }
1378 }
hcaldqm::ContainerProf1D _cTimingCutvsiphi_SubdetPM
Definition: DigiTask.h:106
hcaldqm::ContainerXXX< uint32_t > _xBadCapid
Definition: DigiTask.h:146
bool _qie10InConditions
Definition: DigiTask.h:182
constexpr DetId detid() const
Get the detector id.
double _thresh_led
Definition: DigiTask.h:187
MonitorElement * meNumEvents1LS
Definition: DigiTask.h:175
hcaldqm::Container1D _LED_CUCountvsLSmod60_Subdet
Definition: DigiTask.h:191
edm::InputTag _tagQIE10
Definition: DigiTask.h:45
hcaldqm::Container1D _cADC_SubdetPM
Definition: DigiTask.h:78
hcaldqm::Container1D _cADC_SubdetPM_QIE1011
Definition: DigiTask.h:86
hcaldqm::Container1D _LED_CUCountvsLS_Subdet
Definition: DigiTask.h:190
hcaldqm::Container1D _cOccupancyCutvsieta_Subdet
Definition: DigiTask.h:129
hcaldqm::Container2D _cLETDCvsADC_2bit_SubdetPM
Definition: DigiTask.h:149
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM
Definition: DigiTask.h:83
virtual bool exists(HcalDetId const &)
Definition: ContainerXXX.h:212
int size() const
get the size
Definition: CaloSamples.h:24
void fill(HcalDetId const &) override
edm::InputTag _tagHO
Definition: DigiTask.h:44
std::map< HcalSubdetector, int > _refDigiSize
Definition: DigiTask.h:61
hcaldqm::Container2D _cADCvsTS_SubdetPM
Definition: DigiTask.h:94
hcaldqm::Container1D _cTimingCutHTH_SubdetPM
Definition: DigiTask.h:100
hcaldqm::ContainerProf1D _cQ2Q12CutvsLS_FEDHF
Definition: DigiTask.h:110
MonitorElement * meUnknownIds1LS
Definition: DigiTask.h:176
std::string const & instance() const
Definition: InputTag.h:37
void dqmthrow(std::string const &msg) const
Definition: Logger.h:12
hcaldqm::Container2D _cLETDCTimevsADC_SubdetPM
Definition: DigiTask.h:155
double _cutSumQ_HO
Definition: DigiTask.h:51
std::map< HcalSubdetector, short > _capidmbx
Definition: DigiTask.h:184
std::vector< T >::const_iterator const_iterator
hcaldqm::Container2D _cLETDCvsTS_2bit_SubdetPM
Definition: DigiTask.h:151
hcaldqm::ContainerSingle2D _cCapidMinusBXmod4_CrateSlotuTCA[4]
Definition: DigiTask.h:169
edm::EDGetTokenT< QIE10DigiCollection > _tokQIE10
Definition: DigiTask.h:48
hcaldqm::ContainerProf2D _cSumQ_depth
Definition: DigiTask.h:81
edm::EDGetTokenT< HODigiCollection > _tokHO
Definition: DigiTask.h:47
hcaldqm::Container1D _cOccupancyCutvsiphi_SubdetPM
Definition: DigiTask.h:128
virtual void reset()
Definition: ContainerXXX.h:292
std::string const & label() const
Definition: InputTag.h:36
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM_QIE1011
Definition: DigiTask.h:89
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
hcaldqm::Container2D _cOccupancyCutvsiphivsLS_SubdetPM
Definition: DigiTask.h:131
hcaldqm::ContainerXXX< uint32_t > _xDigiSize
Definition: DigiTask.h:142
hcaldqm::ContainerProf2D _cTimingCut_FEDuTCA
Definition: DigiTask.h:101
constexpr DetId detid() const
Get the detector id.
hcaldqm::Container1D _cBadTDCvsLS_SubdetPM
Definition: DigiTask.h:160
void Fill(long long x)
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
ProcessingType _ptype
Definition: DQModule.h:44
virtual void fill(uint32_t)
Definition: Container1D.cc:73
hcaldqm::Container2D _cLETDCvsADC_6bit_SubdetPM
Definition: DigiTask.h:150
hcaldqm::Container2D _cOccupancy_CrateSlot
Definition: DigiTask.h:117
virtual void setBinContent(int, int, int)
ContainerXXX< uint32_t > _xQuality
Definition: DQTask.h:66
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLS
Definition: DigiTask.h:170
hcaldqm::Container2D _cADCvsTS_SubdetPM_QIE1011
Definition: DigiTask.h:95
hcaldqm::Container1D _cDigiSize_Crate
Definition: DigiTask.h:139
hcaldqm::Container1D _cShapeCut_FED
Definition: DigiTask.h:93
hcaldqm::Container2D _cOccupancyCut_depth
Definition: DigiTask.h:127
hcaldqm::ContainerProf1D _cOccupancyCutvsBX_Subdet
Definition: DigiTask.h:136
double _cutSumQ_HF
Definition: DigiTask.h:51
edm::EDGetTokenT< QIE11DigiCollection > _tokQIE11
Definition: DigiTask.h:46
hcaldqm::Container1D _cfC_SubdetPM_QIE1011
Definition: DigiTask.h:87
double _cutSumQ_HBHE
Definition: DigiTask.h:51
std::map< HcalSubdetector, std::vector< HcalDetId > > _ledCalibrationChannels
Definition: DigiTask.h:188
hcaldqm::ContainerProf2D _cTimingCut_depth
Definition: DigiTask.h:105
Logger _logger
Definition: DQModule.h:55
hcaldqm::Container1D _cBadTDCValues_SubdetPM
Definition: DigiTask.h:158
const_iterator begin() const
hcaldqm::ContainerProf1D _cTimingCutvsLS_SubdetPM
Definition: DigiTask.h:104
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM_QIE1011
Definition: DigiTask.h:90
hcaldqm::Container2D _cOccupancy_depth
Definition: DigiTask.h:118
const_iterator end() const
const_iterator end() const
hcaldqm::ContainerProf1D _cOccupancyvsLS_Subdet
Definition: DigiTask.h:134
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM
Definition: DigiTask.h:82
hcaldqm::ContainerProf1D _cTimingCutvsLS_FED
Definition: DigiTask.h:103
constexpr int samples() const
total number of samples in the digi
hcaldqm::Container2D _cOccupancyCut_FEDuTCA
Definition: DigiTask.h:125
hcaldqm::Container1D _cDigiSize_FED
Definition: DigiTask.h:140
const_iterator begin() const
The iterator returned can not safely be used across threads.
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
hcaldqm::Container2D _LED_ADCvsBX_Subdet
Definition: DigiTask.h:192
hcaldqm::Container1D _cSumQ_SubdetPM
Definition: DigiTask.h:80
hcaldqm::Container1D _cOccupancyvsiphi_SubdetPM
Definition: DigiTask.h:119
hcaldqm::ContainerProf1D _cTimingCutvsieta_Subdet
Definition: DigiTask.h:107
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLSmod60
Definition: DigiTask.h:172
hcaldqm::Container1D _cLETDCTime_SubdetPM
Definition: DigiTask.h:153
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
hcaldqm::Container2D _cOccupancyCut_ElectronicsuTCA
Definition: DigiTask.h:126
constexpr int size() const
total number of samples in the digi
Definition: HODataFrame.h:27
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
edm::ESHandle< HcalDbService > _dbService
Definition: DQTask.h:80
hcaldqm::Container1D _cBadTDCvsBX_SubdetPM
Definition: DigiTask.h:159
hcaldqm::Container2D _cOccupancy_Crate
Definition: DigiTask.h:116
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
hcaldqm::Container2D _cLETDCvsTS_6bit_SubdetPM
Definition: DigiTask.h:152
hcaldqm::ContainerProf1D _cDigiSizevsLS_FED
Definition: DigiTask.h:141
hcaldqm::ContainerXXX< uint32_t > _xNChs
Definition: DigiTask.h:144
virtual void fill(int, int)
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: DigiTask.h:64
hcaldqm::ContainerProf1D _cOccupancyCutvsLS_Subdet
Definition: DigiTask.h:135
hcaldqm::Container2D _cBadTDCCount_depth
Definition: DigiTask.h:161
hcaldqm::ContainerProf2D _cLETDCTime_depth
Definition: DigiTask.h:154
std::vector< uint32_t > _vhashFEDs
Definition: DigiTask.h:59
edm::InputTag _tagQIE11
Definition: DigiTask.h:43
hcaldqm::Container1D _cOccupancyvsieta_Subdet
Definition: DigiTask.h:120
Readout chain identification for Hcal.
hcaldqm::ContainerProf2D _cTimingCut_ElectronicsuTCA
Definition: DigiTask.h:102
constexpr int samples() const
total number of samples in the digi
hcaldqm::Container1D _cSumQ_SubdetPM_QIE1011
Definition: DigiTask.h:88
hcaldqm::Container1D _cTimingCut_SubdetPM
Definition: DigiTask.h:99
uint16_t *__restrict__ uint16_t const *__restrict__ adc
bool _unknownIdsPresent
Definition: DigiTask.h:177
hcaldqm::Container2D _cOccupancy_FEDuTCA
Definition: DigiTask.h:114
hcaldqm::Container1D _cCapidMinusBXmod4_SubdetPM
Definition: DigiTask.h:168
hcaldqm::ContainerXXX< uint32_t > _xUniHF
Definition: DigiTask.h:143
double sumQ(DIGI const &digi, double ped, int i=0, int j=3)
Definition: Utilities.h:127
hcaldqm::Container1D _cfC_SubdetPM
Definition: DigiTask.h:79
hcaldqm::Container2D _cOccupancy_ElectronicsuTCA
Definition: DigiTask.h:115

◆ _resetMonitors()

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

Reimplemented from hcaldqm::DQTask.

Definition at line 750 of file DigiTask.cc.

References _cOccupancyvsiphi_SubdetPM, hcaldqm::DQModule::_ptype, _unknownIdsPresent, hcaldqm::f1LS, hcaldqm::f50LS, hcaldqm::fOnline, and hcaldqm::Container1D::reset().

750  {
751  DQTask::_resetMonitors(uf);
752 
753  switch (uf) {
754  case hcaldqm::f1LS:
755  _unknownIdsPresent = false;
756  break;
757  case hcaldqm::f50LS:
758  // ^^^ONLINE ONLY!
759  if (_ptype == fOnline)
761  // ^^^
762  break;
763  default:
764  break;
765  }
766 }
ProcessingType _ptype
Definition: DQModule.h:44
virtual void reset()
Definition: Container1D.cc:60
hcaldqm::Container1D _cOccupancyvsiphi_SubdetPM
Definition: DigiTask.h:119
bool _unknownIdsPresent
Definition: DigiTask.h:177

◆ bookHistograms()

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

Reimplemented from hcaldqm::DQTask.

Definition at line 47 of file DigiTask.cc.

References _cADC_SubdetPM, _cADC_SubdetPM_QIE1011, _cADCvsTS_SubdetPM, _cADCvsTS_SubdetPM_QIE1011, _cBadTDCCount_depth, _cBadTDCValues_SubdetPM, _cBadTDCvsBX_SubdetPM, _cBadTDCvsLS_SubdetPM, _cCapid_BadvsFEDvsLS, _cCapid_BadvsFEDvsLSmod60, _cCapidMinusBXmod4_CrateSlotuTCA, _cCapidMinusBXmod4_SubdetPM, _cDigiSize_Crate, _cDigiSize_FED, _cDigiSizevsLS_FED, _cfC_SubdetPM, _cfC_SubdetPM_QIE1011, _cLETDCTime_depth, _cLETDCTime_SubdetPM, _cLETDCTimevsADC_SubdetPM, _cLETDCvsADC_2bit_SubdetPM, _cLETDCvsADC_6bit_SubdetPM, _cLETDCvsTS_2bit_SubdetPM, _cLETDCvsTS_6bit_SubdetPM, _cOccupancy_Crate, _cOccupancy_CrateSlot, _cOccupancy_depth, _cOccupancy_ElectronicsuTCA, _cOccupancy_FEDuTCA, _cOccupancyCut_depth, _cOccupancyCut_ElectronicsuTCA, _cOccupancyCut_FEDuTCA, _cOccupancyCutvsBX_Subdet, _cOccupancyCutvsieta_Subdet, _cOccupancyCutvsiphi_SubdetPM, _cOccupancyCutvsiphivsLS_SubdetPM, _cOccupancyCutvsLS_Subdet, _cOccupancyvsieta_Subdet, _cOccupancyvsiphi_SubdetPM, _cOccupancyvsLS_Subdet, _cQ2Q12CutvsLS_FEDHF, _cShapeCut_FED, _cSummaryvsLS, _cSummaryvsLS_FED, _cSumQ_depth, _cSumQ_SubdetPM, _cSumQ_SubdetPM_QIE1011, _cSumQvsBX_SubdetPM, _cSumQvsBX_SubdetPM_QIE1011, _cSumQvsLS_SubdetPM, _cSumQvsLS_SubdetPM_QIE1011, _cTimingCut_depth, _cTimingCut_ElectronicsuTCA, _cTimingCut_FEDuTCA, _cTimingCut_SubdetPM, _cTimingCutHTH_SubdetPM, _cTimingCutvsieta_Subdet, _cTimingCutvsiphi_SubdetPM, _cTimingCutvsLS_FED, _cTimingCutvsLS_SubdetPM, _cutSumQ_HBHE, _cutSumQ_HF, _cutSumQ_HO, _dhashmap, _ehashmap, hcaldqm::DQTask::_emap, _filter_FEDHF, _filter_QIE1011, _filter_QIE8, _filter_TDC2bit, _filter_TDC6bit, _filter_uTCA, _filter_VME, _LED_ADCvsBX_Subdet, _LED_CUCountvsLS_Subdet, _LED_CUCountvsLSmod60_Subdet, _ledCalibrationChannels, hcaldqm::DQModule::_maxLS, hcaldqm::DQModule::_name, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_subsystem, _unknownIdsPresent, _vflags, _vhashFEDs, _xBadCapid, _xDigiSize, _xNChs, _xNChsNominal, hcaldqm::DQTask::_xQuality, _xUni, _xUniHF, HcalElectronicsMap::allElectronicsId(), HcalElectronicsMap::allPrecisionId(), printConversionInfo::aux, hcaldqm::ContainerXXX< STDTYPE >::book(), hcaldqm::ContainerProf1D::book(), hcaldqm::ContainerProf2D::book(), hcaldqm::ContainerSingle2D::book(), hcaldqm::Container2D::book(), hcaldqm::Container1D::book(), bookHistograms(), HcalCalibDetId::calibFlavor(), HcalCalibDetId::CalibrationBox, HcalCalibDetId::cboxChannel(), hcaldqm::constants::CRATE_uTCA_MIN, hcaldqm::constants::CRATE_VME_MIN, callgraph::cs, runTauDisplay::eid, hcaldqm::ContainerXXX< STDTYPE >::exists(), hcaldqm::quantity::fADC_128, hcaldqm::quantity::fADC_256_4, hcaldqm::quantity::fBadTDC, hcaldqm::quantity::fBX, hcaldqm::quantity::fBX_36, hcaldqm::quantity::fCapidMinusBXmod4, hcaldqm::quantity::fCrate, hcaldqm::hashfunctions::fCrate, hcaldqm::hashfunctions::fCrateSlot, hcaldqm::quantity::fCrateuTCA, hcaldqm::electronicsmap::fD2EHashMap, hcaldqm::hashfunctions::fdepth, hcaldqm::quantity::fDigiSize, hcaldqm::electronicsmap::fE2DHashMap, hcaldqm::utilities::fed2crate(), hcaldqm::constants::FED_VME_MIN, hcaldqm::hashfunctions::fElectronics, hcaldqm::quantity::ffC_10000, hcaldqm::quantity::ffC_generic_400000, hcaldqm::hashfunctions::fFED, hcaldqm::hashfunctions::fFEDSlot, hcaldqm::quantity::fFiberCh, hcaldqm::quantity::fFiberuTCA, hcaldqm::quantity::fFiberuTCAFiberCh, hcaldqm::filter::fFilter, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::quantity::fieta, hcaldqm::quantity::fiphi, hcaldqm::fLocal, hcaldqm::quantity::fN, hcaldqm::quantity::fN_to8000, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::filter::fPreserver, hcaldqm::quantity::fQIE10ADC_256, hcaldqm::quantity::fQIE10fC_10000, hcaldqm::quantity::fQIE10fC_400000, hcaldqm::quantity::fQIE10TDC_4, hcaldqm::quantity::fQIE10TDC_64, hcaldqm::quantity::fRatio_0to2, hcaldqm::quantity::fSlotuTCA, hcaldqm::quantity::fState, hcaldqm::hashfunctions::fSubdet, hcaldqm::hashfunctions::fSubdetPM, hcaldqm::quantity::fTime_ns_250_coarse, hcaldqm::quantity::fTiming_TS, hcaldqm::quantity::fTiming_TS200, hcaldqm::ContainerXXX< STDTYPE >::get(), hcaldqm::utilities::getFEDList(), hcaldqm::utilities::getFEDuTCAList(), hcaldqm::utilities::getFEDVMEList(), edm::EventSetup::getHandle(), HcalDbService::getHcalMapping(), hcaldqm::hashfunctions::hash_did, HcalBarrel, HcalChannelStatus::HcalCellDead, HcalChannelStatus::HcalCellMask, hcalDbServiceToken_, HcalEmpty, HcalEndcap, HcalForward, HcalOther, HcalOuter, HcalCalibDetId::hcalSubdet(), mps_fire::i, cuy::ib, HcalCalibDetId::ieta(), hcaldqm::ContainerProf1D::initialize(), hcaldqm::ContainerXXX< STDTYPE >::initialize(), hcaldqm::ContainerProf2D::initialize(), hcaldqm::filter::HashFilter::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::ContainerSingle2D::initialize(), hcaldqm::electronicsmap::ElectronicsMap::initialize(), hcaldqm::Container1D::initialize(), HcalCalibDetId::iphi(), hcaldqm::electronicsmap::ElectronicsMap::lookup(), HcalElectronicsMap::lookup(), meNumEvents1LS, meUnknownIds1LS, alignCSCRings::r, HcalElectronicsId::rawId(), hcaldqm::constants::SLOT_uTCA_MIN, and hcaldqm::constants::SPIGOT_MIN.

47  {
49 
50  // GET WHAT YOU NEED
52  _emap = dbs->getHcalMapping();
53 
54  // Book LED calibration channels from emap
55  std::vector<HcalElectronicsId> eids = _emap->allElectronicsId();
56  for (unsigned i = 0; i < eids.size(); i++) {
57  HcalElectronicsId eid = eids[i];
58  DetId id = _emap->lookup(eid);
59  if (HcalGenericDetId(id.rawId()).isHcalCalibDetId()) {
60  HcalCalibDetId calibId(id);
61  if (calibId.calibFlavor() == HcalCalibDetId::CalibrationBox) {
62  HcalSubdetector this_subdet = HcalEmpty;
63  switch (calibId.hcalSubdet()) {
64  case HcalBarrel:
65  this_subdet = HcalBarrel;
66  break;
67  case HcalEndcap:
68  this_subdet = HcalEndcap;
69  break;
70  case HcalOuter:
71  this_subdet = HcalOuter;
72  break;
73  case HcalForward:
74  this_subdet = HcalForward;
75  break;
76  default:
77  this_subdet = HcalEmpty;
78  break;
79  }
80  _ledCalibrationChannels[this_subdet].push_back(
81  HcalDetId(HcalOther, calibId.ieta(), calibId.iphi(), calibId.cboxChannel()));
82  }
83  }
84  }
85 
86  std::vector<uint32_t> vVME;
87  std::vector<uint32_t> vuTCA;
88  vVME.push_back(
90  vuTCA.push_back(HcalElectronicsId(CRATE_uTCA_MIN, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
93 
94  // Filters for QIE8 vs QIE10/11
95  std::vector<uint32_t> vhashQIE8;
98 
99  std::vector<uint32_t> vhashQIE1011;
100  vhashQIE1011.push_back(
102  vhashQIE1011.push_back(
104  vhashQIE1011.push_back(
107 
108  std::vector<uint32_t> vhash_TDC2bit;
109  vhash_TDC2bit.push_back(
111  vhash_TDC2bit.push_back(
114 
115  std::vector<uint32_t> vhash_TDC6bit;
116  vhash_TDC6bit.push_back(
118  vhash_TDC6bit.push_back(
120  vhash_TDC6bit.push_back(
122  vhash_TDC6bit.push_back(
125 
126  // INITIALIZE FIRST
128  "ADC",
132  0);
134  "fC",
138  0);
140  "SumQ",
144  0);
146  "SumQ",
151  0);
153  "SumQvsLS",
157  0);
158 
160  "ADC",
164  0);
166  "fC",
170  0);
172  "SumQ",
176  0);
178  "SumQvsLS",
182  0);
183 
185  "TimingCut",
189  0);
191  "TimingHighCut",
195  0);
197  "TimingCut",
202  0);
204  "TimingvsLS",
208  0);
209 
210  // Occupancy w/o a cut
212  "OccupancyvsLS",
216  0);
218  "Occupancy",
223  0);
224 
225  // Occupancy w/ a cut
227  "OccupancyCutvsLS",
231  0);
233  "OccupancyCut",
238  0);
239 
240  // Digi size
242  "DigiSize",
246  0);
248  "ADCvsTS",
253  0);
255  "ADCvsTS",
260  0);
261 
263  "LETDCTimevsADC",
269  "LETDCvsADC",
275  "LETDCvsADC",
281  "LETDCvsTS",
287  "LETDCvsTS",
292 
294  "LETDCTime",
299  "LETDCTime",
304  0);
305 
307  "BadTDCValues",
312  "BadTDCvsBX",
317  "BadTDCvsLS",
322  "BadTDCCount",
327  0);
328 
329  if (_ptype == fOnline || _ptype == fLocal) {
331  "Occupancy",
336  0);
338  "Occupancy",
343  0);
344  }
345 
346  // INITIALIZE HISTOGRAMS that are only for Online
347  if (_ptype == fOnline) {
348  // Charge sharing
350  "Q2Q12vsLS",
354  0);
356  "SumQvsBX",
360  0);
362  "SumQvsBX",
366  0);
368  "DigiSizevsLS",
372  0);
374  "TimingCutvsiphi",
378  0);
380  "TimingCutvsieta",
384  0);
386  "Occupancyvsiphi",
390  0);
392  "Occupancyvsieta",
396  0);
398  "OccupancyCutvsiphi",
402  0);
404  "OccupancyCutvsieta",
408  0);
410  "OccupancyCutvsLS",
414  0);
416  "OccupancyCutvsBX",
420  0);
421  // _cOccupancyCutvsSlotvsLS_HFPM.initialize(_name,
422  // "OccupancyCutvsSlotvsLS", hcaldqm::hashfunctions::fSubdetPM,
423  // new hcaldqm::quantity::LumiSection(_maxLS),
424  // new hcaldqm::quantity::ElectronicsQuantity(hcaldqm::quantity::fSlotuTCA),
425  // new hcaldqm::quantity::ValueQuantity(hcaldqm::quantity::fN),0);
427  "OccupancyCutvsiphivsLS",
432  0);
433  }
435  "CapID",
439 
440  for (int i = 0; i < 4; ++i) {
442  "CapID",
446  0);
447  }
448 
449  if (_ptype != fOffline) { // hidefed2crate
450  std::vector<int> vFEDs = hcaldqm::utilities::getFEDList(_emap);
451  std::vector<int> vFEDsVME = hcaldqm::utilities::getFEDVMEList(_emap);
452  std::vector<int> vFEDsuTCA = hcaldqm::utilities::getFEDuTCAList(_emap);
453 
454  if (_ptype == fOnline) {
456  "CapID",
460  0);
461 
463  "CapID",
467  0);
468  }
469 
470  std::vector<uint32_t> vFEDHF;
471  vFEDHF.push_back(HcalElectronicsId(22, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
472  vFEDHF.push_back(HcalElectronicsId(22, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
473  vFEDHF.push_back(HcalElectronicsId(29, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
474  vFEDHF.push_back(HcalElectronicsId(29, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
475  vFEDHF.push_back(HcalElectronicsId(32, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
476  vFEDHF.push_back(HcalElectronicsId(32, SLOT_uTCA_MIN + 6, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
477 
478  // initialize filters
480 
481  // push the rawIds of each fed into the vector...
482  for (std::vector<int>::const_iterator it = vFEDsVME.begin(); it != vFEDsVME.end(); ++it)
483  _vhashFEDs.push_back(
485  for (std::vector<int>::const_iterator it = vFEDsuTCA.begin(); it != vFEDsuTCA.end(); ++it) {
486  std::pair<uint16_t, uint16_t> cspair = utilities::fed2crate(*it);
487  _vhashFEDs.push_back(HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
488  }
489 
491  "ShapeCut",
495  0);
496 
498  "TimingCut",
503  0);
505  "TimingCut",
507  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
510  0);
512  "TimingvsLS",
516  0);
517 
519  "Occupancy",
524  0);
526  "Occupancy",
528  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
531  0);
532 
534  "OccupancyCut",
539  0);
541  "OccupancyCut",
543  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
546  0);
547 
549  "DigiSize",
553  0);
554 
555  if (_ptype == fOnline) {
557  "SummaryvsLS",
562  0);
564  "SummaryvsLS",
568  0);
569 
576  }
577  }
578  if (_ptype != fLocal) {
580  "LED_ADCvsBX",
585  0);
586 
588  "LED_CUCountvsLS",
592  0);
593  if (_ptype == fOnline) {
595  "LED_CUCountvsLSmod60",
599  0);
600  }
601  }
602 
603  // BOOK HISTOGRAMS
604  char cutstr[200];
605  sprintf(cutstr, "_SumQHBHE%dHO%dHF%d", int(_cutSumQ_HBHE), int(_cutSumQ_HO), int(_cutSumQ_HF));
606  char cutstr2[200];
607  sprintf(cutstr2, "_SumQHF%d", int(_cutSumQ_HF));
608 
620 
621  if (_ptype != fOffline) { // hidefed2crate
631  }
632  if (_ptype != fOffline) { // else book per-lumi later.
635  }
636 
641 
644 
652 
657 
659  if (_ptype == fOnline) {
660  _cCapid_BadvsFEDvsLS.book(ib, _subsystem, "BadvsLS");
661  _cCapid_BadvsFEDvsLSmod60.book(ib, _subsystem, "BadvsLSmod60");
662  }
663  for (int i = 0; i < 4; ++i) {
664  constexpr unsigned int kSize = 32;
665  char aux[kSize];
666  snprintf(aux, kSize, "%d_uTCA", i);
668  }
669 
670  if (_ptype != fLocal) {
673  if (_ptype == fOnline) {
675  }
676  }
677 
678  // BOOK HISTOGRAMS that are only for Online
681 
682  if (_ptype == fOnline || _ptype == fLocal) {
685  }
686 
687  if (_ptype == fOnline) {
700  // _cOccupancyCutvsSlotvsLS_HFPM.book(ib, _emap, _filter_QIE1011, _subsystem);
704 
706  _xNChs.book(_emap);
708  _xUni.book(_emap);
711 
712  // just PER HF FED RECORD THE #CHANNELS
713  // ONLY WAY TO DO THAT AUTOMATICALLY AND W/O HARDCODING 1728
714  // or ANY OTHER VALUES LIKE 2592, 2192
715  std::vector<HcalGenericDetId> gids = _emap->allPrecisionId();
716  for (std::vector<HcalGenericDetId>::const_iterator it = gids.begin(); it != gids.end(); ++it) {
717  if (!it->isHcalDetId())
718  continue;
719  HcalDetId did(it->rawId());
720  if (_xQuality.exists(did)) {
721  HcalChannelStatus cs(it->rawId(), _xQuality.get(HcalDetId(*it)));
723  continue;
724  }
726  _xNChsNominal.get(eid)++; // he will know the nominal #channels per FED
727  }
728  }
729 
730  {
731  // MARK THESE HISTOGRAMS AS LUMI BASED FOR OFFLINE PROCESSING
732  auto scope = DQMStore::IBooker::UseLumiScope(ib);
733  if (_ptype == fOffline) {
734  //_cDigiSize_FED.setLumiFlag();
737  }
738 
739  // book Number of Events vs LS histogram
740  ib.setCurrentFolder(_subsystem + "/RunInfo");
741  meNumEvents1LS = ib.book1DD("NumberOfEvents", "NumberOfEvents", 1, 0, 1);
742 
743  // book the flag for unknown ids and the online guy as well
744  ib.setCurrentFolder(_subsystem + "/" + _name);
745  meUnknownIds1LS = ib.book1DD("UnknownIds", "UnknownIds", 1, 0, 1);
746  _unknownIdsPresent = false;
747  }
748 }
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
hcaldqm::ContainerProf1D _cTimingCutvsiphi_SubdetPM
Definition: DigiTask.h:106
hcaldqm::ContainerXXX< uint32_t > _xBadCapid
Definition: DigiTask.h:146
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: DigiTask.h:49
MonitorElement * meNumEvents1LS
Definition: DigiTask.h:175
hcaldqm::Container1D _LED_CUCountvsLSmod60_Subdet
Definition: DigiTask.h:191
hcaldqm::Container1D _cADC_SubdetPM
Definition: DigiTask.h:78
hcaldqm::Container1D _cADC_SubdetPM_QIE1011
Definition: DigiTask.h:86
hcaldqm::Container1D _LED_CUCountvsLS_Subdet
Definition: DigiTask.h:190
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container1D.cc:33
hcaldqm::Container1D _cOccupancyCutvsieta_Subdet
Definition: DigiTask.h:129
hcaldqm::Container2D _cLETDCvsADC_2bit_SubdetPM
Definition: DigiTask.h:149
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM
Definition: DigiTask.h:83
virtual bool exists(HcalDetId const &)
Definition: ContainerXXX.h:212
int const CRATE_VME_MIN
Definition: Constants.h:95
hcaldqm::Container2D _cADCvsTS_SubdetPM
Definition: DigiTask.h:94
std::pair< uint16_t, uint16_t > fed2crate(int fed)
Definition: Utilities.cc:10
hcaldqm::Container1D _cTimingCutHTH_SubdetPM
Definition: DigiTask.h:100
hcaldqm::ContainerProf1D _cQ2Q12CutvsLS_FEDHF
Definition: DigiTask.h:110
MonitorElement * meUnknownIds1LS
Definition: DigiTask.h:176
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::Container2D _cLETDCTimevsADC_SubdetPM
Definition: DigiTask.h:155
double _cutSumQ_HO
Definition: DigiTask.h:51
const DetId lookup(HcalElectronicsId fId) const
lookup the logical detid associated with the given electronics id
hcaldqm::Container2D _cLETDCvsTS_2bit_SubdetPM
Definition: DigiTask.h:151
hcaldqm::ContainerSingle2D _cCapidMinusBXmod4_CrateSlotuTCA[4]
Definition: DigiTask.h:169
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
hcaldqm::ContainerProf2D _cSumQ_depth
Definition: DigiTask.h:81
const HcalElectronicsMap * getHcalMapping() const
hcaldqm::Container1D _cOccupancyCutvsiphi_SubdetPM
Definition: DigiTask.h:128
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM_QIE1011
Definition: DigiTask.h:89
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: DigiTask.h:180
int const FIBER_VME_MIN
Definition: Constants.h:125
hcaldqm::Container2D _cOccupancyCutvsiphivsLS_SubdetPM
Definition: DigiTask.h:131
hcaldqm::ContainerXXX< uint32_t > _xDigiSize
Definition: DigiTask.h:142
hcaldqm::ContainerProf2D _cTimingCut_FEDuTCA
Definition: DigiTask.h:101
hcaldqm::Container1D _cBadTDCvsLS_SubdetPM
Definition: DigiTask.h:160
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::filter::HashFilter _filter_VME
Definition: DigiTask.h:68
ProcessingType _ptype
Definition: DQModule.h:44
hcaldqm::Container2D _cLETDCvsADC_6bit_SubdetPM
Definition: DigiTask.h:150
hcaldqm::Container2D _cOccupancy_CrateSlot
Definition: DigiTask.h:117
ContainerXXX< uint32_t > _xQuality
Definition: DQTask.h:66
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLS
Definition: DigiTask.h:170
int const FED_VME_MIN
Definition: Constants.h:82
hcaldqm::Container2D _cADCvsTS_SubdetPM_QIE1011
Definition: DigiTask.h:95
hcaldqm::Container1D _cDigiSize_Crate
Definition: DigiTask.h:139
hcaldqm::Container1D _cShapeCut_FED
Definition: DigiTask.h:93
hcaldqm::Container2D _cOccupancyCut_depth
Definition: DigiTask.h:127
hcaldqm::ContainerProf1D _cOccupancyCutvsBX_Subdet
Definition: DigiTask.h:136
double _cutSumQ_HF
Definition: DigiTask.h:51
HcalSubdetector
Definition: HcalAssistant.h:31
int const FIBER_uTCA_MIN1
Definition: Constants.h:128
hcaldqm::Container1D _cfC_SubdetPM_QIE1011
Definition: DigiTask.h:87
double _cutSumQ_HBHE
Definition: DigiTask.h:51
std::map< HcalSubdetector, std::vector< HcalDetId > > _ledCalibrationChannels
Definition: DigiTask.h:188
hash_function_did const hash_did[nHashType_did]
hcaldqm::ContainerProf2D _cTimingCut_depth
Definition: DigiTask.h:105
hcaldqm::Container1D _cBadTDCValues_SubdetPM
Definition: DigiTask.h:158
hcaldqm::ContainerProf1D _cTimingCutvsLS_SubdetPM
Definition: DigiTask.h:104
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:540
hcaldqm::filter::HashFilter _filter_TDC2bit
Definition: DigiTask.h:73
hcaldqm::ContainerProf1D _cSumQvsBX_SubdetPM_QIE1011
Definition: DigiTask.h:90
hcaldqm::Container2D _cOccupancy_depth
Definition: DigiTask.h:118
std::string _name
Definition: DQModule.h:42
HcalElectronicsMap const * _emap
Definition: DQTask.h:81
std::vector< HcalElectronicsId > allElectronicsId() const
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: DigiTask.h:179
hcaldqm::filter::HashFilter _filter_FEDHF
Definition: DigiTask.h:70
int const CRATE_uTCA_MIN
Definition: Constants.h:100
hcaldqm::ContainerProf1D _cOccupancyvsLS_Subdet
Definition: DigiTask.h:134
Definition: DetId.h:17
hcaldqm::ContainerProf1D _cSumQvsLS_SubdetPM
Definition: DigiTask.h:82
hcaldqm::ContainerXXX< uint32_t > _xUni
Definition: DigiTask.h:143
hcaldqm::ContainerProf1D _cTimingCutvsLS_FED
Definition: DigiTask.h:103
hcaldqm::Container2D _cOccupancyCut_FEDuTCA
Definition: DigiTask.h:125
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:87
hcaldqm::Container1D _cDigiSize_FED
Definition: DigiTask.h:140
hcaldqm::filter::HashFilter _filter_QIE8
Definition: DigiTask.h:72
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container1D.cc:592
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
hcaldqm::Container2D _LED_ADCvsBX_Subdet
Definition: DigiTask.h:192
hcaldqm::ContainerXXX< uint32_t > _xNChsNominal
Definition: DigiTask.h:145
hcaldqm::Container1D _cSumQ_SubdetPM
Definition: DigiTask.h:80
hcaldqm::Container1D _cOccupancyvsiphi_SubdetPM
Definition: DigiTask.h:119
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerProf1D _cTimingCutvsieta_Subdet
Definition: DigiTask.h:107
hcaldqm::ContainerSingle2D _cCapid_BadvsFEDvsLSmod60
Definition: DigiTask.h:172
hcaldqm::Container1D _cLETDCTime_SubdetPM
Definition: DigiTask.h:153
constexpr uint32_t rawId() const
hcaldqm::electronicsmap::ElectronicsMap _dhashmap
Definition: DigiTask.h:65
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fEnergy), int debug=0) override
std::vector< hcaldqm::flag::Flag > _vflags
Definition: DigiTask.h:55
hcaldqm::Container2D _cOccupancyCut_ElectronicsuTCA
Definition: DigiTask.h:126
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
hcaldqm::Container1D _cBadTDCvsBX_SubdetPM
Definition: DigiTask.h:159
std::vector< HcalGenericDetId > allPrecisionId() const
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:97
hcaldqm::Container2D _cOccupancy_Crate
Definition: DigiTask.h:116
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_uTCA
Definition: DigiTask.h:69
hcaldqm::Container2D _cLETDCvsTS_6bit_SubdetPM
Definition: DigiTask.h:152
hcaldqm::ContainerProf1D _cDigiSizevsLS_FED
Definition: DigiTask.h:141
hcaldqm::ContainerXXX< uint32_t > _xNChs
Definition: DigiTask.h:144
hcaldqm::filter::HashFilter _filter_TDC6bit
Definition: DigiTask.h:74
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: DigiTask.h:64
hcaldqm::ContainerProf1D _cOccupancyCutvsLS_Subdet
Definition: DigiTask.h:135
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:81
hcaldqm::filter::HashFilter _filter_QIE1011
Definition: DigiTask.h:71
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:567
hcaldqm::Container2D _cBadTDCCount_depth
Definition: DigiTask.h:161
hcaldqm::ContainerProf2D _cLETDCTime_depth
Definition: DigiTask.h:154
std::vector< uint32_t > _vhashFEDs
Definition: DigiTask.h:59
hcaldqm::Container1D _cOccupancyvsieta_Subdet
Definition: DigiTask.h:120
Readout chain identification for Hcal.
hcaldqm::ContainerProf2D _cTimingCut_ElectronicsuTCA
Definition: DigiTask.h:102
int const SLOT_uTCA_MIN
Definition: Constants.h:107
hcaldqm::Container1D _cSumQ_SubdetPM_QIE1011
Definition: DigiTask.h:88
hcaldqm::Container1D _cTimingCut_SubdetPM
Definition: DigiTask.h:99
bool _unknownIdsPresent
Definition: DigiTask.h:177
hcaldqm::Container2D _cOccupancy_FEDuTCA
Definition: DigiTask.h:114
hcaldqm::Container1D _cCapidMinusBXmod4_SubdetPM
Definition: DigiTask.h:168
ib
Definition: cuy.py:661
hcaldqm::ContainerXXX< uint32_t > _xUniHF
Definition: DigiTask.h:143
hcaldqm::Container1D _cfC_SubdetPM
Definition: DigiTask.h:79
hcaldqm::Container2D _cOccupancy_ElectronicsuTCA
Definition: DigiTask.h:115

◆ globalBeginLuminosityBlock()

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

Definition at line 1380 of file DigiTask.cc.

1381  {
1382  return DQTask::globalBeginLuminosityBlock(lb, es);
1383 }

◆ globalEndLuminosityBlock()

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

Definition at line 1385 of file DigiTask.cc.

References _cSummaryvsLS, _cSummaryvsLS_FED, hcaldqm::DQModule::_currentLS, hcaldqm::DQModule::_evsPerLS, _LED_CUCountvsLS_Subdet, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_runkeyVal, hcaldqm::flag::Flag::_state, _thresh_unihf, _unknownIdsPresent, hcaldqm::DQTask::_vcdaqEids, _vflags, _vhashFEDs, _xBadCapid, _xDigiSize, _xNChs, _xNChsNominal, _xUni, _xUniHF, hcaldqm::ContainerXXX< STDTYPE >::begin(), runTauDisplay::eid, hcaldqm::ContainerXXX< STDTYPE >::end(), hcaldqm::flag::fBAD, fCapId, fDigiSize, hcaldqm::flag::fGOOD, spr::find(), fLED, hcaldqm::fLocal, hcaldqm::flag::fNCDAQ, fNChsHF, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::flag::fPROBLEMATIC, fUni, fUnknownIds, hcaldqm::ContainerXXX< STDTYPE >::get(), hcaldqm::Container1D::getBinContent(), hcaldqm::hashfunctions::hash_Subdet(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, edm::LuminosityBlock::index(), hcaldqm::utilities::isFEDHBHE(), hcaldqm::utilities::isFEDHF(), hcaldqm::utilities::isFEDHO(), hcaldqm::ContainerXXX< STDTYPE >::reset(), hcaldqm::flag::Flag::reset(), hcaldqm::ContainerSingle2D::setBinContent(), hcaldqm::Container2D::setBinContent(), testProducerWithPsetDescEmpty_cfi::x1, and testProducerWithPsetDescEmpty_cfi::x2.

1385  {
1386  auto lumiCache = luminosityBlockCache(lb.index());
1387  _currentLS = lumiCache->currentLS;
1388  _evsPerLS = lumiCache->EvtCntLS;
1389 
1390  if (_ptype != fOnline)
1391  return;
1392 
1393  for (uintCompactMap::const_iterator it = _xUniHF.begin(); it != _xUniHF.end(); ++it) {
1394  uint32_t hash1 = it->first;
1395  HcalElectronicsId eid1(hash1);
1396  double x1 = it->second;
1397 
1398  for (uintCompactMap::const_iterator jt = _xUniHF.begin(); jt != _xUniHF.end(); ++jt) {
1399  if (jt == it)
1400  continue;
1401  double x2 = jt->second;
1402  if (x2 == 0)
1403  continue;
1404  if (x1 / x2 < _thresh_unihf)
1405  _xUni.get(eid1)++;
1406  }
1407  }
1408 
1409  if (_ptype != fOffline) { // hidefed2crate
1410  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
1411  hcaldqm::flag::Flag fSum("DIGI");
1413 
1414  std::vector<uint32_t>::const_iterator cit = std::find(_vcdaqEids.begin(), _vcdaqEids.end(), *it);
1415  if (cit == _vcdaqEids.end()) {
1416  // not @cDAQ
1417  for (uint32_t iflag = 0; iflag < _vflags.size(); iflag++)
1420  continue;
1421  }
1422 
1423  // FED is @cDAQ
1425  if (_xDigiSize.get(eid) > 0)
1427  else
1429 
1430  if (_xBadCapid.get(eid) > 0) {
1432  } else {
1434  }
1435 
1437  double fr = double(_xNChs.get(eid)) / double(_xNChsNominal.get(eid) * _evsPerLS);
1438  if (_runkeyVal == 0 || _runkeyVal == 4) {
1439  // only for pp or hi
1440  if (_xUni.get(eid) > 0)
1442  else
1443  _vflags[fUni]._state = hcaldqm::flag::fGOOD;
1444  }
1445  if (fr < 0.95)
1447  else if (fr < 1.0)
1449  else
1451  }
1452  }
1453  if (_unknownIdsPresent)
1455  else
1457 
1458  // LED misfires
1459  if (_ptype != fLocal) {
1463 
1466  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1467  } else {
1468  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1469  }
1470  } else if (hcaldqm::utilities::isFEDHF(eid)) {
1473  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1474  } else {
1475  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1476  }
1477  } else if (hcaldqm::utilities::isFEDHO(eid)) {
1480  _vflags[fLED]._state = hcaldqm::flag::fBAD;
1481  } else {
1482  _vflags[fLED]._state = hcaldqm::flag::fGOOD;
1483  }
1484  }
1485  }
1486 
1487  int iflag = 0;
1488  for (std::vector<hcaldqm::flag::Flag>::iterator ft = _vflags.begin(); ft != _vflags.end(); ++ft) {
1489  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, iflag, int(ft->_state));
1490  fSum += (*ft);
1491  iflag++;
1492 
1493  // reset!
1494  ft->reset();
1495  }
1496  _cSummaryvsLS.setBinContent(eid, _currentLS, fSum._state);
1497  }
1498  }
1499 
1500  _xDigiSize.reset();
1501  _xUniHF.reset();
1502  _xUni.reset();
1503  _xNChs.reset();
1504  _xBadCapid.reset();
1505 
1506  // in the end always do the DQTask::endLumi
1507  DQTask::globalEndLuminosityBlock(lb, es);
1508 }
hcaldqm::ContainerXXX< uint32_t > _xBadCapid
Definition: DigiTask.h:146
hcaldqm::Container1D _LED_CUCountvsLS_Subdet
Definition: DigiTask.h:190
virtual CompactMap::const_iterator begin()
Definition: ContainerXXX.h:69
double _thresh_unihf
Definition: DigiTask.h:52
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: DigiTask.h:180
hcaldqm::ContainerXXX< uint32_t > _xDigiSize
Definition: DigiTask.h:142
virtual CompactMap::const_iterator end()
Definition: ContainerXXX.h:70
ProcessingType _ptype
Definition: DQModule.h:44
virtual void setBinContent(int, int, int)
uint32_t hash_Subdet(HcalDetId const &)
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: DigiTask.h:179
hcaldqm::ContainerXXX< uint32_t > _xUni
Definition: DigiTask.h:143
bool isFEDHBHE(HcalElectronicsId const &)
Definition: Utilities.cc:156
hcaldqm::ContainerXXX< uint32_t > _xNChsNominal
Definition: DigiTask.h:145
std::vector< hcaldqm::flag::Flag > _vflags
Definition: DigiTask.h:55
void setBinContent(HcalDetId const &, int) override
Definition: Container2D.cc:163
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
virtual double getBinContent(HcalDetId const &)
Definition: Container1D.cc:177
bool isFEDHO(HcalElectronicsId const &)
Definition: Utilities.cc:182
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:69
hcaldqm::ContainerXXX< uint32_t > _xNChs
Definition: DigiTask.h:144
std::vector< uint32_t > _vhashFEDs
Definition: DigiTask.h:59
Readout chain identification for Hcal.
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:170
bool _unknownIdsPresent
Definition: DigiTask.h:177
hcaldqm::ContainerXXX< uint32_t > _xUniHF
Definition: DigiTask.h:143

Member Data Documentation

◆ _cADC_SubdetPM

hcaldqm::Container1D DigiTask::_cADC_SubdetPM
protected

Definition at line 78 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cADC_SubdetPM_QIE1011

hcaldqm::Container1D DigiTask::_cADC_SubdetPM_QIE1011
protected

Definition at line 86 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cADCvsTS_SubdetPM

hcaldqm::Container2D DigiTask::_cADCvsTS_SubdetPM
protected

Definition at line 94 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cADCvsTS_SubdetPM_QIE1011

hcaldqm::Container2D DigiTask::_cADCvsTS_SubdetPM_QIE1011
protected

Definition at line 95 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _capidmbx

std::map<HcalSubdetector, short> DigiTask::_capidmbx
protected

Definition at line 184 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _cBadTDCCount_depth

hcaldqm::Container2D DigiTask::_cBadTDCCount_depth
protected

Definition at line 161 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadTDCValues

hcaldqm::Container1D DigiTask::_cBadTDCValues
protected

Definition at line 163 of file DigiTask.h.

◆ _cBadTDCValues_SubdetPM

hcaldqm::Container1D DigiTask::_cBadTDCValues_SubdetPM
protected

Definition at line 158 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadTDCvsBX

hcaldqm::Container1D DigiTask::_cBadTDCvsBX
protected

Definition at line 164 of file DigiTask.h.

◆ _cBadTDCvsBX_SubdetPM

hcaldqm::Container1D DigiTask::_cBadTDCvsBX_SubdetPM
protected

Definition at line 159 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cBadTDCvsLS

hcaldqm::Container1D DigiTask::_cBadTDCvsLS
protected

Definition at line 165 of file DigiTask.h.

◆ _cBadTDCvsLS_SubdetPM

hcaldqm::Container1D DigiTask::_cBadTDCvsLS_SubdetPM
protected

Definition at line 160 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cCapid_BadvsFEDvsLS

hcaldqm::ContainerSingle2D DigiTask::_cCapid_BadvsFEDvsLS
protected

Definition at line 170 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cCapid_BadvsFEDvsLSmod60

hcaldqm::ContainerSingle2D DigiTask::_cCapid_BadvsFEDvsLSmod60
protected

Definition at line 172 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cCapidMinusBXmod4_CrateSlotuTCA

hcaldqm::ContainerSingle2D DigiTask::_cCapidMinusBXmod4_CrateSlotuTCA[4]
protected

Definition at line 169 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cCapidMinusBXmod4_SubdetPM

hcaldqm::Container1D DigiTask::_cCapidMinusBXmod4_SubdetPM
protected

Definition at line 168 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cDigiSize_Crate

hcaldqm::Container1D DigiTask::_cDigiSize_Crate
protected

Definition at line 139 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cDigiSize_FED

hcaldqm::Container1D DigiTask::_cDigiSize_FED
protected

Definition at line 140 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cDigiSizevsLS_FED

hcaldqm::ContainerProf1D DigiTask::_cDigiSizevsLS_FED
protected

Definition at line 141 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cfC_SubdetPM

hcaldqm::Container1D DigiTask::_cfC_SubdetPM
protected

Definition at line 79 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cfC_SubdetPM_QIE1011

hcaldqm::Container1D DigiTask::_cfC_SubdetPM_QIE1011
protected

Definition at line 87 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCTime_depth

hcaldqm::ContainerProf2D DigiTask::_cLETDCTime_depth
protected

Definition at line 154 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCTime_SubdetPM

hcaldqm::Container1D DigiTask::_cLETDCTime_SubdetPM
protected

Definition at line 153 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCTimevsADC_SubdetPM

hcaldqm::Container2D DigiTask::_cLETDCTimevsADC_SubdetPM
protected

Definition at line 155 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsADC_2bit_SubdetPM

hcaldqm::Container2D DigiTask::_cLETDCvsADC_2bit_SubdetPM
protected

Definition at line 149 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsADC_6bit_SubdetPM

hcaldqm::Container2D DigiTask::_cLETDCvsADC_6bit_SubdetPM
protected

Definition at line 150 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsTS_2bit_SubdetPM

hcaldqm::Container2D DigiTask::_cLETDCvsTS_2bit_SubdetPM
protected

Definition at line 151 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsTS_6bit_SubdetPM

hcaldqm::Container2D DigiTask::_cLETDCvsTS_6bit_SubdetPM
protected

Definition at line 152 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_Crate

hcaldqm::Container2D DigiTask::_cOccupancy_Crate
protected

Definition at line 116 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_CrateSlot

hcaldqm::Container2D DigiTask::_cOccupancy_CrateSlot
protected

Definition at line 117 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_depth

hcaldqm::Container2D DigiTask::_cOccupancy_depth
protected

Definition at line 118 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_ElectronicsuTCA

hcaldqm::Container2D DigiTask::_cOccupancy_ElectronicsuTCA
protected

Definition at line 115 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_FEDuTCA

hcaldqm::Container2D DigiTask::_cOccupancy_FEDuTCA
protected

Definition at line 114 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCut_depth

hcaldqm::Container2D DigiTask::_cOccupancyCut_depth
protected

Definition at line 127 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCut_ElectronicsuTCA

hcaldqm::Container2D DigiTask::_cOccupancyCut_ElectronicsuTCA
protected

Definition at line 126 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCut_FEDuTCA

hcaldqm::Container2D DigiTask::_cOccupancyCut_FEDuTCA
protected

Definition at line 125 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCutvsBX_Subdet

hcaldqm::ContainerProf1D DigiTask::_cOccupancyCutvsBX_Subdet
protected

Definition at line 136 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCutvsieta_Subdet

hcaldqm::Container1D DigiTask::_cOccupancyCutvsieta_Subdet
protected

Definition at line 129 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCutvsiphi_SubdetPM

hcaldqm::Container1D DigiTask::_cOccupancyCutvsiphi_SubdetPM
protected

Definition at line 128 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCutvsiphivsLS_SubdetPM

hcaldqm::Container2D DigiTask::_cOccupancyCutvsiphivsLS_SubdetPM
protected

Definition at line 131 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyCutvsLS_Subdet

hcaldqm::ContainerProf1D DigiTask::_cOccupancyCutvsLS_Subdet
protected

Definition at line 135 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyvsieta_Subdet

hcaldqm::Container1D DigiTask::_cOccupancyvsieta_Subdet
protected

Definition at line 120 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancyvsiphi_SubdetPM

hcaldqm::Container1D DigiTask::_cOccupancyvsiphi_SubdetPM
protected

Definition at line 119 of file DigiTask.h.

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

◆ _cOccupancyvsLS_Subdet

hcaldqm::ContainerProf1D DigiTask::_cOccupancyvsLS_Subdet
protected

Definition at line 134 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cQ2Q12CutvsLS_FEDHF

hcaldqm::ContainerProf1D DigiTask::_cQ2Q12CutvsLS_FEDHF
protected

Definition at line 110 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cShapeCut_FED

hcaldqm::Container1D DigiTask::_cShapeCut_FED
protected

Definition at line 93 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSummaryvsLS

hcaldqm::ContainerSingle2D DigiTask::_cSummaryvsLS
protected

Definition at line 180 of file DigiTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _cSummaryvsLS_FED

hcaldqm::Container2D DigiTask::_cSummaryvsLS_FED
protected

Definition at line 179 of file DigiTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _cSumQ_depth

hcaldqm::ContainerProf2D DigiTask::_cSumQ_depth
protected

Definition at line 81 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQ_SubdetPM

hcaldqm::Container1D DigiTask::_cSumQ_SubdetPM
protected

Definition at line 80 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQ_SubdetPM_QIE1011

hcaldqm::Container1D DigiTask::_cSumQ_SubdetPM_QIE1011
protected

Definition at line 88 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQvsBX_SubdetPM

hcaldqm::ContainerProf1D DigiTask::_cSumQvsBX_SubdetPM
protected

Definition at line 83 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQvsBX_SubdetPM_QIE1011

hcaldqm::ContainerProf1D DigiTask::_cSumQvsBX_SubdetPM_QIE1011
protected

Definition at line 90 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQvsLS_SubdetPM

hcaldqm::ContainerProf1D DigiTask::_cSumQvsLS_SubdetPM
protected

Definition at line 82 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cSumQvsLS_SubdetPM_QIE1011

hcaldqm::ContainerProf1D DigiTask::_cSumQvsLS_SubdetPM_QIE1011
protected

Definition at line 89 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCut_depth

hcaldqm::ContainerProf2D DigiTask::_cTimingCut_depth
protected

Definition at line 105 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCut_ElectronicsuTCA

hcaldqm::ContainerProf2D DigiTask::_cTimingCut_ElectronicsuTCA
protected

Definition at line 102 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCut_FEDuTCA

hcaldqm::ContainerProf2D DigiTask::_cTimingCut_FEDuTCA
protected

Definition at line 101 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCut_SubdetPM

hcaldqm::Container1D DigiTask::_cTimingCut_SubdetPM
protected

Definition at line 99 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCutHTH_SubdetPM

hcaldqm::Container1D DigiTask::_cTimingCutHTH_SubdetPM
protected

Definition at line 100 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCutvsieta_Subdet

hcaldqm::ContainerProf1D DigiTask::_cTimingCutvsieta_Subdet
protected

Definition at line 107 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCutvsiphi_SubdetPM

hcaldqm::ContainerProf1D DigiTask::_cTimingCutvsiphi_SubdetPM
protected

Definition at line 106 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCutvsLS_FED

hcaldqm::ContainerProf1D DigiTask::_cTimingCutvsLS_FED
protected

Definition at line 103 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cTimingCutvsLS_SubdetPM

hcaldqm::ContainerProf1D DigiTask::_cTimingCutvsLS_SubdetPM
protected

Definition at line 104 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _cutSumQ_HBHE

double DigiTask::_cutSumQ_HBHE
protected

Definition at line 51 of file DigiTask.h.

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

◆ _cutSumQ_HF

double DigiTask::_cutSumQ_HF
protected

Definition at line 51 of file DigiTask.h.

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

◆ _cutSumQ_HO

double DigiTask::_cutSumQ_HO
protected

Definition at line 51 of file DigiTask.h.

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

◆ _dhashmap

hcaldqm::electronicsmap::ElectronicsMap DigiTask::_dhashmap
protected

Definition at line 65 of file DigiTask.h.

Referenced by bookHistograms().

◆ _ehashmap

hcaldqm::electronicsmap::ElectronicsMap DigiTask::_ehashmap
protected

Definition at line 64 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _filter_FEDHF

hcaldqm::filter::HashFilter DigiTask::_filter_FEDHF
protected

Definition at line 70 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_QIE1011

hcaldqm::filter::HashFilter DigiTask::_filter_QIE1011
protected

Definition at line 71 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_QIE8

hcaldqm::filter::HashFilter DigiTask::_filter_QIE8
protected

Definition at line 72 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_TDC2bit

hcaldqm::filter::HashFilter DigiTask::_filter_TDC2bit
protected

Definition at line 73 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_TDC6bit

hcaldqm::filter::HashFilter DigiTask::_filter_TDC6bit
protected

Definition at line 74 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_uTCA

hcaldqm::filter::HashFilter DigiTask::_filter_uTCA
protected

Definition at line 69 of file DigiTask.h.

Referenced by bookHistograms().

◆ _filter_VME

hcaldqm::filter::HashFilter DigiTask::_filter_VME
protected

Definition at line 68 of file DigiTask.h.

Referenced by bookHistograms().

◆ _LED_ADCvsBX_Subdet

hcaldqm::Container2D DigiTask::_LED_ADCvsBX_Subdet
protected

Definition at line 192 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _LED_CUCountvsLS_Subdet

hcaldqm::Container1D DigiTask::_LED_CUCountvsLS_Subdet
protected

Definition at line 190 of file DigiTask.h.

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

◆ _LED_CUCountvsLSmod60_Subdet

hcaldqm::Container1D DigiTask::_LED_CUCountvsLSmod60_Subdet
protected

Definition at line 191 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _ledCalibrationChannels

std::map<HcalSubdetector, std::vector<HcalDetId> > DigiTask::_ledCalibrationChannels
protected

Definition at line 188 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ _qie10InConditions

bool DigiTask::_qie10InConditions
protected

Definition at line 182 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _refDigiSize

std::map<HcalSubdetector, int> DigiTask::_refDigiSize
protected

Definition at line 61 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _tagHO

edm::InputTag DigiTask::_tagHO
protected

Definition at line 44 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _tagQIE10

edm::InputTag DigiTask::_tagQIE10
protected

Definition at line 45 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _tagQIE11

edm::InputTag DigiTask::_tagQIE11
protected

Definition at line 43 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _thresh_led

double DigiTask::_thresh_led
protected

Definition at line 187 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _thresh_unihf

double DigiTask::_thresh_unihf
protected

Definition at line 52 of file DigiTask.h.

Referenced by DigiTask(), and globalEndLuminosityBlock().

◆ _tokHO

edm::EDGetTokenT<HODigiCollection> DigiTask::_tokHO
protected

Definition at line 47 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _tokQIE10

edm::EDGetTokenT<QIE10DigiCollection> DigiTask::_tokQIE10
protected

Definition at line 48 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _tokQIE11

edm::EDGetTokenT<QIE11DigiCollection> DigiTask::_tokQIE11
protected

Definition at line 46 of file DigiTask.h.

Referenced by _process(), and DigiTask().

◆ _unknownIdsPresent

bool DigiTask::_unknownIdsPresent
protected

Definition at line 177 of file DigiTask.h.

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

◆ _vflags

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

Definition at line 55 of file DigiTask.h.

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

◆ _vhashFEDs

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

Definition at line 59 of file DigiTask.h.

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

◆ _xBadCapid

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xBadCapid
protected

Definition at line 146 of file DigiTask.h.

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

◆ _xDigiSize

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xDigiSize
protected

Definition at line 142 of file DigiTask.h.

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

◆ _xNChs

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xNChs
protected

Definition at line 144 of file DigiTask.h.

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

◆ _xNChsNominal

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xNChsNominal
protected

Definition at line 145 of file DigiTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _xUni

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xUni
protected

Definition at line 143 of file DigiTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

◆ _xUniHF

hcaldqm::ContainerXXX<uint32_t> DigiTask::_xUniHF
protected

Definition at line 143 of file DigiTask.h.

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

◆ cutSumQ_HBHE

DigiTask.cutSumQ_HBHE

Definition at line 26 of file DigiTask.py.

◆ cutSumQ_HF

DigiTask.cutSumQ_HF

Definition at line 28 of file DigiTask.py.

◆ cutSumQ_HO

DigiTask.cutSumQ_HO

Definition at line 27 of file DigiTask.py.

◆ debug

DigiTask.debug

◆ digiTask

DigiTask.digiTask

Definition at line 5 of file DigiTask.py.

◆ hcalDbServiceToken_

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

Definition at line 49 of file DigiTask.h.

Referenced by bookHistograms().

◆ ledCalibrationChannels

DigiTask.ledCalibrationChannels

Definition at line 9 of file DigiTask.py.

◆ meNumEvents1LS

MonitorElement* DigiTask::meNumEvents1LS
protected

Definition at line 175 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ meUnknownIds1LS

MonitorElement* DigiTask::meUnknownIds1LS
protected

Definition at line 176 of file DigiTask.h.

Referenced by _process(), and bookHistograms().

◆ mtype

DigiTask.mtype

Definition at line 17 of file DigiTask.py.

◆ name

DigiTask.name

Definition at line 12 of file DigiTask.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

DigiTask.ptype

Definition at line 16 of file DigiTask.py.

◆ qie10InConditions

DigiTask.qie10InConditions

Definition at line 34 of file DigiTask.py.

◆ refDigiSize

DigiTask.refDigiSize

Definition at line 37 of file DigiTask.py.

◆ runkeyName

DigiTask.runkeyName

Definition at line 15 of file DigiTask.py.

◆ runkeyVal

DigiTask.runkeyVal

Definition at line 14 of file DigiTask.py.

◆ subsystem

DigiTask.subsystem

Definition at line 18 of file DigiTask.py.

◆ tagHBHE

DigiTask.tagHBHE

Definition at line 21 of file DigiTask.py.

◆ tagHF

DigiTask.tagHF

Definition at line 23 of file DigiTask.py.

◆ tagHO

DigiTask.tagHO

Definition at line 22 of file DigiTask.py.

◆ thresh_led

DigiTask.thresh_led

Definition at line 32 of file DigiTask.py.

◆ thresh_unifh

DigiTask.thresh_unifh

Definition at line 31 of file DigiTask.py.