CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
QIE11Task Class Reference

#include <QIE11Task.h>

Inheritance diagram for QIE11Task:
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
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 QIE11Task (edm::ParameterSet const &)
 
 ~QIE11Task () 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
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > 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
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 
- Public Member Functions inherited from hcaldqm::DQModule
 DQModule (edm::ParameterSet const &)
 
virtual ~DQModule () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &)
 
- 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)
 

Protected Member Functions

bool _isApplicable (edm::Event const &) override
 
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 &)
 
- 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 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::ContainerSingle1D _cADC
 
hcaldqm::Container1D _cADC_EChannel [10][2]
 
hcaldqm::ContainerSingle1D _cLETDC
 
hcaldqm::Container1D _cLETDC_EChannel [10][2]
 
hcaldqm::Container1D _cLETDCTime_EChannel [2]
 
hcaldqm::ContainerSingle2D _cLETDCTimevsADC
 
hcaldqm::ContainerSingle2D _cLETDCvsADC
 
hcaldqm::Container2D _cLETDCvsADC_EChannel [10][2]
 
hcaldqm::Container2D _cLETDCvsTS_EChannel [2]
 
hcaldqm::Container2D _cOccupancy_depth
 
hcaldqm::ContainerSingleProf1D _cShapeCut
 
hcaldqm::ContainerProf1D _cShapeCut_EChannel [2]
 
double _cut
 
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
 
int _eventType
 
hcaldqm::filter::HashFilter _filter_C34
 
hcaldqm::filter::HashFilter _filter_slot [2]
 
hcaldqm::filter::HashFilter _filter_timingChannels [4]
 
int _laserType
 
int _ped
 
edm::InputTag _tagQIE11
 
edm::InputTag _taguMN
 
edm::EDGetTokenT< QIE11DigiCollection_tokQIE11
 
edm::EDGetTokenT< HcalUMNioDigi_tokuMN
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
- Protected Attributes inherited from hcaldqm::DQTask
ContainerI _cEvsPerLS
 
ContainerI _cEvsTotal
 
ContainerS _cProcessingTypeName
 
ContainerS _cRunKeyName
 
ContainerI _cRunKeyVal
 
edm::ESHandle< HcalDbService_dbService
 
HcalElectronicsMap const * _emap = nullptr
 
int _procLSs
 
edm::InputTag _tagRaw
 
edm::EDGetTokenT< FEDRawDataCollection_tokRaw
 
std::vector< uint32_t > _vcdaqEids
 
ContainerXXX< uint32_t > _xQuality
 
edm::ESGetToken< HcalChannelQuality, HcalChannelQualityRcdhcalChannelQualityToken_
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
edm::ESGetToken< RunInfo, RunInfoRcdrunInfoToken_
 
- Protected Attributes inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
edm::EDPutTokenT< DQMTokenrunToken_
 
- Protected Attributes inherited from hcaldqm::DQModule
int _currentLS
 
int _debug
 
int _evsPerLS
 
int _evsTotal
 
Logger _logger
 
int _maxLS
 
ModuleType _mtype
 
std::string _name
 
ProcessingType _ptype
 
std::string _runkeyName
 
int _runkeyVal
 
std::string _subsystem
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
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
 

Detailed Description

Definition at line 22 of file QIE11Task.h.

Constructor & Destructor Documentation

◆ QIE11Task()

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

Definition at line 6 of file QIE11Task.cc.

References _cut, _eventType, _laserType, _ped, _tagQIE11, _taguMN, _tokQIE11, _tokuMN, edm::ParameterSet::getUntrackedParameter(), and ProducerED_cfi::InputTag.

