CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
TPTask Class Reference

#include <TPTask.h>

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

Public Member Functions

void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
std::shared_ptr< hcaldqm::CacheglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 TPTask (edm::ParameterSet const &)
 
 ~TPTask () 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
 
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)
 
 ~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

list fgbits = [1 for x in range(5)]
 
tuple tpTask
 

Protected Types

enum  TPFlag {
  fEtMsm = 0, fDataMsn = 1, fEmulMsn = 2, fUnknownIds = 3,
  fSentRecL1Msm = 4, nTPFlag = 5
}
 

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
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< B > consumes (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 () noexcept
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
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::Container2D _cEtCorr2x3_TTSubdet
 
hcaldqm::Container2D _cEtCorr_TTSubdet
 
hcaldqm::ContainerSingleProf2D _cEtCorrRatio_depthlike
 
hcaldqm::ContainerProf2D _cEtCorrRatio_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cEtCorrRatiovsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cEtCorrRatiovsLS_TTSubdet
 
hcaldqm::ContainerSingleProf2D _cEtCutData_depthlike
 
hcaldqm::Container2D _cEtCutDatavsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cEtCutDatavsLS_TTSubdet
 
hcaldqm::ContainerSingleProf2D _cEtCutEmul_depthlike
 
hcaldqm::ContainerProf1D _cEtCutEmulvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cEtCutEmulvsLS_TTSubdet
 
hcaldqm::ContainerSingleProf2D _cEtData_depthlike
 
hcaldqm::ContainerProf2D _cEtData_ElectronicsuTCA
 
hcaldqm::Container1D _cEtData_TTSubdet
 
hcaldqm::ContainerSingleProf2D _cEtEmul_depthlike
 
hcaldqm::ContainerProf2D _cEtEmul_ElectronicsuTCA
 
hcaldqm::Container1D _cEtEmul_TTSubdet
 
hcaldqm::ContainerSingle2D _cEtMsm_depthlike
 
hcaldqm::Container2D _cEtMsm_ElectronicsuTCA
 
hcaldqm::ContainerSingle2D _cEtMsm_uHTR_L1T_depthlike
 
hcaldqm::ContainerSingle1D _cEtMsm_uHTR_L1T_LS
 
hcaldqm::ContainerProf1D _cEtMsmRatiovsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cEtMsmRatiovsLS_TTSubdet
 
hcaldqm::ContainerProf1D _cEtMsmvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cEtMsmvsLS_TTSubdet
 
hcaldqm::Container2D _cFGCorr_TTSubdet [hcaldqm::constants::NUM_FGBITS]
 
hcaldqm::ContainerSingle2D _cFGMsm_depthlike
 
hcaldqm::Container2D _cFGMsm_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cMsnCutDatavsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cMsnCutDatavsLS_TTSubdet
 
hcaldqm::ContainerProf1D _cMsnCutEmulvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cMsnCutEmulvsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cMsnData_depthlike
 
hcaldqm::Container2D _cMsnData_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cMsnDatavsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cMsnDatavsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cMsnEmul_depthlike
 
hcaldqm::Container2D _cMsnEmul_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cMsnEmulvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cMsnEmulvsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cOccupancy_HF_depth
 
hcaldqm::ContainerSingle1D _cOccupancy_HF_ieta
 
hcaldqm::ContainerSingle2D _cOccupancyCutData_depthlike
 
hcaldqm::Container2D _cOccupancyCutData_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cOccupancyCutDatavsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cOccupancyCutDatavsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cOccupancyCutEmul_depthlike
 
hcaldqm::Container2D _cOccupancyCutEmul_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cOccupancyData2x3_depthlike
 
hcaldqm::ContainerSingle2D _cOccupancyData_depthlike
 
hcaldqm::Container2D _cOccupancyData_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cOccupancyDatavsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cOccupancyDatavsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cOccupancyEmul2x3_depthlike
 
hcaldqm::ContainerSingle2D _cOccupancyEmul_depthlike
 
hcaldqm::Container2D _cOccupancyEmul_ElectronicsuTCA
 
hcaldqm::ContainerProf1D _cOccupancyEmulvsBX_TTSubdet
 
hcaldqm::ContainerProf1D _cOccupancyEmulvsLS_TTSubdet
 
hcaldqm::ContainerSingle2D _cOccupancyNoTDC_HF_depth
 
hcaldqm::ContainerSingle1D _cOccupancyNoTDC_HF_ieta
 
hcaldqm::Container2D _cSOIEtCorr_TTSubdet
 
hcaldqm::Container2D _cSOIEtCorrEmulL1_TTSubdet
 
hcaldqm::ContainerSingle2D _cSummaryvsLS
 
hcaldqm::Container2D _cSummaryvsLS_FED
 
int _cutEt
 
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
 
hcaldqm::filter::HashFilter _filter_depth0
 
hcaldqm::filter::HashFilter _filter_uTCA
 
hcaldqm::filter::HashFilter _filter_VME
 
bool _skip1x1
 
edm::InputTag _tagData
 
edm::InputTag _tagDataL1Rec
 
edm::InputTag _tagEmul
 
edm::InputTag _tagEmulNoTDCCut
 
double _thresh_DataMsn
 
double _thresh_EmulMsn
 
double _thresh_EtMsmRate_high
 
double _thresh_EtMsmRate_low
 
double _thresh_FGMsmRate_high
 
double _thresh_FGMsmRate_low
 
edm::EDGetTokenT
< HcalTrigPrimDigiCollection
_tokData
 
edm::EDGetTokenT
< HcalTrigPrimDigiCollection
_tokDataL1Rec
 
edm::EDGetTokenT
< HcalTrigPrimDigiCollection
_tokEmul
 
edm::EDGetTokenT
< HcalTrigPrimDigiCollection
_tokEmulNoTDCCut
 
bool _unknownIdsPresent
 
std::vector< std::pair
< HcalTriggerPrimitiveDigi,
HcalTriggerPrimitiveDigi > > 
_vEmulTPDigis_SentRec
 
std::vector< bool > _vFGBitsReady
 
std::vector< hcaldqm::flag::Flag_vflags
 
std::vector< uint32_t > _vhashFEDs
 
std::vector< std::pair
< HcalTriggerPrimitiveDigi,
HcalTriggerPrimitiveDigi > > 
_vTPDigis_SentRec
 
hcaldqm::ContainerXXX< uint32_t > _xDataMsn
 
hcaldqm::ContainerXXX< uint32_t > _xDataTotal
 
hcaldqm::ContainerXXX< uint32_t > _xEmulMsn
 
hcaldqm::ContainerXXX< uint32_t > _xEmulTotal
 
hcaldqm::ContainerXXX< uint32_t > _xEtMsm
 
hcaldqm::ContainerXXX< uint32_t > _xFGMsm
 
hcaldqm::ContainerXXX< uint32_t > _xNumCorr
 
hcaldqm::ContainerXXX< uint32_t > _xSentRecL1Msm
 
edm::ESGetToken< HcalDbService,
HcalDbRecord
hcalDbServiceToken_
 
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,
HcalChannelQualityRcd
hcalChannelQualityToken_
 
edm::ESGetToken< HcalDbService,
HcalDbRecord
hcalDbServiceToken_
 
edm::ESGetToken< RunInfo,
RunInfoRcd
runInfoToken_
 
- Protected Attributes inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
edm::EDPutTokenT< DQMTokenrunToken_
 
- Protected Attributes inherited from hcaldqm::DQModule
int _currentLS
 
int _debug
 
int _evsPerLS
 
int _evsTotal
 
Logger _logger
 
int _maxLS
 
ModuleType _mtype
 
std::string _name
 
ProcessingType _ptype
 
std::string _runkeyName
 
int _runkeyVal
 
std::string _subsystem
 

Additional Inherited Members

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

Detailed Description

file: Author: Description:

Definition at line 22 of file TPTask.h.

Member Enumeration Documentation

enum TPTask::TPFlag
protected
Enumerator
fEtMsm 
fDataMsn 
fEmulMsn 
fUnknownIds 
fSentRecL1Msm 
nTPFlag 

Definition at line 48 of file TPTask.h.

Constructor & Destructor Documentation

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

Definition at line 6 of file TPTask.cc.

References _cutEt, hcaldqm::DQModule::_ptype, _skip1x1, _tagData, _tagDataL1Rec, _tagEmul, _tagEmulNoTDCCut, _thresh_DataMsn, _thresh_EmulMsn, _thresh_EtMsmRate_high, _thresh_EtMsmRate_low, _thresh_FGMsmRate_high, _thresh_FGMsmRate_low, _tokData, _tokDataL1Rec, _tokEmul, _tokEmulNoTDCCut, _vFGBitsReady, _vflags, fDataMsn, fEmulMsn, fEtMsm, hcaldqm::fOnline, fSentRecL1Msm, fUnknownIds, edm::ParameterSet::getUntrackedParameter(), HLT_FULL_cff::InputTag, nTPFlag, hcaldqm::constants::NUM_FGBITS, and createJobs::tmp.

7  : DQTask(ps), hcalDbServiceToken_(esConsumes<HcalDbService, HcalDbRecord, edm::Transition::BeginRun>()) {
8  _tagData = ps.getUntrackedParameter<edm::InputTag>("tagData", edm::InputTag("hcalDigis"));
9  _tagDataL1Rec = ps.getUntrackedParameter<edm::InputTag>("tagDataL1Rec", edm::InputTag("caloLayer1Digis"));
10  _tagEmul = ps.getUntrackedParameter<edm::InputTag>("tagEmul", edm::InputTag("emulDigis"));
11  _tagEmulNoTDCCut = ps.getUntrackedParameter<edm::InputTag>("tagEmulNoTDCCut", edm::InputTag("emulTPDigisNoTDCCut"));
12 
13  _tokData = consumes<HcalTrigPrimDigiCollection>(_tagData);
14  _tokDataL1Rec = consumes<HcalTrigPrimDigiCollection>(_tagDataL1Rec);
15  _tokEmul = consumes<HcalTrigPrimDigiCollection>(_tagEmul);
16  _tokEmulNoTDCCut = consumes<HcalTrigPrimDigiCollection>(_tagEmulNoTDCCut);
17 
18  _skip1x1 = ps.getUntrackedParameter<bool>("skip1x1", true);
19  _cutEt = ps.getUntrackedParameter<int>("cutEt", 3);
20  _thresh_EtMsmRate_high = ps.getUntrackedParameter<double>("thresh_EtMsmRate_high", 0.2);
21  _thresh_EtMsmRate_low = ps.getUntrackedParameter<double>("thresh_EtMsmRate_low", 0.05);
22  _thresh_FGMsmRate_high = ps.getUntrackedParameter<double>("thresh_FGMsmRate", 0.2);
23  _thresh_FGMsmRate_low = ps.getUntrackedParameter<double>("thresh_FGMsmRate_low", 0.05);
24  _thresh_DataMsn = ps.getUntrackedParameter<double>("thresh_DataMsn", 0.1);
25  _thresh_EmulMsn = ps.getUntrackedParameter<double>("thresh_EmulMsn");
26  std::vector<int> tmp = ps.getUntrackedParameter<std::vector<int> >("vFGBitsReady");
27  for (uint32_t iii = 0; iii < constants::NUM_FGBITS; iii++)
28  _vFGBitsReady.push_back(tmp[iii]);
29 
30  _vflags.resize(nTPFlag);
31  _vflags[fEtMsm] = flag::Flag("EtMsm");
32  _vflags[fDataMsn] = flag::Flag("DataMsn");
33  _vflags[fEmulMsn] = flag::Flag("EmulMsn");
34  _vflags[fUnknownIds] = flag::Flag("UnknownIds");
35  if (_ptype == fOnline) {
36  _vflags[fSentRecL1Msm] = flag::Flag("uHTR-L1TMsm");
37  }
38 }
bool _skip1x1
Definition: TPTask.h:51
edm::InputTag _tagData
Definition: TPTask.h:36
double _thresh_FGMsmRate_high
Definition: TPTask.h:53
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:8
edm::InputTag _tagDataL1Rec
Definition: TPTask.h:37
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokData
Definition: TPTask.h:40
int _cutEt
Definition: TPTask.h:52
double _thresh_FGMsmRate_low
Definition: TPTask.h:53
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmulNoTDCCut
Definition: TPTask.h:43
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokDataL1Rec
Definition: TPTask.h:41
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: TPTask.h:44
double _thresh_EtMsmRate_low
Definition: TPTask.h:53
double _thresh_EmulMsn
Definition: TPTask.h:53
ProcessingType _ptype
Definition: DQModule.h:44
edm::InputTag _tagEmulNoTDCCut
Definition: TPTask.h:39
std::vector< hcaldqm::flag::Flag > _vflags
Definition: TPTask.h:47
double _thresh_EtMsmRate_high
Definition: TPTask.h:53
double _thresh_DataMsn
Definition: TPTask.h:53
std::vector< bool > _vFGBitsReady
Definition: TPTask.h:55
int const NUM_FGBITS
Definition: Constants.h:210
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmul
Definition: TPTask.h:42
edm::InputTag _tagEmul
Definition: TPTask.h:38
tmp
align.sh
Definition: createJobs.py:716
TPTask::~TPTask ( )
inlineoverride

Definition at line 25 of file TPTask.h.

25 {}

Member Function Documentation

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

Implements hcaldqm::DQTask.

Definition at line 673 of file TPTask.cc.

References _cEtCorr2x3_TTSubdet, _cEtCorr_TTSubdet, _cEtCorrRatio_depthlike, _cEtCorrRatio_ElectronicsuTCA, _cEtCorrRatiovsBX_TTSubdet, _cEtCorrRatiovsLS_TTSubdet, _cEtCutData_depthlike, _cEtCutDatavsBX_TTSubdet, _cEtCutDatavsLS_TTSubdet, _cEtCutEmul_depthlike, _cEtCutEmulvsBX_TTSubdet, _cEtCutEmulvsLS_TTSubdet, _cEtData_depthlike, _cEtData_ElectronicsuTCA, _cEtData_TTSubdet, _cEtEmul_depthlike, _cEtEmul_ElectronicsuTCA, _cEtEmul_TTSubdet, _cEtMsm_depthlike, _cEtMsm_ElectronicsuTCA, _cEtMsm_uHTR_L1T_depthlike, _cEtMsm_uHTR_L1T_LS, _cEtMsmRatiovsBX_TTSubdet, _cEtMsmRatiovsLS_TTSubdet, _cEtMsmvsBX_TTSubdet, _cEtMsmvsLS_TTSubdet, _cFGCorr_TTSubdet, _cFGMsm_depthlike, _cFGMsm_ElectronicsuTCA, _cMsnCutDatavsBX_TTSubdet, _cMsnCutDatavsLS_TTSubdet, _cMsnCutEmulvsBX_TTSubdet, _cMsnCutEmulvsLS_TTSubdet, _cMsnData_depthlike, _cMsnData_ElectronicsuTCA, _cMsnDatavsBX_TTSubdet, _cMsnDatavsLS_TTSubdet, _cMsnEmul_depthlike, _cMsnEmul_ElectronicsuTCA, _cMsnEmulvsBX_TTSubdet, _cMsnEmulvsLS_TTSubdet, _cOccupancy_HF_depth, _cOccupancy_HF_ieta, _cOccupancyCutData_depthlike, _cOccupancyCutData_ElectronicsuTCA, _cOccupancyCutDatavsBX_TTSubdet, _cOccupancyCutDatavsLS_TTSubdet, _cOccupancyCutEmul_depthlike, _cOccupancyCutEmul_ElectronicsuTCA, _cOccupancyCutEmulvsBX_TTSubdet, _cOccupancyCutEmulvsLS_TTSubdet, _cOccupancyData2x3_depthlike, _cOccupancyData_depthlike, _cOccupancyData_ElectronicsuTCA, _cOccupancyDatavsBX_TTSubdet, _cOccupancyDatavsLS_TTSubdet, _cOccupancyEmul2x3_depthlike, _cOccupancyEmul_depthlike, _cOccupancyEmul_ElectronicsuTCA, _cOccupancyEmulvsBX_TTSubdet, _cOccupancyEmulvsLS_TTSubdet, _cOccupancyNoTDC_HF_depth, _cOccupancyNoTDC_HF_ieta, _cSOIEtCorr_TTSubdet, _cSOIEtCorrEmulL1_TTSubdet, hcaldqm::DQModule::_currentLS, _cutEt, _ehashmap, hcaldqm::DQModule::_logger, hcaldqm::DQModule::_ptype, _tagData, _tagDataL1Rec, _tagEmul, _tagEmulNoTDCCut, _tokData, _tokDataL1Rec, _tokEmul, _tokEmulNoTDCCut, _unknownIdsPresent, _vEmulTPDigis_SentRec, _vFGBitsReady, _vTPDigis_SentRec, _xDataMsn, _xDataTotal, _xEmulMsn, _xEmulTotal, _xEtMsm, _xFGMsm, _xNumCorr, _xSentRecL1Msm, funct::abs(), edm::EventBase::bunchCrossing(), makePileupJSON::bx, Logger::dqmthrow(), runTauDisplay::eid, hcaldqm::ContainerSingleProf2D::fill(), hcaldqm::ContainerSingle1D::fill(), hcaldqm::Container2D::fill(), hcaldqm::ContainerSingle2D::fill(), hcaldqm::ContainerProf2D::fill(), hcaldqm::Container1D::fill(), PVValHelper::fill(), dqm::impl::MonitorElement::Fill(), hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::ContainerXXX< STDTYPE >::get(), edm::Event::getByToken(), edm::Event::getLuminosityBlock(), HcalTrigTowerDetId::ietaAbs(), edm::LuminosityBlock::index(), edm::InputTag::instance(), HcalElectronicsId::isVMEid(), edm::InputTag::label(), hcaldqm::electronicsmap::ElectronicsMap::lookup(), SiStripPI::max, meUnknownIds1LS, min(), hcaldqm::constants::NUM_FGBITS, DetId::rawId(), findQualityFiles::size, HcalTrigTowerDetId::version(), and ComparisonHelper::zip().

673  {
678  if (!e.getByToken(_tokData, cdata))
679  _logger.dqmthrow("Collection HcalTrigPrimDigiCollection isn't available: " + _tagData.label() + " " +
680  _tagData.instance());
681  if (_ptype == fOnline) {
682  if (!e.getByToken(_tokDataL1Rec, cdataL1Rec))
683  _logger.dqmthrow("Collection HcalTrigPrimDigiCollection isn't available: " + _tagDataL1Rec.label() + " " +
685  }
686  if (!e.getByToken(_tokEmul, cemul))
687  _logger.dqmthrow("Collection HcalTrigPrimDigiCollection isn't available: " + _tagEmul.label() + " " +
688  _tagEmul.instance());
689  if (_ptype == fOnline) {
690  if (!e.getByToken(_tokEmulNoTDCCut, cemul_noTDCCut)) {
691  _logger.dqmthrow("Collection HcalTrigPrimDigiCollection isn't available: " + _tagEmulNoTDCCut.label() + " " +
693  }
694  }
695 
696  // extract some info per event
697  int bx = e.bunchCrossing();
698 
699  auto lumiCache = luminosityBlockCache(e.getLuminosityBlock().index());
700  _currentLS = lumiCache->currentLS;
701 
702  // some summaries... per event
703  int numHBHE(0), numHF(0), numCutHBHE(0), numCutHF(0);
704  int numCorrHBHE(0), numCorrHF(0);
705  int numMsmHBHE(0), numMsmHF(0);
706  int numMsnHBHE(0), numMsnHF(0), numMsnCutHBHE(0), numMsnCutHF(0);
707 
708  // for explanation see RecHit or Digi Tasks
709  uint32_t rawidHBHEValid = 0;
710  uint32_t rawidHFValid = 0;
711 
712  /*
713  * STEP1:
714  * Loop over the data digis and
715  * - do ... for all the data digis
716  * - find the emulator digi
717  * --- compare soi Et
718  * --- compare soi FG
719  * --- Do not fill anything for emulator Et!!!
720  */
721  for (HcalTrigPrimDigiCollection::const_iterator it = cdata->begin(); it != cdata->end(); ++it) {
722  // Explicit check on the DetIds present in the Collection
723  HcalTrigTowerDetId tid = it->id();
724  uint32_t rawid = _ehashmap.lookup(tid);
725  if (rawid == 0) {
726  meUnknownIds1LS->Fill(1);
727  _unknownIdsPresent = true;
728  continue;
729  }
730  HcalElectronicsId const& eid(rawid);
731  if (tid.ietaAbs() >= 29)
732  rawidHFValid = tid.rawId();
733  else
734  rawidHBHEValid = tid.rawId();
735 
736  //
737  // HF 2x3 TPs Treat theam separately and only for ONLINE!
738  //
739  if (tid.version() == 0 && tid.ietaAbs() >= 29) {
740  // do this only for online processing
741  if (_ptype == fOnline) {
743  HcalTrigPrimDigiCollection::const_iterator jt = cemul->find(tid);
744  if (jt != cemul->end())
745  _cEtCorr2x3_TTSubdet.fill(tid, it->SOI_compressedEt(), jt->SOI_compressedEt());
746  }
747 
748  // skip to the next tp digi
749  continue;
750  }
751 
752  // FROM THIS POINT, HBHE + 1x1 HF TPs
753  int soiEt_d = it->t0().compressedEt();
754  int soiFG_d[constants::NUM_FGBITS];
755  for (uint32_t ibit = 0; ibit < constants::NUM_FGBITS; ibit++)
756  soiFG_d[ibit] = it->t0().fineGrain(ibit) ? 1 : 0;
757  tid.ietaAbs() >= 29 ? numHF++ : numHBHE++;
758 
759  // fill w/o a cut
760  _cEtData_TTSubdet.fill(tid, soiEt_d);
761  _cEtData_depthlike.fill(tid, soiEt_d);
763 
764  if (_ptype == fOnline) {
765  if (tid.ietaAbs() >= 29) {
766  if (soiEt_d > 0) {
769  }
770  }
771  }
772  if (_ptype != fOffline) { // hidefed2crate
773  if (!eid.isVMEid()) {
776  }
777  }
778 
779  // FILL w/a CUT
780  if (soiEt_d > _cutEt) {
781  tid.ietaAbs() >= 29 ? numCutHF++ : numCutHBHE++;
783  _cEtCutData_depthlike.fill(tid, soiEt_d);
784 
785  // ONLINE ONLY!
786  if (_ptype == fOnline) {
787  _cEtCutDatavsLS_TTSubdet.fill(tid, _currentLS, soiEt_d);
788  _cEtCutDatavsBX_TTSubdet.fill(tid, bx, log2(soiEt_d + 1.));
789  _xDataTotal.get(eid)++;
790  }
791  // ^^^ONLINE ONLY!
792  if (_ptype != fOffline) { // hidefed2crate
793  if (!eid.isVMEid())
795  }
796  }
797 
798  // FIND the EMULATOR DIGI
799  HcalTrigPrimDigiCollection::const_iterator jt = cemul->find(tid);
800  if (jt != cemul->end()) {
801  // if PRESENT!
802  int soiEt_e = jt->SOI_compressedEt();
803  int soiFG_e[constants::NUM_FGBITS];
804  for (uint32_t ibit = 0; ibit < constants::NUM_FGBITS; ibit++)
805  soiFG_e[ibit] = jt->t0().fineGrain(ibit) ? 1 : 0;
806  // if both are zeroes => set 1
807  double rEt =
808  soiEt_d == 0 && soiEt_e == 0 ? 1 : double(std::min(soiEt_d, soiEt_e)) / double(std::max(soiEt_e, soiEt_d));
809 
810  // ONLINE ONLY!
811  if (_ptype == fOnline) {
812  _xNumCorr.get(eid)++;
813  tid.ietaAbs() >= 29 ? numCorrHF++ : numCorrHBHE++;
814  _cEtCorrRatiovsLS_TTSubdet.fill(tid, _currentLS, rEt);
815  _cEtCorrRatiovsBX_TTSubdet.fill(tid, bx, rEt);
816  }
817  // ^^^ONLINE ONLY!
818 
819  _cEtCorrRatio_depthlike.fill(tid, rEt);
820  _cSOIEtCorr_TTSubdet.fill(tid, eid, soiEt_d, soiEt_e);
821  for (int ci = 0; ci < 4; ci++) {
822  for (int cj = 0; cj < 4; cj++) {
823  if (ci < it->size() && cj < jt->size()) {
824  if ((ci == cj) || (it->sample(ci).compressedEt() > 0 && jt->sample(cj).compressedEt() > 0)) {
826  tid, eid, 256 * ci + it->sample(ci).compressedEt(), 256 * cj + jt->sample(cj).compressedEt());
827  }
828  }
829  }
830  }
831  for (uint32_t ibit = 0; ibit < constants::NUM_FGBITS; ibit++)
832  _cFGCorr_TTSubdet[ibit].fill(tid, soiFG_d[ibit], soiFG_e[ibit]);
833  // FILL w/o a CUT
834  if (_ptype != fOffline) { // hidefed2crate
835  if (!eid.isVMEid())
837  }
838 
839  // if SOI Et are not equal
840  // fill mismatched
841  if (soiEt_d != soiEt_e) {
842  tid.ietaAbs() >= 29 ? numMsmHF++ : numMsmHBHE++;
843  _cEtMsm_depthlike.fill(tid);
844  if (_ptype != fOffline) { // hidefed2crate
845  if (!eid.isVMEid())
847  }
848  if (_ptype == fOnline)
849  _xEtMsm.get(eid)++;
850  }
851  // if SOI FG are not equal
852  // fill mismatched.
853  // Do this comparison only for FG Bits that are commissioned
854  for (uint32_t ibit = 0; ibit < constants::NUM_FGBITS; ibit++)
855  if (soiFG_d[ibit] != soiFG_e[ibit] && _vFGBitsReady[ibit]) {
856  _cFGMsm_depthlike.fill(tid);
857  if (_ptype != fOffline) { // hidefed2crate
858  if (!eid.isVMEid())
860  }
861  if (_ptype == fOnline)
862  _xFGMsm.get(eid)++;
863  }
864  } else {
865  // IF MISSING
866  _cEtCorr_TTSubdet.fill(tid, eid, soiEt_d, -1);
867  _cSOIEtCorr_TTSubdet.fill(tid, eid, soiEt_d, -1);
869  tid.ietaAbs() >= 29 ? numMsnHF++ : numMsnHBHE++;
870  if (_ptype != fOffline) { // hidefed2crate
871  if (!eid.isVMEid())
873  }
874 
875  if (soiEt_d > _cutEt) {
876  tid.ietaAbs() >= 29 ? numMsnCutHF++ : numMsnCutHBHE++;
877  if (_ptype == fOnline)
878  _xEmulMsn.get(eid)++;
879  }
880  }
881  }
882 
883  if (_ptype == fOnline) {
884  for (HcalTrigPrimDigiCollection::const_iterator it = cemul_noTDCCut->begin(); it != cemul_noTDCCut->end(); ++it) {
885  // Explicit check on the DetIds present in the Collection
886  HcalTrigTowerDetId tid = it->id();
887  uint32_t rawid = _ehashmap.lookup(tid);
888  if (rawid == 0) {
889  continue;
890  }
891  if (tid.version() == 0 && tid.ietaAbs() >= 29) {
892  continue;
893  }
894  int soiEt_e = it->SOI_compressedEt();
895  if (tid.ietaAbs() >= 29) {
896  if (soiEt_e > 0) {
899  }
900  }
901  }
902  }
903 
904  if (rawidHFValid != 0 && rawidHBHEValid != 0) {
905  // ONLINE ONLY!
906  if (_ptype == fOnline) {
907  _cOccupancyDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numHBHE);
908  _cOccupancyDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numHF);
909  _cOccupancyCutDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numCutHBHE);
910  _cOccupancyCutDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numCutHF);
911  _cOccupancyDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numHBHE);
912  _cOccupancyDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numHF);
913  _cOccupancyCutDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numCutHBHE);
914  _cOccupancyCutDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numCutHF);
915 
916  _cEtMsmvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numMsmHBHE);
917  _cEtMsmvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numMsmHF);
918  _cEtMsmvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numMsmHBHE);
919  _cEtMsmvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numMsmHF);
920 
922  HcalTrigTowerDetId(rawidHBHEValid), _currentLS, double(numMsmHBHE) / double(numCorrHBHE));
924  HcalTrigTowerDetId(rawidHFValid), _currentLS, double(numMsmHF) / double(numCorrHF));
925  _cEtMsmRatiovsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, double(numMsmHBHE) / double(numCorrHBHE));
926  _cEtMsmRatiovsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, double(numMsmHF) / double(numCorrHF));
927 
928  _cMsnEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numMsnHBHE);
929  _cMsnEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numMsnHF);
930  _cMsnCutEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numMsnCutHBHE);
931  _cMsnCutEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numMsnCutHF);
932 
933  _cMsnEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numMsnHBHE);
934  _cMsnEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numMsnHF);
935  _cMsnCutEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numMsnCutHBHE);
936  _cMsnCutEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numMsnCutHF);
937  }
938  }
939 
940  numHBHE = 0;
941  numHF = 0;
942  numCutHBHE = 0;
943  numCutHF = 0;
944  numMsnHBHE = 0;
945  numMsnHF = 0;
946  numCutHBHE = 0;
947  numCutHF = 0;
948 
949  // reset
950  rawidHBHEValid = 0;
951  rawidHFValid = 0;
952 
953  /*
954  * STEP2:
955  * Loop over the emulator digis and
956  * - do ... for all the emulator digis
957  * - find data digi and
958  * --- if found skip
959  * --- if not found - fill the missing Data plot
960  */
961  for (HcalTrigPrimDigiCollection::const_iterator it = cemul->begin(); it != cemul->end(); ++it) {
962  // Explicit check on the DetIds present in the Collection
963  HcalTrigTowerDetId tid = it->id();
964  uint32_t rawid = _ehashmap.lookup(tid);
965  if (rawid == 0) {
966  meUnknownIds1LS->Fill(1);
967  _unknownIdsPresent = true;
968  continue;
969  }
970  HcalElectronicsId const& eid(rawid);
971  if (tid.ietaAbs() >= 29)
972  rawidHFValid = tid.rawId();
973  else
974  rawidHBHEValid = tid.rawId();
975 
976  // HF 2x3 TPs. Only do it for Online!!!
977  if (tid.version() == 0 && tid.ietaAbs() >= 29) {
978  // only do this for online processing
979  if (_ptype == fOnline)
981  continue;
982  }
983  int soiEt = it->SOI_compressedEt();
984 
985  // FILL/INCREMENT w/o a CUT
986  tid.ietaAbs() >= 29 ? numHF++ : numHBHE++;
987  _cEtEmul_TTSubdet.fill(tid, soiEt);
988  _cEtEmul_depthlike.fill(tid, soiEt);
990  if (_ptype != fOffline) { // hidefed2crate
991  if (!eid.isVMEid()) {
994  }
995  }
996 
997  // FILL w/ a CUT
998  if (soiEt > _cutEt) {
999  tid.ietaAbs() >= 29 ? numCutHF++ : numCutHBHE++;
1001  _cEtCutEmul_depthlike.fill(tid, soiEt);
1002  if (_ptype != fOffline) { // hidefed2crate
1003  if (!eid.isVMEid())
1005  }
1006 
1007  // ONLINE ONLY!
1008  if (_ptype == fOnline) {
1009  _cEtCutEmulvsLS_TTSubdet.fill(tid, _currentLS, soiEt);
1010  _cEtCutEmulvsBX_TTSubdet.fill(tid, bx, soiEt);
1011  _xEmulTotal.get(eid)++;
1012  }
1013  // ^^^ONLINE ONLY!
1014  }
1015 
1016  // Look for a data digi.
1017  // Do not perform if the emulated digi is zero suppressed.
1018  if (!(it->zsMarkAndPass())) {
1019  HcalTrigPrimDigiCollection::const_iterator jt = cdata->find(tid);
1020  if (jt == cdata->end()) {
1021  tid.ietaAbs() >= 29 ? numMsnHF++ : numMsnHBHE++;
1022  _cEtCorr_TTSubdet.fill(tid, eid, -1, soiEt);
1023  _cSOIEtCorr_TTSubdet.fill(tid, eid, -1, soiEt);
1025  if (_ptype != fOffline) { // hidefed2crate
1026  if (!eid.isVMEid())
1028  }
1029  if (soiEt > _cutEt) {
1030  tid.ietaAbs() >= 29 ? numMsnCutHF++ : numMsnCutHBHE++;
1031  if (_ptype == fOnline)
1032  _xDataMsn.get(eid)++;
1033  }
1034  }
1035  }
1036  }
1037 
1038  // ONLINE ONLY!
1039  if (_ptype == fOnline) {
1040  if (rawidHBHEValid != 0) {
1041  _cOccupancyEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numHBHE);
1042  _cOccupancyCutEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numCutHBHE);
1043  _cOccupancyEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numHBHE);
1044  _cOccupancyCutEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numCutHBHE);
1045  _cMsnDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numMsnHBHE);
1046  _cMsnCutDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), _currentLS, numMsnCutHBHE);
1047  _cMsnDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numMsnHBHE);
1048  _cMsnCutDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHBHEValid), bx, numMsnCutHBHE);
1049  }
1050  if (rawidHFValid != 0) {
1051  _cOccupancyEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numHF);
1052  _cOccupancyCutEmulvsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numCutHF);
1053  _cOccupancyEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numHF);
1054  _cOccupancyCutEmulvsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numCutHF);
1055  _cMsnDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numMsnHF);
1056  _cMsnCutDatavsLS_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), _currentLS, numMsnCutHF);
1057  _cMsnDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numMsnHF);
1058  _cMsnCutDatavsBX_TTSubdet.fill(HcalTrigTowerDetId(rawidHFValid), bx, numMsnCutHF);
1059  }
1060  // ^^^ONLINE ONLY!
1061  }
1062 
1063  if (_ptype == fOnline) {
1064  // Compare the sent ("uHTR") and received (L1T "layer1") TPs
1065  // This algorithm is copied from DQM/L1TMonitor/src/L1TStage2CaloLayer1.cc
1066  // ...but it turns out to be extremely useful for detecting uHTR problems
1067 
1068  _vEmulTPDigis_SentRec.clear();
1069  ComparisonHelper::zip(cemul->begin(),
1070  cemul->end(),
1071  cdataL1Rec->begin(),
1072  cdataL1Rec->end(),
1073  std::inserter(_vEmulTPDigis_SentRec, _vEmulTPDigis_SentRec.begin()),
1075 
1076  // comparison between emulation TP and L1 TP
1077  for (const auto& tpPair : _vEmulTPDigis_SentRec) {
1078  const auto& sentTp = tpPair.first;
1079  const auto& recdTp = tpPair.second;
1080  const int ieta = sentTp.id().ieta();
1081  if (abs(ieta) > 28 && sentTp.id().version() != 1)
1082  continue;
1083 
1084  const bool towerMasked = recdTp.sample(0).raw() & (1 << 13);
1085  const bool linkError = recdTp.sample(0).raw() & (1 << 15);
1086  if (towerMasked || linkError)
1087  continue;
1088 
1089  HcalTrigTowerDetId tid = sentTp.id();
1090  uint32_t rawid = _ehashmap.lookup(tid);
1091  if (rawid == 0) {
1092  continue;
1093  }
1094  HcalElectronicsId const& eid(rawid);
1095 
1096  _cSOIEtCorrEmulL1_TTSubdet.fill(tid, eid, recdTp.SOI_compressedEt(), sentTp.SOI_compressedEt());
1097  }
1098 
1099  // comparison between sent data TP and L1 TP
1100  _vTPDigis_SentRec.clear();
1101  ComparisonHelper::zip(cdata->begin(),
1102  cdata->end(),
1103  cdataL1Rec->begin(),
1104  cdataL1Rec->end(),
1105  std::inserter(_vTPDigis_SentRec, _vTPDigis_SentRec.begin()),
1107 
1108  for (const auto& tpPair : _vTPDigis_SentRec) {
1109  // From here, literal copy pasta from L1T
1110  const auto& sentTp = tpPair.first;
1111  const auto& recdTp = tpPair.second;
1112  const int ieta = sentTp.id().ieta();
1113  if (abs(ieta) > 28 && sentTp.id().version() != 1)
1114  continue;
1115  //const int iphi = sentTp.id().iphi();
1116  const bool towerMasked = recdTp.sample(0).raw() & (1 << 13);
1117  //const bool linkMasked = recdTp.sample(0).raw() & (1<<14);
1118  const bool linkError = recdTp.sample(0).raw() & (1 << 15);
1119 
1120  if (towerMasked || linkError) {
1121  // Do not compare if known to be bad
1122  continue;
1123  }
1124 
1125  HcalTrigTowerDetId tid = sentTp.id();
1126  uint32_t rawid = _ehashmap.lookup(tid);
1127  if (rawid == 0) {
1128  continue;
1129  }
1130  HcalElectronicsId const& eid(rawid);
1131 
1132  const bool HetAgreement = sentTp.SOI_compressedEt() == recdTp.SOI_compressedEt();
1133  const bool Hfb1Agreement = sentTp.SOI_fineGrain() == recdTp.SOI_fineGrain();
1134  // Ignore minBias (FB2) bit if we receieve 0 ET, which means it is likely zero-suppressed on HCal readout side
1135  const bool Hfb2Agreement =
1136  (abs(ieta) < 29) ? true
1137  : (recdTp.SOI_compressedEt() == 0 || (sentTp.SOI_fineGrain(1) == recdTp.SOI_fineGrain(1)));
1138  if (!(HetAgreement && Hfb1Agreement && Hfb2Agreement)) {
1140  _cEtMsm_uHTR_L1T_LS.fill(_currentLS);
1141  _xSentRecL1Msm.get(eid)++;
1142  }
1143  }
1144  }
1145 }
hcaldqm::ContainerProf1D _cEtCorrRatiovsBX_TTSubdet
Definition: TPTask.h:94
hcaldqm::ContainerXXX< uint32_t > _xDataTotal
Definition: TPTask.h:159
hcaldqm::ContainerProf1D _cMsnCutEmulvsBX_TTSubdet
Definition: TPTask.h:141
hcaldqm::Container1D _cEtEmul_TTSubdet
Definition: TPTask.h:70
hcaldqm::ContainerSingleProf2D _cEtData_depthlike
Definition: TPTask.h:85
edm::InputTag _tagData
Definition: TPTask.h:36
hcaldqm::ContainerProf1D _cMsnDatavsBX_TTSubdet
Definition: TPTask.h:132
hcaldqm::ContainerSingle2D _cOccupancyCutEmul_depthlike
Definition: TPTask.h:107
hcaldqm::ContainerProf1D _cMsnDatavsLS_TTSubdet
Definition: TPTask.h:130
edm::InputTag _tagDataL1Rec
Definition: TPTask.h:37
void fill(HcalDetId const &) override
hcaldqm::ContainerProf1D _cEtMsmvsLS_TTSubdet
Definition: TPTask.h:118
hcaldqm::ContainerProf1D _cEtCutEmulvsLS_TTSubdet
Definition: TPTask.h:77
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: TPTask.h:61
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokData
Definition: TPTask.h:40
std::vector< std::pair< HcalTriggerPrimitiveDigi, HcalTriggerPrimitiveDigi > > _vTPDigis_SentRec
Definition: TPTask.h:168
MonitorElement * meUnknownIds1LS
Definition: TPTask.h:154
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
std::vector< T >::const_iterator const_iterator
hcaldqm::ContainerSingleProf2D _cEtCorrRatio_depthlike
Definition: TPTask.h:92
hcaldqm::ContainerProf1D _cMsnCutDatavsBX_TTSubdet
Definition: TPTask.h:133
int _cutEt
Definition: TPTask.h:52
hcaldqm::Container2D _cSOIEtCorrEmulL1_TTSubdet
Definition: TPTask.h:73
hcaldqm::ContainerProf1D _cMsnCutDatavsLS_TTSubdet
Definition: TPTask.h:131
hcaldqm::ContainerSingle2D _cOccupancyCutData_depthlike
Definition: TPTask.h:106
hcaldqm::ContainerProf1D _cOccupancyDatavsLS_TTSubdet
Definition: TPTask.h:148
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmulNoTDCCut
Definition: TPTask.h:43
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokDataL1Rec
Definition: TPTask.h:41
hcaldqm::ContainerProf1D _cEtMsmRatiovsLS_TTSubdet
Definition: TPTask.h:119
hcaldqm::ContainerSingle2D _cOccupancyEmul2x3_depthlike
Definition: TPTask.h:111
hcaldqm::ContainerProf1D _cMsnEmulvsBX_TTSubdet
Definition: TPTask.h:140
hcaldqm::ContainerProf2D _cEtCorrRatio_ElectronicsuTCA
Definition: TPTask.h:91
void Fill(long long x)
hcaldqm::Container2D _cFGCorr_TTSubdet[hcaldqm::constants::NUM_FGBITS]
Definition: TPTask.h:75
hcaldqm::ContainerXXX< uint32_t > _xDataMsn
Definition: TPTask.h:159
ProcessingType _ptype
Definition: DQModule.h:44
virtual void fill(uint32_t)
Definition: Container1D.cc:73
edm::InputTag _tagEmulNoTDCCut
Definition: TPTask.h:39
hcaldqm::ContainerSingle1D _cEtMsm_uHTR_L1T_LS
Definition: TPTask.h:125
hcaldqm::ContainerXXX< uint32_t > _xEmulMsn
Definition: TPTask.h:159
void dqmthrow(std::string const &msg) const
Definition: Logger.h:12
hcaldqm::ContainerProf1D _cEtMsmvsBX_TTSubdet
Definition: TPTask.h:120
OutputIterator zip(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2, OutputIterator result, Compare comp)
hcaldqm::ContainerProf1D _cOccupancyDatavsBX_TTSubdet
Definition: TPTask.h:144
hcaldqm::ContainerProf2D _cEtEmul_ElectronicsuTCA
Definition: TPTask.h:82
hcaldqm::ContainerProf1D _cEtCorrRatiovsLS_TTSubdet
Definition: TPTask.h:93
hcaldqm::ContainerSingle2D _cOccupancyData2x3_depthlike
Definition: TPTask.h:110
hcaldqm::ContainerSingle2D _cFGMsm_depthlike
Definition: TPTask.h:117
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
hcaldqm::ContainerXXX< uint32_t > _xEtMsm
Definition: TPTask.h:159
hcaldqm::Container2D _cEtMsm_ElectronicsuTCA
Definition: TPTask.h:114
hcaldqm::Container2D _cOccupancyCutEmul_ElectronicsuTCA
Definition: TPTask.h:101
Logger _logger
Definition: DQModule.h:55
T min(T a, T b)
Definition: MathUtil.h:58
hcaldqm::ContainerSingle2D _cOccupancy_HF_depth
Definition: TPTask.h:163
hcaldqm::Container2D _cEtCutDatavsBX_TTSubdet
Definition: TPTask.h:78
hcaldqm::ContainerProf1D _cOccupancyCutDatavsLS_TTSubdet
Definition: TPTask.h:150
hcaldqm::Container2D _cOccupancyCutData_ElectronicsuTCA
Definition: TPTask.h:100
hcaldqm::ContainerSingle2D _cOccupancyData_depthlike
Definition: TPTask.h:104
hcaldqm::ContainerSingle2D _cEtMsm_depthlike
Definition: TPTask.h:116
hcaldqm::Container2D _cSOIEtCorr_TTSubdet
Definition: TPTask.h:72
hcaldqm::ContainerProf1D _cEtCutDatavsLS_TTSubdet
Definition: TPTask.h:76
hcaldqm::Container2D _cMsnData_ElectronicsuTCA
Definition: TPTask.h:128
hcaldqm::Container2D _cMsnEmul_ElectronicsuTCA
Definition: TPTask.h:136
hcaldqm::ContainerProf1D _cOccupancyEmulvsBX_TTSubdet
Definition: TPTask.h:145
hcaldqm::ContainerXXX< uint32_t > _xEmulTotal
Definition: TPTask.h:159
hcaldqm::ContainerXXX< uint32_t > _xSentRecL1Msm
Definition: TPTask.h:159
void fill(std::map< std::string, TH1 * > &h, const std::string &s, double x)
hcaldqm::Container2D _cFGMsm_ElectronicsuTCA
Definition: TPTask.h:115
int version() const
get the version code for the trigger tower
hcaldqm::ContainerSingle2D _cEtMsm_uHTR_L1T_depthlike
Definition: TPTask.h:124
std::vector< bool > _vFGBitsReady
Definition: TPTask.h:55
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsBX_TTSubdet
Definition: TPTask.h:147
hcaldqm::ContainerXXX< uint32_t > _xFGMsm
Definition: TPTask.h:159
hcaldqm::Container2D _cOccupancyEmul_ElectronicsuTCA
Definition: TPTask.h:98
std::string const & label() const
Definition: InputTag.h:36
hcaldqm::ContainerProf1D _cOccupancyCutDatavsBX_TTSubdet
Definition: TPTask.h:146
hcaldqm::ContainerSingle1D _cOccupancyNoTDC_HF_ieta
Definition: TPTask.h:164
hcaldqm::ContainerSingle2D _cOccupancyEmul_depthlike
Definition: TPTask.h:105
hcaldqm::Container2D _cOccupancyData_ElectronicsuTCA
Definition: TPTask.h:97
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
int const NUM_FGBITS
Definition: Constants.h:210
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmul
Definition: TPTask.h:42
hcaldqm::ContainerProf1D _cEtCutEmulvsBX_TTSubdet
Definition: TPTask.h:79
hcaldqm::Container2D _cEtCorr2x3_TTSubdet
Definition: TPTask.h:74
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
hcaldqm::Container2D _cEtCorr_TTSubdet
Definition: TPTask.h:71
hcaldqm::ContainerSingle2D _cOccupancyNoTDC_HF_depth
Definition: TPTask.h:163
hcaldqm::ContainerSingleProf2D _cEtEmul_depthlike
Definition: TPTask.h:86
hcaldqm::ContainerXXX< uint32_t > _xNumCorr
Definition: TPTask.h:159
bool _unknownIdsPresent
Definition: TPTask.h:155
hcaldqm::ContainerProf1D _cOccupancyEmulvsLS_TTSubdet
Definition: TPTask.h:149
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsLS_TTSubdet
Definition: TPTask.h:151
virtual void fill(int, int)
hcaldqm::ContainerProf1D _cEtMsmRatiovsBX_TTSubdet
Definition: TPTask.h:121
edm::InputTag _tagEmul
Definition: TPTask.h:38
hcaldqm::ContainerSingleProf2D _cEtCutEmul_depthlike
Definition: TPTask.h:88
hcaldqm::ContainerProf2D _cEtData_ElectronicsuTCA
Definition: TPTask.h:81
hcaldqm::ContainerProf1D _cMsnEmulvsLS_TTSubdet
Definition: TPTask.h:138
hcaldqm::ContainerSingle1D _cOccupancy_HF_ieta
Definition: TPTask.h:164
Readout chain identification for Hcal.
std::string const & instance() const
Definition: InputTag.h:37
tuple size
Write out results.
hcaldqm::ContainerSingle2D _cMsnData_depthlike
Definition: TPTask.h:129
int ietaAbs() const
get the absolute value of the tower ieta
hcaldqm::ContainerSingleProf2D _cEtCutData_depthlike
Definition: TPTask.h:87
hcaldqm::Container1D _cEtData_TTSubdet
Definition: TPTask.h:69
hcaldqm::ContainerSingle2D _cMsnEmul_depthlike
Definition: TPTask.h:137
std::vector< std::pair< HcalTriggerPrimitiveDigi, HcalTriggerPrimitiveDigi > > _vEmulTPDigis_SentRec
Definition: TPTask.h:167
hcaldqm::ContainerProf1D _cMsnCutEmulvsLS_TTSubdet
Definition: TPTask.h:139
void TPTask::_resetMonitors ( hcaldqm::UpdateFreq  uf)
overrideprotectedvirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 662 of file TPTask.cc.

References _unknownIdsPresent, and hcaldqm::f1LS.

662  {
663  DQTask::_resetMonitors(uf);
664  switch (uf) {
665  case hcaldqm::f1LS:
666  _unknownIdsPresent = false;
667  break;
668  default:
669  break;
670  }
671 }
bool _unknownIdsPresent
Definition: TPTask.h:155
void TPTask::bookHistograms ( DQMStore::IBooker ib,
edm::Run const &  r,
edm::EventSetup const &  es 
)
overridevirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 40 of file TPTask.cc.

References _cEtCorr2x3_TTSubdet, _cEtCorr_TTSubdet, _cEtCorrRatio_depthlike, _cEtCorrRatio_ElectronicsuTCA, _cEtCorrRatiovsBX_TTSubdet, _cEtCorrRatiovsLS_TTSubdet, _cEtCutData_depthlike, _cEtCutDatavsBX_TTSubdet, _cEtCutDatavsLS_TTSubdet, _cEtCutEmul_depthlike, _cEtCutEmulvsBX_TTSubdet, _cEtCutEmulvsLS_TTSubdet, _cEtData_depthlike, _cEtData_ElectronicsuTCA, _cEtData_TTSubdet, _cEtEmul_depthlike, _cEtEmul_ElectronicsuTCA, _cEtEmul_TTSubdet, _cEtMsm_depthlike, _cEtMsm_ElectronicsuTCA, _cEtMsm_uHTR_L1T_depthlike, _cEtMsm_uHTR_L1T_LS, _cEtMsmRatiovsBX_TTSubdet, _cEtMsmRatiovsLS_TTSubdet, _cEtMsmvsBX_TTSubdet, _cEtMsmvsLS_TTSubdet, _cFGCorr_TTSubdet, _cFGMsm_depthlike, _cFGMsm_ElectronicsuTCA, _cMsnCutDatavsBX_TTSubdet, _cMsnCutDatavsLS_TTSubdet, _cMsnCutEmulvsBX_TTSubdet, _cMsnCutEmulvsLS_TTSubdet, _cMsnData_depthlike, _cMsnData_ElectronicsuTCA, _cMsnDatavsBX_TTSubdet, _cMsnDatavsLS_TTSubdet, _cMsnEmul_depthlike, _cMsnEmul_ElectronicsuTCA, _cMsnEmulvsBX_TTSubdet, _cMsnEmulvsLS_TTSubdet, _cOccupancy_HF_depth, _cOccupancy_HF_ieta, _cOccupancyCutData_depthlike, _cOccupancyCutData_ElectronicsuTCA, _cOccupancyCutDatavsBX_TTSubdet, _cOccupancyCutDatavsLS_TTSubdet, _cOccupancyCutEmul_depthlike, _cOccupancyCutEmul_ElectronicsuTCA, _cOccupancyCutEmulvsBX_TTSubdet, _cOccupancyCutEmulvsLS_TTSubdet, _cOccupancyData2x3_depthlike, _cOccupancyData_depthlike, _cOccupancyData_ElectronicsuTCA, _cOccupancyDatavsBX_TTSubdet, _cOccupancyDatavsLS_TTSubdet, _cOccupancyEmul2x3_depthlike, _cOccupancyEmul_depthlike, _cOccupancyEmul_ElectronicsuTCA, _cOccupancyEmulvsBX_TTSubdet, _cOccupancyEmulvsLS_TTSubdet, _cOccupancyNoTDC_HF_depth, _cOccupancyNoTDC_HF_ieta, _cSOIEtCorr_TTSubdet, _cSOIEtCorrEmulL1_TTSubdet, _cSummaryvsLS, _cSummaryvsLS_FED, _ehashmap, hcaldqm::DQTask::_emap, _filter_depth0, _filter_uTCA, _filter_VME, hcaldqm::DQModule::_maxLS, hcaldqm::DQModule::_name, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_subsystem, _unknownIdsPresent, _vflags, _vhashFEDs, _xDataMsn, _xDataTotal, _xEmulMsn, _xEmulTotal, _xEtMsm, _xFGMsm, _xNumCorr, _xSentRecL1Msm, printConversionInfo::aux, hcaldqm::ContainerXXX< STDTYPE >::book(), hcaldqm::ContainerProf1D::book(), hcaldqm::ContainerSingleProf2D::book(), hcaldqm::ContainerSingle1D::book(), hcaldqm::ContainerProf2D::book(), hcaldqm::ContainerSingle2D::book(), hcaldqm::Container2D::book(), hcaldqm::Container1D::book(), dqm::implementation::IBooker::book1DD(), bookHistograms(), hcaldqm::constants::CRATE_uTCA_MIN, hcaldqm::constants::CRATE_VME_MIN, hcaldqm::quantity::fBX, hcaldqm::utilities::fed2crate(), hcaldqm::constants::FED_VME_MIN, hcaldqm::hashfunctions::fElectronics, hcaldqm::quantity::fEt_128, hcaldqm::quantity::fEt_256, hcaldqm::quantity::fEtCorr_256, hcaldqm::quantity::fEtCorr_data, hcaldqm::quantity::fEtCorr_emul, hcaldqm::quantity::fEtlog2, hcaldqm::hashfunctions::fFED, hcaldqm::quantity::fFG, hcaldqm::filter::fFilter, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::quantity::fN, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::filter::fPreserver, hcaldqm::quantity::fRatio, hcaldqm::quantity::fRatio_0to2, hcaldqm::quantity::fSlotuTCA, hcaldqm::quantity::fState, hcaldqm::electronicsmap::fT2EHashMap, hcaldqm::hashfunctions::fTTdepth, hcaldqm::quantity::fTTieta, hcaldqm::quantity::fTTieta2x3, hcaldqm::quantity::fTTiphi, hcaldqm::hashfunctions::fTTSubdet, hcaldqm::hashfunctions::fTTSubdetFW, hcaldqm::utilities::getFEDList(), hcaldqm::utilities::getFEDuTCAList(), hcaldqm::utilities::getFEDVMEList(), edm::EventSetup::getHandle(), hcalDbServiceToken_, hcaldqm::ContainerProf1D::initialize(), hcaldqm::ContainerSingleProf2D::initialize(), hcaldqm::ContainerXXX< STDTYPE >::initialize(), hcaldqm::ContainerProf2D::initialize(), hcaldqm::filter::HashFilter::initialize(), hcaldqm::ContainerSingle1D::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::ContainerSingle2D::initialize(), hcaldqm::electronicsmap::ElectronicsMap::initialize(), hcaldqm::Container1D::initialize(), meUnknownIds1LS, hcaldqm::constants::NUM_FGBITS, HcalElectronicsId::rawId(), dqm::implementation::NavigatorBase::setCurrentFolder(), hcaldqm::constants::SLOT_uTCA_MIN, and hcaldqm::constants::SPIGOT_MIN.

40  {
41  DQTask::bookHistograms(ib, r, es);
42 
43  // GET WHAT YOU NEED
45  _emap = dbs->getHcalMapping();
46  std::vector<uint32_t> vVME;
47  std::vector<uint32_t> vuTCA;
48  std::vector<uint32_t> depth0;
50  vuTCA.push_back(HcalElectronicsId(CRATE_uTCA_MIN, SLOT_uTCA_MIN, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
53  depth0.push_back(HcalTrigTowerDetId(1, 1, 0).rawId());
55 
56  // INITIALIZE FIRST
57  // Et/FG
59  "EtData",
63  0);
65  "EtEmul",
69  0);
71  "EtCorr_xTS",
76  0);
78  "EtCorr_EmulvsData",
83  0);
85  "EtCorr_EmulvsL1",
90  0);
91  for (uint8_t iii = 0; iii < constants::NUM_FGBITS; iii++) {
93  "FGCorr",
98  0);
99  }
100 
102  "EtData",
106  0);
108  "EtEmul",
112  0);
114  "EtCutData",
118  0);
120  "EtCutEmul",
124  0);
125 
126  // Occupancy
128  "OccupancyData",
132  0);
134  "OccupancyEmul",
138  0);
140  "OccupancyCutData",
144  0);
146  "OccupancyCutEmul",
150  0);
151 
152  // Mismatches
154  "EtMsm",
158  0);
160  "FGMsm",
164  0);
165 
166  if (_ptype == fOnline) {
167  // Mismatches: sent vs received
169  "EtMsm_uHTR_L1T",
173  0);
175  "EtMsm_uHTR_L1T_LS",
178  0);
179  }
180 
181  // Missing Data w.r.t. Emulator
183  "MsnData",
187  0);
189  "MsnEmul",
193  0);
194 
196  "EtCorrRatio",
200  0);
201 
203  "OccupancyDatavsBX",
207  0);
209  "OccupancyEmulvsBX",
213  0);
215  "OccupancyCutDatavsBX",
219  0);
221  "OccupancyCutEmulvsBX",
225  0);
226 
227  // INITIALIZE HISTOGRAMS to be used in Online only!
228  if (_ptype == fOnline) {
230  "EtCorr2x3",
235  0);
237  "OccupancyData2x3",
241  0);
243  "OccupancyEmul2x3",
247  0);
249  "EtCutDatavsLS",
253  0);
255  "EtCutEmulvsLS",
259  0);
261  "EtCutDatavsBX",
266  0);
268  "EtCutEmulvsBX",
272  0);
274  "EtCorrRatiovsLS",
278  0);
280  "EtCorrRatiovsBX",
284  0);
286  "EtMsmRatiovsLS",
290  0);
292  "EtMsmRatiovsBX",
296  0);
298  "EtMsmvsLS",
302  0);
304  "EtMsmvsBX",
308  0);
310  "MsnDatavsLS",
314  0);
316  "MsnCutDatavsLS",
320  0);
322  "MsnDatavsBX",
326  0);
328  "MsnCutDatavsBX",
332  0);
334  "MsnEmulvsLS",
338  0);
340  "MsnCutEmulvsLS",
344  0);
346  "MsnEmulvsBX",
350  0);
352  "MsnCutEmulvsBX",
356  0);
358  "OccupancyDatavsLS",
362  0);
364  "OccupancyCutDatavsLS",
368  0);
370  "OccupancyDatavsBX",
374  0);
376  "OccupancyCutDatavsBX",
380  0);
382  "OccupancyEmulvsLS",
386  0);
388  "OccupancyCutEmulvsLS",
392  0);
394  "OccupancyEmulvsBX",
398  0);
400  "OccupancyCutEmulvsBX",
404  0);
405 
407  "OccupancyDataHF_depth",
411  0);
413  "OccupancyEmulHFNoTDC_depth",
417  0);
419  "OccupancyDataHF_ieta",
422  0),
424  "OccupancyEmulHFNoTDC_ieta",
427  0);
428  }
429 
430  // FED-based containers
431  if (_ptype != fOffline) { // hidefed2crate
432  std::vector<int> vFEDs = hcaldqm::utilities::getFEDList(_emap);
433  std::vector<int> vFEDsVME = hcaldqm::utilities::getFEDVMEList(_emap);
434  std::vector<int> vFEDsuTCA = hcaldqm::utilities::getFEDuTCAList(_emap);
435  // push the rawIds of each fed into the vector
436  // this vector is used at endlumi for online state generation
437  for (std::vector<int>::const_iterator it = vFEDsVME.begin(); it != vFEDsVME.end(); ++it) {
439  }
440  for (std::vector<int>::const_iterator it = vFEDsuTCA.begin(); it != vFEDsuTCA.end(); ++it) {
441  std::pair<uint16_t, uint16_t> cspair = hcaldqm::utilities::fed2crate(*it);
442  _vhashFEDs.push_back(HcalElectronicsId(cspair.first, cspair.second, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
443  }
445  "EtData",
447  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
450  0);
452  "EtEmul",
454  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
457  0);
458  // Occupancies
460  "OccupancyData",
462  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
465  0);
467  "OccupancyEmul",
469  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
472  0);
473 
475  _name,
476  "OccupancyCutData",
478  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
481  0);
483  _name,
484  "OccupancyCutEmul",
486  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
489  0);
490  // Mismatches
492  "EtMsm",
494  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
497  0);
499  "FGMsm",
501  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
504  0);
505 
506  // Missing Data w.r.t. Emulator
508  "MsnData",
510  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
513  0);
515  "MsnEmul",
517  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
520  0);
522  "EtCorrRatio",
524  new hcaldqm::quantity::FEDQuantity(vFEDsuTCA),
527  0);
528  if (_ptype == fOnline) {
530  "SummaryvsLS",
535  0);
537  "SummaryvsLS",
541  0);
542 
551  }
552  }
553 
554  // BOOK HISTOGRAMS
555  char aux[20];
556  for (unsigned int iii = 0; iii < constants::NUM_FGBITS; iii++) {
557  sprintf(aux, "BIT%d", iii);
558  _cFGCorr_TTSubdet[iii].book(ib, _emap, _subsystem, aux);
559  }
565  if (_ptype != fOffline) { // hidefed2crate
568  }
573  if (_ptype != fOffline) { // hidefed2crate
578  }
583 
589 
590  if (_ptype == fOnline) {
593  }
594 
595  if (_ptype != fOffline) { // hidefed2crate
601  }
602 
603  // whatever has to go online only goes here
604  if (_ptype == fOnline) {
636 
637  _xEtMsm.book(_emap);
638  _xFGMsm.book(_emap);
645 
650  }
651 
652  // initialize the hash map
654 
655  // book the flag for unknown ids and the online guy as well
656  ib.setCurrentFolder(_subsystem + "/" + _name);
657  auto scope = DQMStore::IBooker::UseLumiScope(ib);
658  meUnknownIds1LS = ib.book1DD("UnknownIds", "UnknownIds", 1, 0, 1);
659  _unknownIdsPresent = false;
660 }
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
hcaldqm::ContainerProf1D _cEtCorrRatiovsBX_TTSubdet
Definition: TPTask.h:94
constexpr uint32_t rawId() const
hcaldqm::ContainerXXX< uint32_t > _xDataTotal
Definition: TPTask.h:159
hcaldqm::ContainerProf1D _cMsnCutEmulvsBX_TTSubdet
Definition: TPTask.h:141
hcaldqm::Container1D _cEtEmul_TTSubdet
Definition: TPTask.h:70
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::ContainerSingleProf2D _cEtData_depthlike
Definition: TPTask.h:85
int const CRATE_VME_MIN
Definition: Constants.h:95
hcaldqm::ContainerProf1D _cMsnDatavsBX_TTSubdet
Definition: TPTask.h:132
hcaldqm::ContainerSingle2D _cOccupancyCutEmul_depthlike
Definition: TPTask.h:107
hcaldqm::ContainerProf1D _cMsnDatavsLS_TTSubdet
Definition: TPTask.h:130
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
std::pair< uint16_t, uint16_t > fed2crate(int fed)
Definition: Utilities.cc:10
std::vector< uint32_t > _vhashFEDs
Definition: TPTask.h:58
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
hcaldqm::ContainerProf1D _cEtMsmvsLS_TTSubdet
Definition: TPTask.h:118
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::ContainerProf1D _cEtCutEmulvsLS_TTSubdet
Definition: TPTask.h:77
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: TPTask.h:61
MonitorElement * meUnknownIds1LS
Definition: TPTask.h:154
hcaldqm::ContainerSingleProf2D _cEtCorrRatio_depthlike
Definition: TPTask.h:92
hcaldqm::ContainerProf1D _cMsnCutDatavsBX_TTSubdet
Definition: TPTask.h:133
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
hcaldqm::Container2D _cSOIEtCorrEmulL1_TTSubdet
Definition: TPTask.h:73
int const SPIGOT_MIN
Definition: Constants.h:120
hcaldqm::ContainerProf1D _cMsnCutDatavsLS_TTSubdet
Definition: TPTask.h:131
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerSingle2D _cOccupancyCutData_depthlike
Definition: TPTask.h:106
int const FIBER_VME_MIN
Definition: Constants.h:125
hcaldqm::ContainerProf1D _cOccupancyDatavsLS_TTSubdet
Definition: TPTask.h:148
hcaldqm::ContainerProf1D _cEtMsmRatiovsLS_TTSubdet
Definition: TPTask.h:119
hcaldqm::ContainerSingle2D _cOccupancyEmul2x3_depthlike
Definition: TPTask.h:111
hcaldqm::ContainerProf1D _cMsnEmulvsBX_TTSubdet
Definition: TPTask.h:140
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: TPTask.h:44
int const FIBERCH_MIN
Definition: Constants.h:134
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
hcaldqm::ContainerProf2D _cEtCorrRatio_ElectronicsuTCA
Definition: TPTask.h:91
example_stream void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
Definition: Utilities.cc:115
hcaldqm::Container2D _cFGCorr_TTSubdet[hcaldqm::constants::NUM_FGBITS]
Definition: TPTask.h:75
hcaldqm::ContainerXXX< uint32_t > _xDataMsn
Definition: TPTask.h:159
hcaldqm::filter::HashFilter _filter_uTCA
Definition: TPTask.h:65
MonitorElement * book1DD(TString const &name, TString const &title, int nchX, double lowX, double highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:155
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: TPTask.h:157
ProcessingType _ptype
Definition: DQModule.h:44
std::vector< hcaldqm::flag::Flag > _vflags
Definition: TPTask.h:47
hcaldqm::ContainerSingle1D _cEtMsm_uHTR_L1T_LS
Definition: TPTask.h:125
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
hcaldqm::ContainerXXX< uint32_t > _xEmulMsn
Definition: TPTask.h:159
hcaldqm::ContainerProf1D _cEtMsmvsBX_TTSubdet
Definition: TPTask.h:120
int const FED_VME_MIN
Definition: Constants.h:82
hcaldqm::ContainerProf1D _cOccupancyDatavsBX_TTSubdet
Definition: TPTask.h:144
hcaldqm::ContainerProf2D _cEtEmul_ElectronicsuTCA
Definition: TPTask.h:82
hcaldqm::ContainerProf1D _cEtCorrRatiovsLS_TTSubdet
Definition: TPTask.h:93
hcaldqm::ContainerSingle2D _cOccupancyData2x3_depthlike
Definition: TPTask.h:110
hcaldqm::ContainerSingle2D _cFGMsm_depthlike
Definition: TPTask.h:117
hcaldqm::filter::HashFilter _filter_depth0
Definition: TPTask.h:66
int const FIBER_uTCA_MIN1
Definition: Constants.h:128
hcaldqm::ContainerXXX< uint32_t > _xEtMsm
Definition: TPTask.h:159
hcaldqm::Container2D _cEtMsm_ElectronicsuTCA
Definition: TPTask.h:114
hcaldqm::Container2D _cOccupancyCutEmul_ElectronicsuTCA
Definition: TPTask.h:101
hcaldqm::ContainerSingle2D _cOccupancy_HF_depth
Definition: TPTask.h:163
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:463
hcaldqm::Container2D _cEtCutDatavsBX_TTSubdet
Definition: TPTask.h:78
std::string _name
Definition: DQModule.h:42
hcaldqm::ContainerProf1D _cOccupancyCutDatavsLS_TTSubdet
Definition: TPTask.h:150
hcaldqm::Container2D _cOccupancyCutData_ElectronicsuTCA
Definition: TPTask.h:100
HcalElectronicsMap const * _emap
Definition: DQTask.h:81
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: TPTask.h:158
void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0) override
int const CRATE_uTCA_MIN
Definition: Constants.h:100
hcaldqm::ContainerSingle2D _cOccupancyData_depthlike
Definition: TPTask.h:104
hcaldqm::ContainerSingle2D _cEtMsm_depthlike
Definition: TPTask.h:116
hcaldqm::Container2D _cSOIEtCorr_TTSubdet
Definition: TPTask.h:72
hcaldqm::ContainerProf1D _cEtCutDatavsLS_TTSubdet
Definition: TPTask.h:76
hcaldqm::Container2D _cMsnData_ElectronicsuTCA
Definition: TPTask.h:128
hcaldqm::Container2D _cMsnEmul_ElectronicsuTCA
Definition: TPTask.h:136
hcaldqm::ContainerProf1D _cOccupancyEmulvsBX_TTSubdet
Definition: TPTask.h:145
hcaldqm::ContainerXXX< uint32_t > _xEmulTotal
Definition: TPTask.h:159
hcaldqm::ContainerXXX< uint32_t > _xSentRecL1Msm
Definition: TPTask.h:159
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:87
hcaldqm::Container2D _cFGMsm_ElectronicsuTCA
Definition: TPTask.h:115
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::ContainerSingle2D _cEtMsm_uHTR_L1T_depthlike
Definition: TPTask.h:124
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsBX_TTSubdet
Definition: TPTask.h:147
hcaldqm::ContainerXXX< uint32_t > _xFGMsm
Definition: TPTask.h:159
hcaldqm::Container2D _cOccupancyEmul_ElectronicsuTCA
Definition: TPTask.h:98
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fEnergy), int debug=0) override
hcaldqm::ContainerProf1D _cOccupancyCutDatavsBX_TTSubdet
Definition: TPTask.h:146
hcaldqm::ContainerSingle1D _cOccupancyNoTDC_HF_ieta
Definition: TPTask.h:164
hcaldqm::ContainerSingle2D _cOccupancyEmul_depthlike
Definition: TPTask.h:105
hcaldqm::Container2D _cOccupancyData_ElectronicsuTCA
Definition: TPTask.h:97
int const NUM_FGBITS
Definition: Constants.h:210
hcaldqm::ContainerProf1D _cEtCutEmulvsBX_TTSubdet
Definition: TPTask.h:79
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:97
hcaldqm::Container2D _cEtCorr2x3_TTSubdet
Definition: TPTask.h:74
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
Definition: Utilities.cc:135
hcaldqm::Container2D _cEtCorr_TTSubdet
Definition: TPTask.h:71
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::ContainerSingle2D _cOccupancyNoTDC_HF_depth
Definition: TPTask.h:163
hcaldqm::ContainerSingleProf2D _cEtEmul_depthlike
Definition: TPTask.h:86
hcaldqm::ContainerXXX< uint32_t > _xNumCorr
Definition: TPTask.h:159
bool _unknownIdsPresent
Definition: TPTask.h:155
hcaldqm::filter::HashFilter _filter_VME
Definition: TPTask.h:64
hcaldqm::ContainerProf1D _cOccupancyEmulvsLS_TTSubdet
Definition: TPTask.h:149
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsLS_TTSubdet
Definition: TPTask.h:151
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:81
hcaldqm::ContainerProf1D _cEtMsmRatiovsBX_TTSubdet
Definition: TPTask.h:121
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:567
hcaldqm::ContainerSingleProf2D _cEtCutEmul_depthlike
Definition: TPTask.h:88
hcaldqm::ContainerProf2D _cEtData_ElectronicsuTCA
Definition: TPTask.h:81
hcaldqm::ContainerProf1D _cMsnEmulvsLS_TTSubdet
Definition: TPTask.h:138
void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerSingle1D _cOccupancy_HF_ieta
Definition: TPTask.h:164
Readout chain identification for Hcal.
hcaldqm::ContainerSingle2D _cMsnData_depthlike
Definition: TPTask.h:129
int const SLOT_uTCA_MIN
Definition: Constants.h:107
hcaldqm::ContainerSingleProf2D _cEtCutData_depthlike
Definition: TPTask.h:87
hcaldqm::Container1D _cEtData_TTSubdet
Definition: TPTask.h:69
hcaldqm::ContainerSingle2D _cMsnEmul_depthlike
Definition: TPTask.h:137
hcaldqm::ContainerProf1D _cMsnCutEmulvsLS_TTSubdet
Definition: TPTask.h:139
std::shared_ptr< hcaldqm::Cache > TPTask::globalBeginLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
) const
override

Definition at line 1147 of file TPTask.cc.

1148  {
1149  return DQTask::globalBeginLuminosityBlock(lb, es);
1150 }
void TPTask::globalEndLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
override

Definition at line 1152 of file TPTask.cc.

References _cSummaryvsLS, _cSummaryvsLS_FED, hcaldqm::DQModule::_currentLS, hcaldqm::DQModule::_ptype, hcaldqm::flag::Flag::_state, _thresh_EtMsmRate_high, _thresh_EtMsmRate_low, _unknownIdsPresent, hcaldqm::DQTask::_vcdaqEids, _vflags, _vhashFEDs, _xDataMsn, _xDataTotal, _xEmulMsn, _xEmulTotal, _xEtMsm, _xFGMsm, _xNumCorr, _xSentRecL1Msm, runTauDisplay::eid, hcaldqm::flag::fBAD, fEtMsm, hcaldqm::flag::fGOOD, spr::find(), hcaldqm::flag::fNCDAQ, hcaldqm::fOnline, hcaldqm::flag::fPROBLEMATIC, fSentRecL1Msm, fUnknownIds, hcaldqm::ContainerXXX< STDTYPE >::get(), edm::LuminosityBlock::index(), hcaldqm::utilities::isFEDHBHE(), hcaldqm::utilities::isFEDHF(), hcaldqm::ContainerXXX< STDTYPE >::reset(), hcaldqm::flag::Flag::reset(), hcaldqm::ContainerSingle2D::setBinContent(), and hcaldqm::Container2D::setBinContent().