7  : DQTask(ps), hcalDbServiceToken_(esConsumes<HcalDbService, HcalDbRecord, edm::Transition::BeginRun>()) {
8  // tags
9  _tagQIE11 = ps.getUntrackedParameter<edm::InputTag>("tagQIE11", edm::InputTag("hcalDigis"));
10  _tokQIE11 = consumes<QIE11DigiCollection>(_tagQIE11);
11 
12  _taguMN = ps.getUntrackedParameter<edm::InputTag>("taguMN", edm::InputTag("hcalDigis"));
13  _tokuMN = consumes<HcalUMNioDigi>(_taguMN);
14 
15  // cuts
16  _cut = ps.getUntrackedParameter<double>("cut", 50.0);
17  _ped = ps.getUntrackedParameter<int>("ped", 4);
18  _laserType = ps.getUntrackedParameter<int32_t>("laserType", -1);
19  _eventType = ps.getUntrackedParameter<int32_t>("eventType", -1);
20 }
edm::EDGetTokenT< QIE11DigiCollection > _tokQIE11
Definition: QIE11Task.h:38
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: QIE11Task.h:42
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:8
int _eventType
Definition: QIE11Task.h:48
int _ped
Definition: QIE11Task.h:46
edm::InputTag _tagQIE11
Definition: QIE11Task.h:37
double _cut
Definition: QIE11Task.h:45
edm::EDGetTokenT< HcalUMNioDigi > _tokuMN
Definition: QIE11Task.h:41
int _laserType
Definition: QIE11Task.h:47
edm::InputTag _taguMN
Definition: QIE11Task.h:40

◆ ~QIE11Task()

QIE11Task::~QIE11Task ( )
inlineoverride

Definition at line 25 of file QIE11Task.h.

25 {}

Member Function Documentation

◆ _isApplicable()

bool QIE11Task::_isApplicable ( edm::Event const &  e)
overrideprotectedvirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 246 of file QIE11Task.cc.

References _eventType, _laserType, hcaldqm::DQModule::_ptype, _tokuMN, MillePedeFileConverter_cfg::e, QIE11Task_cfi::eventType, HcalUMNioDigi::eventType(), hcaldqm::fOnline, LaserTask_cfi::laserType, and HcalUMNioDigi::valueUserWord().

246  {
247  if (_ptype != fOnline || (_laserType < 0 && _eventType < 0))
248  return true;
249  else {
250  // fOnline mode
252  if (!e.getByToken(_tokuMN, cumn))
253  return false;
254 
255  // event type check first
256  int eventType = cumn->eventType();
257  if (eventType == _eventType)
258  return true;
259 
260  // check if this analysis task is of the right laser type
261  int laserType = cumn->valueUserWord(0);
262  if (laserType == _laserType)
263  return true;
264  }
265 
266  return false;
267 }
int _eventType
Definition: QIE11Task.h:48
ProcessingType _ptype
Definition: DQModule.h:44
uint32_t valueUserWord(int iword) const
uint8_t eventType() const
edm::EDGetTokenT< HcalUMNioDigi > _tokuMN
Definition: QIE11Task.h:41
int _laserType
Definition: QIE11Task.h:47

◆ _process()

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

Implements hcaldqm::DQTask.

Definition at line 187 of file QIE11Task.cc.

References _cADC, _cADC_EChannel, _cLETDC, _cLETDC_EChannel, _cLETDCTime_EChannel, _cLETDCTimevsADC, _cLETDCvsADC, _cLETDCvsADC_EChannel, _cLETDCvsTS_EChannel, _cShapeCut, _cShapeCut_EChannel, hcaldqm::DQTask::_dbService, _ehashmap, hcaldqm::DQModule::_ptype, _tokQIE11, gpuClustering::adc, MillePedeFileConverter_cfg::e, runTauDisplay::eid, hcaldqm::ContainerSingle1D::fill(), hcaldqm::Container2D::fill(), hcaldqm::ContainerSingle2D::fill(), hcaldqm::Container1D::fill(), hcaldqm::fOffline, amptDefault_cfi::frame, HcalEndcap, mps_fire::i, dqmiolumiharvest::j, hcaldqm::electronicsmap::ElectronicsMap::lookup(), and edm::DataFrameContainer::size().