1152  {
1153  if (_ptype != fOnline)
1154  return;
1155 
1156  auto lumiCache = luminosityBlockCache(lb.index());
1157  _currentLS = lumiCache->currentLS;
1158 
1159  //
1160  // GENERATE STATUS ONLY FOR ONLINE!
1161  //
1162  for (std::vector<uint32_t>::const_iterator it = _vhashFEDs.begin(); it != _vhashFEDs.end(); ++it) {
1163  flag::Flag fSum("TP");
1165 
1166  std::vector<uint32_t>::const_iterator cit = std::find(_vcdaqEids.begin(), _vcdaqEids.end(), *it);
1167  if (cit == _vcdaqEids.end()) {
1168  // not @cDAQ
1169  for (uint32_t iflag = 0; iflag < _vflags.size(); iflag++)
1170  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag), int(flag::fNCDAQ));
1171  _cSummaryvsLS.setBinContent(eid, _currentLS, int(flag::fNCDAQ));
1172  continue;
1173  }
1174 
1176  // FED is @cDAQ
1177  double etmsm = _xNumCorr.get(eid) > 0 ? double(_xEtMsm.get(eid)) / double(_xNumCorr.get(eid)) : 0;
1178  /*
1179  * UNUSED VARS
1180  * double dmsm = _xDataTotal.get(eid)>0?
1181  double(_xDataMsn.get(eid))/double(_xDataTotal.get(eid)):0;
1182  double emsm = _xEmulTotal.get(eid)>0?
1183  double(_xEmulMsn.get(eid))/double(_xEmulTotal.get(eid)):0;
1184  double fgmsm = _xNumCorr.get(eid)>0?
1185  double(_xFGMsm.get(eid))/double(_xNumCorr.get(eid)):0;
1186  */
1187  if (etmsm >= _thresh_EtMsmRate_high)
1188  _vflags[fEtMsm]._state = flag::fBAD;
1189  else if (etmsm >= _thresh_EtMsmRate_low)
1190  _vflags[fEtMsm]._state = flag::fPROBLEMATIC;
1191  else
1192  _vflags[fEtMsm]._state = flag::fGOOD;
1193  /*
1194  * DISABLE THESE FLAGS FOR ONLINE FOR NOW!
1195  if (dmsm>=_thresh_DataMsn)
1196  _vflags[fDataMsn]._state = flag::fBAD;
1197  else
1198  _vflags[fDataMsn]._state = flag::fGOOD;
1199  if (emsm>=_thresh_EmulMsn)
1200  _vflags[fEmulMsn]._state = flag::fBAD;
1201  else
1202  _vflags[fEmulMsn]._state = flag::fGOOD;
1203  */
1204 
1205  if (_ptype == fOnline) {
1206  if (_xSentRecL1Msm.get(eid) >= 1) {
1207  _vflags[fSentRecL1Msm]._state = flag::fBAD;
1208  } else {
1209  _vflags[fSentRecL1Msm]._state = flag::fGOOD;
1210  }
1211  }
1212  }
1213 
1214  if (_unknownIdsPresent)
1215  _vflags[fUnknownIds]._state = flag::fBAD;
1216  else
1217  _vflags[fUnknownIds]._state = flag::fGOOD;
1218 
1219  int iflag = 0;
1220  for (std::vector<flag::Flag>::iterator ft = _vflags.begin(); ft != _vflags.end(); ++ft) {
1221  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag), ft->_state);
1222  fSum += (*ft);
1223  iflag++;
1224 
1225  // this is the MUST!
1226  // reset after using this flag
1227  ft->reset();
1228  }
1229  _cSummaryvsLS.setBinContent(eid, _currentLS, int(fSum._state));
1230  }
1231 
1232  // reset...
1233  _xEtMsm.reset();
1234  _xFGMsm.reset();
1235  _xNumCorr.reset();
1236  _xDataMsn.reset();
1237  _xDataTotal.reset();
1238  _xEmulMsn.reset();
1239  _xEmulTotal.reset();
1240 
1241  // in the end always do the DQTask::endLumi
1242  DQTask::globalEndLuminosityBlock(lb, es);
1243 }
hcaldqm::ContainerXXX< uint32_t > _xDataTotal
Definition: TPTask.h:159
std::vector< uint32_t > _vhashFEDs
Definition: TPTask.h:58
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
double _thresh_EtMsmRate_low
Definition: TPTask.h:53
hcaldqm::ContainerXXX< uint32_t > _xDataMsn
Definition: TPTask.h:159
hcaldqm::Container2D _cSummaryvsLS_FED
Definition: TPTask.h:157
ProcessingType _ptype
Definition: DQModule.h:44
std::vector< hcaldqm::flag::Flag > _vflags
Definition: TPTask.h:47
virtual void setBinContent(int, int, int)
hcaldqm::ContainerXXX< uint32_t > _xEmulMsn
Definition: TPTask.h:159
hcaldqm::ContainerXXX< uint32_t > _xEtMsm
Definition: TPTask.h:159
double _thresh_EtMsmRate_high
Definition: TPTask.h:53
hcaldqm::ContainerSingle2D _cSummaryvsLS
Definition: TPTask.h:158
hcaldqm::ContainerXXX< uint32_t > _xEmulTotal
Definition: TPTask.h:159
hcaldqm::ContainerXXX< uint32_t > _xSentRecL1Msm
Definition: TPTask.h:159
bool isFEDHBHE(HcalElectronicsId const &)
Definition: Utilities.cc:156
hcaldqm::ContainerXXX< uint32_t > _xFGMsm
Definition: TPTask.h:159
void setBinContent(HcalDetId const &, int) override
Definition: Container2D.cc:163
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:197
hcaldqm::ContainerXXX< uint32_t > _xNumCorr
Definition: TPTask.h:159
bool _unknownIdsPresent
Definition: TPTask.h:155
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:69
Readout chain identification for Hcal.
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:170

Member Data Documentation

hcaldqm::Container2D TPTask::_cEtCorr2x3_TTSubdet
protected

Definition at line 74 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cEtCorr_TTSubdet
protected

Definition at line 71 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingleProf2D TPTask::_cEtCorrRatio_depthlike
protected

Definition at line 92 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf2D TPTask::_cEtCorrRatio_ElectronicsuTCA
protected

Definition at line 91 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtCorrRatiovsBX_TTSubdet
protected

Definition at line 94 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtCorrRatiovsLS_TTSubdet
protected

Definition at line 93 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingleProf2D TPTask::_cEtCutData_depthlike
protected

Definition at line 87 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cEtCutDatavsBX_TTSubdet
protected

Definition at line 78 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtCutDatavsLS_TTSubdet
protected

Definition at line 76 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingleProf2D TPTask::_cEtCutEmul_depthlike
protected

Definition at line 88 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtCutEmulvsBX_TTSubdet
protected

Definition at line 79 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtCutEmulvsLS_TTSubdet
protected

Definition at line 77 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingleProf2D TPTask::_cEtData_depthlike
protected

Definition at line 85 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf2D TPTask::_cEtData_ElectronicsuTCA
protected

Definition at line 81 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container1D TPTask::_cEtData_TTSubdet
protected