187  {
189  if (!e.getByToken(_tokQIE11, cqie11))
190  return;
191 
192  for (uint32_t i = 0; i < cqie11->size(); i++) {
193  QIE11DataFrame frame = static_cast<QIE11DataFrame>((*cqie11)[i]);
194  DetId did = frame.detid();
195  if (HcalDetId(frame.detid()).subdet() != HcalEndcap) {
196  continue;
197  }
198 
200  if (!eid.rawId()) {
201  continue;
202  }
203  int fakecrate = -1;
204  if (eid.crateId() == 34)
205  fakecrate = 0;
206  int index = fakecrate * 12 + (eid.slot() - 10) - 1;
207 
208  // compute the signal, ped subracted
209  CaloSamples digi_fC = hcaldqm::utilities::loadADC2fCDB<QIE11DataFrame>(_dbService, did, frame);
210  // double q = hcaldqm::utilities::aveTS_v10<QIE11DataFrame>(frame,
211  // constants::adc2fC[_ped], 0, frame.samples()-1);
212 
213  // iterate thru all TS and fill
214  for (int j = 0; j < frame.samples(); j++) {
215  double q_pedsub = hcaldqm::utilities::adc2fCDBMinusPedestal<QIE11DataFrame>(_dbService, digi_fC, did, frame, j);
216  if (_ptype != fOffline) {
217  if (index == 0 || index == 1) {
218  // shapes are after the cut
219  _cShapeCut_EChannel[index].fill(eid, j, q_pedsub);
221 
222  // w/o a cut
224  _cLETDC_EChannel[j][index].fill(eid, frame[j].tdc());
225  if (frame[j].tdc() < 50) {
226  // Each TDC count is 0.5 ns.
227  // tdc == 62 or 63 means value was below or above threshold for whole time slice.
228  _cLETDCTime_EChannel[index].fill(eid, j * 25. + (frame[j].tdc() / 2.));
229  }
231  }
232  }
233  _cShapeCut.fill(eid, j, q_pedsub);
234 
235  _cLETDCvsADC.fill(frame[j].adc(), frame[j].tdc());
236  if (frame[j].tdc() < 50) {
237  _cLETDCTimevsADC.fill(frame[j].adc(), j * 25. + (frame[j].tdc() / 2.));
238  }
239  _cLETDC.fill(eid, frame[j].tdc());
240 
241  _cADC.fill(eid, frame[j].adc());
242  }
243  }
244 }
edm::EDGetTokenT< QIE11DigiCollection > _tokQIE11
Definition: QIE11Task.h:38
hcaldqm::Container1D _cADC_EChannel[10][2]
Definition: QIE11Task.h:64
hcaldqm::ContainerSingle2D _cLETDCvsADC
Definition: QIE11Task.h:69
hcaldqm::Container2D _cLETDCvsTS_EChannel[2]
Definition: QIE11Task.h:61
hcaldqm::ContainerProf1D _cShapeCut_EChannel[2]
Definition: QIE11Task.h:59
hcaldqm::Container1D _cLETDCTime_EChannel[2]
Definition: QIE11Task.h:63
hcaldqm::ContainerSingleProf1D _cShapeCut
Definition: QIE11Task.h:68
hcaldqm::Container2D _cLETDCvsADC_EChannel[10][2]
Definition: QIE11Task.h:60
ProcessingType _ptype
Definition: DQModule.h:44
virtual void fill(uint32_t)
Definition: Container1D.cc:73
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: QIE11Task.h:56
hcaldqm::ContainerSingle1D _cADC
Definition: QIE11Task.h:72
Definition: DetId.h:17
edm::ESHandle< HcalDbService > _dbService
Definition: DQTask.h:80
hcaldqm::ContainerSingle2D _cLETDCTimevsADC
Definition: QIE11Task.h:70
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
virtual void fill(int, int)
hcaldqm::Container1D _cLETDC_EChannel[10][2]
Definition: QIE11Task.h:62
Readout chain identification for Hcal.
hcaldqm::ContainerSingle1D _cLETDC
Definition: QIE11Task.h:71
uint16_t *__restrict__ uint16_t const *__restrict__ adc

◆ _resetMonitors()

void QIE11Task::_resetMonitors ( hcaldqm::UpdateFreq  )
overrideprotectedvirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 269 of file QIE11Task.cc.

269 {}

◆ bookHistograms()

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

Reimplemented from hcaldqm::DQTask.

Definition at line 41 of file QIE11Task.cc.