Definition at line 69 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingleProf2D TPTask::_cEtEmul_depthlike
protected

Definition at line 86 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf2D TPTask::_cEtEmul_ElectronicsuTCA
protected

Definition at line 82 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container1D TPTask::_cEtEmul_TTSubdet
protected

Definition at line 70 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cEtMsm_depthlike
protected

Definition at line 116 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cEtMsm_ElectronicsuTCA
protected

Definition at line 114 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cEtMsm_uHTR_L1T_depthlike
protected

Definition at line 124 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle1D TPTask::_cEtMsm_uHTR_L1T_LS
protected

Definition at line 125 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtMsmRatiovsBX_TTSubdet
protected

Definition at line 121 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtMsmRatiovsLS_TTSubdet
protected

Definition at line 119 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtMsmvsBX_TTSubdet
protected

Definition at line 120 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cEtMsmvsLS_TTSubdet
protected

Definition at line 118 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cFGCorr_TTSubdet[hcaldqm::constants::NUM_FGBITS]
protected

Definition at line 75 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cFGMsm_depthlike
protected

Definition at line 117 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cFGMsm_ElectronicsuTCA
protected

Definition at line 115 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnCutDatavsBX_TTSubdet
protected

Definition at line 133 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnCutDatavsLS_TTSubdet
protected