References _cADC, _cADC_EChannel, _cLETDC, _cLETDC_EChannel, _cLETDCTime_EChannel, _cLETDCTimevsADC, _cLETDCvsADC, _cLETDCvsADC_EChannel, _cLETDCvsTS_EChannel, _cShapeCut, _cShapeCut_EChannel, _ehashmap, hcaldqm::DQTask::_emap, _filter_C34, _filter_slot, _filter_timingChannels, hcaldqm::DQModule::_name, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_subsystem, printConversionInfo::aux, hcaldqm::ContainerSingleProf1D::book(), hcaldqm::ContainerProf1D::book(), hcaldqm::ContainerSingle1D::book(), hcaldqm::ContainerSingle2D::book(), hcaldqm::Container2D::book(), hcaldqm::Container1D::book(), bookHistograms(), FCDTask_cfi::crate, createIOVlist::dbs, hcalRecHitTable_cff::depth, hcaldqm::hashfunctions::fCrateSlot, hcaldqm::electronicsmap::fD2EHashMap, hcaldqm::hashfunctions::fDChannel, hcaldqm::hashfunctions::fEChannel, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBERCH_MIN, dqmdumpme::first, hcaldqm::fLocal, hcaldqm::quantity::fN, hcaldqm::fOffline, hcaldqm::filter::fPreserver, hcaldqm::quantity::fQIE10ADC_256, hcaldqm::quantity::fQIE10fC_400000, hcaldqm::quantity::fQIE10TDC_64, hcaldqm::quantity::fTime_ns_250, hcaldqm::quantity::fTiming_TS, edm::EventSetup::getHandle(), hcalDbServiceToken_, HcalEndcap, cuy::ib, hcaldqm::ContainerProf1D::initialize(), hcaldqm::ContainerSingleProf1D::initialize(), hcaldqm::filter::HashFilter::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::ContainerSingle1D::initialize(), hcaldqm::ContainerSingle2D::initialize(), hcaldqm::electronicsmap::ElectronicsMap::initialize(), hcaldqm::Container1D::initialize(), dqmiolumiharvest::j, alignCSCRings::r, nano_mu_digi_cff::rawId, edm::second(), and FCDTask_cfi::slot.

41  {
42  if (_ptype == fLocal)
43  if (r.runAuxiliary().run() == 1)
44  return;
45 
47 
48  // GET WHAT YOU NEED
50  _emap = dbs->getHcalMapping();
51  std::vector<uint32_t> vhashC34;
52  vhashC34.push_back(HcalElectronicsId(34, 11, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
53  vhashC34.push_back(HcalElectronicsId(34, 12, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
55 
56  std::vector<std::pair<int, int> > timingChannels;
57  timingChannels.push_back(std::pair<int, int>(28, 63));
58  timingChannels.push_back(std::pair<int, int>(28, 65));
59  timingChannels.push_back(std::pair<int, int>(20, 63));
60  timingChannels.push_back(std::pair<int, int>(20, 65));
61  for (int iChan = 0; iChan < 4; ++iChan) {
62  std::vector<uint32_t> vhashTimingChannel;
63  for (int depth = 1; depth <= 7; ++depth) {
64  vhashTimingChannel.push_back(
65  HcalDetId(HcalEndcap, timingChannels[iChan].first, timingChannels[iChan].second, depth));
66  }
68  }
69 
70  // INITIALIZE what you need
71 
72  // EChannel plots, online+local only
73  if (_ptype != fOffline) {
74  unsigned int itr = 0;
75  for (unsigned int crate = 34; crate <= 34; ++crate) {
76  for (unsigned int slot = 11; slot <= 12; ++slot) {
77  std::vector<uint32_t> vhashSlot;
78  vhashSlot.push_back(HcalElectronicsId(crate, slot, FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
81  "ShapeCut",
86  "LETDCvsTS",
91  0);
93  "LETDCTime",
97  0);
98  for (unsigned int j = 0; j < 10; j++) {
100  _name,
101  "LETDCvsADC",
106  0);
108  "ADC",
112  0);
114  "LETDC",
118  0);
119  }
120  ++itr;
121  }
122  }
123  }
125  "ShapeCut",
129  "LETDCvsADC",
133  0);
135  "LETDCTimevsADC",
139  0);
141  "LETDC",
144  0);
146  "ADC",
149  0);
150 
151  if (_ptype != fOffline) {
152  unsigned int itr = 0;
153  std::map<std::pair<unsigned int, unsigned int>, unsigned int> itr_map;
154  for (unsigned int crate = 34; crate <= 34; ++crate) {
155  for (unsigned int slot = 11; slot <= 12; ++slot) {
156  char aux[100];
157  sprintf(aux, "/Crate%d_Slot%d", crate, slot);
161  for (unsigned int j = 0; j < 10; j++) {
162  char aux2[100];
163  sprintf(aux2, "/Crate%d_Slot%d/TS%d", crate, slot, j);
165  _cLETDC_EChannel[j][itr].book(ib, _emap, _filter_slot[itr], _subsystem, aux2);
166  _cADC_EChannel[j][itr].book(ib, _emap, _filter_slot[itr], _subsystem, aux2);
167  }
168  itr_map[std::make_pair(crate, slot)] = itr;
169  ++itr;
170  }
171  }
172  }
178 
180 }
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
Definition: QIE11Task.h:42
hcaldqm::Container1D _cADC_EChannel[10][2]
Definition: QIE11Task.h:64
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::ContainerSingle2D _cLETDCvsADC
Definition: QIE11Task.h:69
hcaldqm::filter::HashFilter _filter_C34
Definition: QIE11Task.h:51
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
hcaldqm::Container2D _cLETDCvsTS_EChannel[2]
Definition: QIE11Task.h:61
hcaldqm::ContainerProf1D _cShapeCut_EChannel[2]
Definition: QIE11Task.h:59
dbs
Find files in dataset.
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::Container1D _cLETDCTime_EChannel[2]
Definition: QIE11Task.h:63
hcaldqm::ContainerSingleProf1D _cShapeCut
Definition: QIE11Task.h:68
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::Container2D _cLETDCvsADC_EChannel[10][2]
Definition: QIE11Task.h:60
void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0) override
int const FIBERCH_MIN
Definition: Constants.h:138
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
U second(std::pair< T, U > const &p)
ProcessingType _ptype
Definition: DQModule.h:44
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
hcaldqm::filter::HashFilter _filter_slot[2]
Definition: QIE11Task.h:52
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
Definition: QIE11Task.h:56
int const FIBER_uTCA_MIN1
Definition: Constants.h:132
std::string _name
Definition: DQModule.h:42
HcalElectronicsMap const * _emap
Definition: DQTask.h:81
hcaldqm::ContainerSingle1D _cADC
Definition: QIE11Task.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
void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerSingle2D _cLETDCTimevsADC
Definition: QIE11Task.h:70
virtual void initialize(FilterType ftype, hashfunctions::HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:17
std::string _subsystem
Definition: DQModule.h:49
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:567
hcaldqm::Container1D _cLETDC_EChannel[10][2]
Definition: QIE11Task.h:62
Readout chain identification for Hcal.
hcaldqm::ContainerSingle1D _cLETDC
Definition: QIE11Task.h:71
ib
Definition: cuy.py:661
hcaldqm::filter::HashFilter _filter_timingChannels[4]
Definition: QIE11Task.h:53

◆ fillDescriptions()

void QIE11Task::fillDescriptions ( edm::ConfigurationDescriptions _desc)
static

Definition at line 22 of file QIE11Task.cc.

References edm::ConfigurationDescriptions::addDefault(), submitPVResolutionJobs::desc, hcaldqm::DQTask::fillPSetDescription(), ProducerED_cfi::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

22  {
24 
25  //from class inheritance
27 
28  desc.addUntracked<std::string>("name", "QIE11Task");
29  desc.addUntracked<int>("debug", 0);
30  desc.addUntracked<int>("runkeyVal", 0);
31  desc.addUntracked<std::string>("runkeyName", "pp_run");
32  desc.addUntracked<edm::InputTag>("tagQIE11", edm::InputTag("hcalDigis"));
33  desc.addUntracked<double>("cut", 20);
34  desc.addUntracked<int>("ped", 4);
35  desc.addUntracked<int>("laserType", -1);
36  desc.addUntracked<int>("eventType", -1);
37 
38  _desc.addDefault(desc);
39 }
void addDefault(ParameterSetDescription const &psetDescription)
static void fillPSetDescription(edm::ParameterSetDescription &des)
Definition: DQTask.cc:26

◆ globalEndLuminosityBlock()

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

Definition at line 182 of file QIE11Task.cc.

182  {
183  // finish
184  DQTask::globalEndLuminosityBlock(lb, es);
185 }

Member Data Documentation

◆ _cADC

hcaldqm::ContainerSingle1D QIE11Task::_cADC
protected

Definition at line 72 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cADC_EChannel

hcaldqm::Container1D QIE11Task::_cADC_EChannel[10][2]
protected

Definition at line 64 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDC

hcaldqm::ContainerSingle1D QIE11Task::_cLETDC
protected

Definition at line 71 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDC_EChannel

hcaldqm::Container1D QIE11Task::_cLETDC_EChannel[10][2]
protected

Definition at line 62 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCTime_EChannel

hcaldqm::Container1D QIE11Task::_cLETDCTime_EChannel[2]
protected

Definition at line 63 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCTimevsADC

hcaldqm::ContainerSingle2D QIE11Task::_cLETDCTimevsADC
protected

Definition at line 70 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsADC

hcaldqm::ContainerSingle2D QIE11Task::_cLETDCvsADC
protected

Definition at line 69 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsADC_EChannel

hcaldqm::Container2D QIE11Task::_cLETDCvsADC_EChannel[10][2]
protected

Definition at line 60 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cLETDCvsTS_EChannel

hcaldqm::Container2D QIE11Task::_cLETDCvsTS_EChannel[2]
protected

Definition at line 61 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cOccupancy_depth

hcaldqm::Container2D QIE11Task::_cOccupancy_depth
protected

Definition at line 65 of file QIE11Task.h.

◆ _cShapeCut

hcaldqm::ContainerSingleProf1D QIE11Task::_cShapeCut
protected

Definition at line 68 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cShapeCut_EChannel

hcaldqm::ContainerProf1D QIE11Task::_cShapeCut_EChannel[2]
protected

Definition at line 59 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _cut

double QIE11Task::_cut
protected

Definition at line 45 of file QIE11Task.h.

Referenced by QIE11Task().

◆ _ehashmap

hcaldqm::electronicsmap::ElectronicsMap QIE11Task::_ehashmap
protected

Definition at line 56 of file QIE11Task.h.

Referenced by _process(), and bookHistograms().

◆ _eventType

int QIE11Task::_eventType
protected

Definition at line 48 of file QIE11Task.h.

Referenced by _isApplicable(), and QIE11Task().

◆ _filter_C34

hcaldqm::filter::HashFilter QIE11Task::_filter_C34
protected

Definition at line 51 of file QIE11Task.h.

Referenced by bookHistograms().

◆ _filter_slot

hcaldqm::filter::HashFilter QIE11Task::_filter_slot[2]
protected

Definition at line 52 of file QIE11Task.h.

Referenced by bookHistograms().

◆ _filter_timingChannels

hcaldqm::filter::HashFilter QIE11Task::_filter_timingChannels[4]
protected

Definition at line 53 of file QIE11Task.h.

Referenced by bookHistograms().

◆ _laserType

int QIE11Task::_laserType
protected

Definition at line 47 of file QIE11Task.h.

Referenced by _isApplicable(), and QIE11Task().

◆ _ped

int QIE11Task::_ped
protected

Definition at line 46 of file QIE11Task.h.

Referenced by QIE11Task().

◆ _tagQIE11

edm::InputTag QIE11Task::_tagQIE11
protected

Definition at line 37 of file QIE11Task.h.

Referenced by QIE11Task().

◆ _taguMN

edm::InputTag QIE11Task::_taguMN
protected

Definition at line 40 of file QIE11Task.h.

Referenced by QIE11Task().

◆ _tokQIE11

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

Definition at line 38 of file QIE11Task.h.

Referenced by _process(), and QIE11Task().

◆ _tokuMN

edm::EDGetTokenT<HcalUMNioDigi> QIE11Task::_tokuMN
protected

Definition at line 41 of file QIE11Task.h.

Referenced by _isApplicable(), and QIE11Task().

◆ hcalDbServiceToken_

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

Definition at line 42 of file QIE11Task.h.

Referenced by bookHistograms().