Definition at line 131 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnCutEmulvsBX_TTSubdet
protected

Definition at line 141 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnCutEmulvsLS_TTSubdet
protected

Definition at line 139 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cMsnData_depthlike
protected

Definition at line 129 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cMsnData_ElectronicsuTCA
protected

Definition at line 128 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnDatavsBX_TTSubdet
protected

Definition at line 132 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnDatavsLS_TTSubdet
protected

Definition at line 130 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cMsnEmul_depthlike
protected

Definition at line 137 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cMsnEmul_ElectronicsuTCA
protected

Definition at line 136 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnEmulvsBX_TTSubdet
protected

Definition at line 140 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cMsnEmulvsLS_TTSubdet
protected

Definition at line 138 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancy_HF_depth
protected

Definition at line 163 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle1D TPTask::_cOccupancy_HF_ieta
protected

Definition at line 164 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyCutData_depthlike
protected

Definition at line 106 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cOccupancyCutData_ElectronicsuTCA
protected

Definition at line 100 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyCutDatavsBX_TTSubdet
protected

Definition at line 146 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyCutDatavsLS_TTSubdet
protected

Definition at line 150 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyCutEmul_depthlike
protected

Definition at line 107 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cOccupancyCutEmul_ElectronicsuTCA
protected

Definition at line 101 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyCutEmulvsBX_TTSubdet
protected

Definition at line 147 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyCutEmulvsLS_TTSubdet
protected

Definition at line 151 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyData2x3_depthlike
protected

Definition at line 110 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyData_depthlike
protected

Definition at line 104 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cOccupancyData_ElectronicsuTCA
protected

Definition at line 97 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyDatavsBX_TTSubdet
protected

Definition at line 144 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyDatavsLS_TTSubdet
protected

Definition at line 148 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyEmul2x3_depthlike
protected

Definition at line 111 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyEmul_depthlike
protected

Definition at line 105 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cOccupancyEmul_ElectronicsuTCA
protected

Definition at line 98 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyEmulvsBX_TTSubdet
protected

Definition at line 145 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerProf1D TPTask::_cOccupancyEmulvsLS_TTSubdet
protected

Definition at line 149 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cOccupancyNoTDC_HF_depth
protected

Definition at line 163 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle1D TPTask::_cOccupancyNoTDC_HF_ieta
protected

Definition at line 164 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cSOIEtCorr_TTSubdet
protected

Definition at line 72 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::Container2D TPTask::_cSOIEtCorrEmulL1_TTSubdet
protected

Definition at line 73 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::ContainerSingle2D TPTask::_cSummaryvsLS
protected

Definition at line 158 of file TPTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

hcaldqm::Container2D TPTask::_cSummaryvsLS_FED
protected

Definition at line 157 of file TPTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

int TPTask::_cutEt
protected

Definition at line 52 of file TPTask.h.

Referenced by _process(), and TPTask().

hcaldqm::electronicsmap::ElectronicsMap TPTask::_ehashmap
protected

Definition at line 61 of file TPTask.h.

Referenced by _process(), and bookHistograms().

hcaldqm::filter::HashFilter TPTask::_filter_depth0
protected

Definition at line 66 of file TPTask.h.

Referenced by bookHistograms().

hcaldqm::filter::HashFilter TPTask::_filter_uTCA
protected

Definition at line 65 of file TPTask.h.

Referenced by bookHistograms().

hcaldqm::filter::HashFilter TPTask::_filter_VME
protected

Definition at line 64 of file TPTask.h.

Referenced by bookHistograms().

bool TPTask::_skip1x1
protected

Definition at line 51 of file TPTask.h.

Referenced by TPTask().

edm::InputTag TPTask::_tagData
protected

Definition at line 36 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::InputTag TPTask::_tagDataL1Rec
protected

Definition at line 37 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::InputTag TPTask::_tagEmul
protected

Definition at line 38 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::InputTag TPTask::_tagEmulNoTDCCut
protected

Definition at line 39 of file TPTask.h.

Referenced by _process(), and TPTask().

double TPTask::_thresh_DataMsn
protected

Definition at line 53 of file TPTask.h.

Referenced by TPTask().

double TPTask::_thresh_EmulMsn
protected

Definition at line 53 of file TPTask.h.

Referenced by TPTask().

double TPTask::_thresh_EtMsmRate_high
protected

Definition at line 53 of file TPTask.h.

Referenced by globalEndLuminosityBlock(), and TPTask().

double TPTask::_thresh_EtMsmRate_low
protected

Definition at line 53 of file TPTask.h.

Referenced by globalEndLuminosityBlock(), and TPTask().

double TPTask::_thresh_FGMsmRate_high
protected

Definition at line 53 of file TPTask.h.

Referenced by TPTask().

double TPTask::_thresh_FGMsmRate_low
protected

Definition at line 53 of file TPTask.h.

Referenced by TPTask().

edm::EDGetTokenT<HcalTrigPrimDigiCollection> TPTask::_tokData
protected

Definition at line 40 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::EDGetTokenT<HcalTrigPrimDigiCollection> TPTask::_tokDataL1Rec
protected

Definition at line 41 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::EDGetTokenT<HcalTrigPrimDigiCollection> TPTask::_tokEmul
protected

Definition at line 42 of file TPTask.h.

Referenced by _process(), and TPTask().

edm::EDGetTokenT<HcalTrigPrimDigiCollection> TPTask::_tokEmulNoTDCCut
protected

Definition at line 43 of file TPTask.h.

Referenced by _process(), and TPTask().

bool TPTask::_unknownIdsPresent
protected

Definition at line 155 of file TPTask.h.

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

std::vector<std::pair<HcalTriggerPrimitiveDigi, HcalTriggerPrimitiveDigi> > TPTask::_vEmulTPDigis_SentRec
protected

Definition at line 167 of file TPTask.h.

Referenced by _process().

std::vector<bool> TPTask::_vFGBitsReady
protected

Definition at line 55 of file TPTask.h.

Referenced by _process(), and TPTask().

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

Definition at line 47 of file TPTask.h.

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

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

Definition at line 58 of file TPTask.h.

Referenced by bookHistograms(), and globalEndLuminosityBlock().

std::vector<std::pair<HcalTriggerPrimitiveDigi, HcalTriggerPrimitiveDigi> > TPTask::_vTPDigis_SentRec
protected

Definition at line 168 of file TPTask.h.

Referenced by _process().

hcaldqm::ContainerXXX<uint32_t> TPTask::_xDataMsn
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xDataTotal
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xEmulMsn
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xEmulTotal
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xEtMsm
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xFGMsm
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xNumCorr
protected

Definition at line 159 of file TPTask.h.

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

hcaldqm::ContainerXXX<uint32_t> TPTask::_xSentRecL1Msm
protected

Definition at line 159 of file TPTask.h.

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

list TPTask.fgbits = [1 for x in range(5)]

Definition at line 3 of file TPTask.py.

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

Definition at line 44 of file TPTask.h.

Referenced by bookHistograms().

MonitorElement* TPTask::meUnknownIds1LS
protected

Definition at line 154 of file TPTask.h.

Referenced by _process(), and bookHistograms().

tuple TPTask.tpTask

Definition at line 7 of file TPTask.py.