test
CMS 3D CMS Logo

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

#include <RawTask.h>

Inheritance diagram for RawTask:
hcaldqm::DQTask DQMEDAnalyzer hcaldqm::DQModule edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

virtual void beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
 RawTask (edm::ParameterSet const &)
 
virtual ~RawTask ()
 
- Public Member Functions inherited from hcaldqm::DQTask
virtual void analyze (edm::Event const &, edm::EventSetup const &)
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQTask (edm::ParameterSet const &)
 
virtual ~DQTask ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 
- Public Member Functions inherited from hcaldqm::DQModule
 DQModule (edm::ParameterSet const &)
 
virtual ~DQModule ()
 

Public Attributes

tuple rawTask
 

Protected Types

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

Protected Member Functions

virtual void _process (edm::Event const &, edm::EventSetup const &)
 
virtual void _resetMonitors (UpdateFreq)
 
- Protected Member Functions inherited from hcaldqm::DQTask
virtual int _getCalibType (edm::Event const &)
 
virtual bool _isApplicable (edm::Event const &)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Protected Attributes

Container2D _cBadQuality_depth
 
Container2D _cBadQuality_FEDuTCA
 
Container2D _cBadQuality_FEDVME
 
Container2D _cBadQualityLS_depth
 
ContainerSingleProf1D _cBadQualityvsBX
 
ContainerSingleProf1D _cBadQualityvsLS
 
Container2D _cBcnMsm_ElectronicsuTCA
 
Container2D _cBcnMsm_ElectronicsVME
 
Container2D _cEvnMsm_ElectronicsuTCA
 
Container2D _cEvnMsm_ElectronicsVME
 
Container2D _cOrnMsm_ElectronicsuTCA
 
Container2D _cOrnMsm_ElectronicsVME
 
ContainerSingle2D _cSummaryvsLS
 
Container2D _cSummaryvsLS_FED
 
electronicsmap::ElectronicsMap _ehashmap
 
HcalElectronicsMap const * _emap
 
HashFilter _filter_FEDsuTCA
 
HashFilter _filter_FEDsVME
 
HashFilter _filter_uTCA
 
HashFilter _filter_VME
 
edm::InputTag _tagFEDs
 
edm::InputTag _tagReport
 
edm::EDGetTokenT
< FEDRawDataCollection
_tokFEDs
 
edm::EDGetTokenT
< HcalUnpackerReport
_tokReport
 
std::vector< flag::Flag_vflags
 
std::vector< uint32_t > _vhashFEDs
 
ContainerXXX< uint32_t > _xBadQLS
 
ContainerXXX< uint32_t > _xBcnMsmLS
 
ContainerXXX< uint32_t > _xEvnMsmLS
 
- Protected Attributes inherited from hcaldqm::DQTask
ContainerI _cEvsPerLS
 
ContainerI _cEvsTotal
 
ContainerS _cProcessingTypeName
 
ContainerS _cRunKeyName
 
ContainerI _cRunKeyVal
 
int _procLSs
 
edm::InputTag _tagRaw
 
edm::EDGetTokenT
< FEDRawDataCollection
_tokRaw
 
std::vector< uint32_t > _vcdaqEids
 
ContainerXXX< uint32_t > _xQuality
 
- 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 edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
typedef CacheContexts< T...> CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T...> HasAbility
 
typedef
CacheTypes::LuminosityBlockCache 
LuminosityBlockCache
 
typedef
LuminosityBlockContextT
< LuminosityBlockCache,
RunCache, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr
< dqmDetails::NoCache
globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr
< dqmDetails::NoCache
globalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Detailed Description

Definition at line 26 of file RawTask.h.

Member Enumeration Documentation

enum RawTask::RawFlag
protected
Enumerator
fEvnMsm 
fBcnMsm 
fBadQ 
nRawFlag 

Definition at line 50 of file RawTask.h.

51  {
52  fEvnMsm = 0,
53  fBcnMsm = 1,
54  fBadQ = 2,
55  nRawFlag = 3
56  };

Constructor & Destructor Documentation

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

Definition at line 3 of file RawTask.cc.

References _tagFEDs, _tagReport, _tokFEDs, _tokReport, _vflags, fBadQ, fBcnMsm, fEvnMsm, edm::ParameterSet::getUntrackedParameter(), HLT_25ns10e33_v2_cff::InputTag, and nRawFlag.

3  :
4  DQTask(ps)
5 {
6  _tagFEDs = ps.getUntrackedParameter<edm::InputTag>("tagFEDs",
7  edm::InputTag("rawDataCollector"));
8  _tagReport = ps.getUntrackedParameter<edm::InputTag>("tagReport",
9  edm::InputTag("hcalDigis"));
10 
11  _tokFEDs = consumes<FEDRawDataCollection>(_tagFEDs);
12  _tokReport = consumes<HcalUnpackerReport>(_tagReport);
13 
14  _vflags.resize(nRawFlag);
15  _vflags[fEvnMsm]=flag::Flag("EvnMsm");
16  _vflags[fBcnMsm]=flag::Flag("BcnMsm");
17  _vflags[fBadQ]=flag::Flag("BadQ");
18 }
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:7
edm::EDGetTokenT< HcalUnpackerReport > _tokReport
Definition: RawTask.h:46
edm::EDGetTokenT< FEDRawDataCollection > _tokFEDs
Definition: RawTask.h:45
edm::InputTag _tagFEDs
Definition: RawTask.h:43
std::vector< flag::Flag > _vflags
Definition: RawTask.h:49
edm::InputTag _tagReport
Definition: RawTask.h:44
virtual RawTask::~RawTask ( )
inlinevirtual

Definition at line 30 of file RawTask.h.

30 {}

Member Function Documentation

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

Implements hcaldqm::DQTask.

Definition at line 187 of file RawTask.cc.

References _cBadQuality_depth, _cBadQuality_FEDuTCA, _cBadQuality_FEDVME, _cBadQualityvsBX, _cBadQualityvsLS, _cBcnMsm_ElectronicsuTCA, _cBcnMsm_ElectronicsVME, _cEvnMsm_ElectronicsuTCA, _cEvnMsm_ElectronicsVME, _cOrnMsm_ElectronicsuTCA, _cOrnMsm_ElectronicsVME, hcaldqm::DQModule::_currentLS, _ehashmap, _filter_FEDsuTCA, _filter_FEDsVME, hcaldqm::DQModule::_logger, hcaldqm::DQModule::_ptype, _tagFEDs, _tagReport, _tokFEDs, _tokReport, _xBadQLS, _xBcnMsmLS, _xEvnMsmLS, hcal::AMC13Header::AMCId(), hcal::AMC13Header::AMCPayload(), hcal::AMC13Header::AMCSize(), hcal::AMC13Header::AMCSlot(), edm::EventBase::bunchCrossing(), hcal::AMC13Header::bunchId(), HcalHTRData::check(), FEDRawData::data(), ecaldqm::dccId(), Logger::dqmthrow(), hcaldqm::constants::FED_VME_MIN, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::Container2D::fill(), hcaldqm::ContainerSingle1D::fill(), hcaldqm::filter::HashFilter::filter(), hcaldqm::fOnline, hcaldqm::ContainerXXX< STDTYPE >::get(), HcalDCCHeader::getBunchId(), HcalHTRData::getBunchNumber(), edm::Event::getByToken(), HcalDCCHeader::getDCCEventNumber(), HcalHTRData::getL1ANumber(), HcalDCCHeader::getOrbitNumber(), HcalHTRData::getOrbitNumber(), HcalDCCHeader::getSourceId(), HcalDCCHeader::getSpigotData(), edm::InputTag::instance(), HcalGenericDetId::isHcalDetId(), HcalElectronicsId::isVMEid(), hcal::AMC13Header::l1aNumber(), HcalUHTRData::l1ANumber(), edm::InputTag::label(), hcaldqm::electronicsmap::ElectronicsMap::lookup(), FEDNumbering::MAXHCALFEDID, FEDNumbering::MAXHCALuTCAFEDID, FEDNumbering::MINHCALFEDID, FEDNumbering::MINHCALuTCAFEDID, hcal::AMC13Header::NAMC(), hcal::AMC13Header::orbitNumber(), alignCSCRings::r, hcaldqm::constants::RAW_EMPTY, FEDRawData::size(), HcalDCCHeader::SPIGOT_COUNT, and hcaldqm::constants::SPIGOT_MAX.

189 {
192  if (!e.getByToken(_tokFEDs, craw))
193  _logger.dqmthrow("Collection FEDRawDataCollection isn't available"+
194  _tagFEDs.label()+" " +_tagFEDs.instance());
195  if (!e.getByToken(_tokReport, creport))
196  _logger.dqmthrow("Collection HcalUnpackerReport isn't available"+
198 
199  // extract some info
200  int bx = e.bunchCrossing();
201 
202 
203  int nn = 0;
204  // loop thru and fill the detIds with bad quality
205  // NOTE: Calibration Channels are skipped!
206  // TODO: Include for Online Calibration Channels marked as bad
207  // a comment below is left on purpose!
208  //_cBadQualityvsBX.fill(bx, creport->badQualityDigis());
209  for (std::vector<DetId>::const_iterator it=creport->bad_quality_begin();
210  it!=creport->bad_quality_end(); ++it)
211  {
212  if (!HcalGenericDetId(*it).isHcalDetId())
213  continue;
214 
215  nn++;
218  // ONLINE ONLY!
219  if (_ptype==fOnline)
220  _xBadQLS.get(eid)++;
221  if (eid.isVMEid())
222  {
223  if (_filter_FEDsVME.filter(eid))
224  continue;
226  }
227  else
228  {
229  if (_filter_FEDsuTCA.filter(eid))
230  continue;
232  }
233  }
235  _cBadQualityvsBX.fill(bx, nn);
236 
237  for (int fed=FEDNumbering::MINHCALFEDID;
238  fed<=FEDNumbering::MAXHCALuTCAFEDID; fed++)
239  {
240  // skip nonHCAL FEDs
241  if ((fed>FEDNumbering::MAXHCALFEDID &&
244  continue;
245  FEDRawData const& raw = craw->FEDData(fed);
246  if (raw.size()<constants::RAW_EMPTY)
247  continue;
248 
249  if (fed<=FEDNumbering::MAXHCALFEDID) // VME
250  {
251  HcalDCCHeader const* hdcc = (HcalDCCHeader const*)(raw.data());
252  if (!hdcc)
253  continue;
254 
255  uint32_t bcn = hdcc->getBunchId();
256  uint32_t orn = hdcc->getOrbitNumber();
257  uint32_t evn = hdcc->getDCCEventNumber();
259 
260  // iterate over spigots
261  HcalHTRData htr;
262  for (int is=0; is<HcalDCCHeader::SPIGOT_COUNT; is++)
263  {
264  int r = hdcc->getSpigotData(is, htr, raw.size());
265  if (r!=0 || !htr.check())
266  continue;
269  is, dccId);
270  if (_filter_FEDsVME.filter(eid))
271  continue;
272 
273  uint32_t htr_evn = htr.getL1ANumber();
274  uint32_t htr_orn = htr.getOrbitNumber();
275  uint32_t htr_bcn = htr.getBunchNumber();
276  bool qevn = (htr_evn!=evn);
277  bool qbcn = (htr_bcn!=bcn);
278  bool qorn = (htr_orn!=orn);
279  if (qevn)
280  {
282 
284  _xEvnMsmLS.get(eid)++;
285  }
286  if (qorn)
288  if (qbcn)
289  {
291 
293  _xBcnMsmLS.get(eid)++;
294  }
295  }
296  }
297  else // uTCA
298  {
299  hcal::AMC13Header const* hamc13 = (hcal::AMC13Header const*)
300  raw.data();
301  if (!hamc13)
302  continue;
303 
304  uint32_t bcn = hamc13->bunchId();
305  uint32_t orn = hamc13->orbitNumber();
306  uint32_t evn = hamc13->l1aNumber();
307  int namc = hamc13->NAMC();
308 
309  for (int iamc=0; iamc<namc; iamc++)
310  {
311  int slot = hamc13->AMCSlot(iamc);
312  int crate = hamc13->AMCId(iamc)&0xFF;
313  HcalElectronicsId eid(crate, slot, FIBER_uTCA_MIN1,
314  FIBERCH_MIN, false);
315  if (_filter_FEDsuTCA.filter(eid))
316  continue;
317  HcalUHTRData uhtr(hamc13->AMCPayload(iamc),
318  hamc13->AMCSize(iamc));
319 
320  uint32_t uhtr_evn = uhtr.l1ANumber();
321  uint32_t uhtr_bcn = uhtr.bunchNumber();
322  uint32_t uhtr_orn = uhtr.orbitNumber();
323  bool qevn = (uhtr_evn!=evn);
324  bool qbcn = (uhtr_bcn!=bcn);
325  bool qorn = (uhtr_orn!=orn);
326  if (qevn)
327  {
329 
330  if (_ptype==fOnline)
331  _xEvnMsmLS.get(eid)++;
332  }
333  if (qorn)
335  if (qbcn)
336  {
338 
339  if (_ptype==fOnline)
340  _xBcnMsmLS.get(eid)++;
341  }
342  }
343  }
344  }
345 }
ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:86
int const RAW_EMPTY
Definition: Constants.h:215
Container2D _cBadQuality_FEDuTCA
Definition: RawTask.h:73
electronicsmap::ElectronicsMap _ehashmap
Definition: RawTask.h:60
bool check() const
Check for a good event Requires a minimum length, matching wordcount and length, not an empty event...
Definition: HcalHTRData.cc:62
ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:86
ContainerSingleProf1D _cBadQualityvsLS
Definition: RawTask.h:76
Container2D _cBcnMsm_ElectronicsuTCA
Definition: RawTask.h:84
Container2D _cOrnMsm_ElectronicsuTCA
Definition: RawTask.h:85
ContainerSingleProf1D _cBadQualityvsBX
Definition: RawTask.h:77
ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:86
int l1aNumber() const
Definition: AMC13Header.h:19
int getSpigotData(int nspigot, HcalHTRData &decodeTool, int validSize) const
int const FIBER_VME_MIN
Definition: Constants.h:90
HashFilter _filter_FEDsuTCA
Definition: RawTask.h:69
unsigned int getOrbitNumber() const
Get the HTR orbit number.
Definition: HcalHTRData.cc:324
Container2D _cBadQuality_FEDVME
Definition: RawTask.h:72
size_t size() const
Lenght of the data buffer in bytes.
Definition: FEDRawData.h:47
int const FIBERCH_MIN
Definition: Constants.h:100
int AMCSize(int i) const
Definition: AMC13Header.h:37
Container2D _cBadQuality_depth
Definition: RawTask.h:74
int const SPIGOT_MAX
Definition: Constants.h:86
virtual void fill(HcalDetId const &)
Definition: Container2D.cc:59
unsigned int getOrbitNumber() const
Definition: HcalDCCHeader.h:46
int getBunchId() const
Definition: HcalDCCHeader.h:34
Container2D _cOrnMsm_ElectronicsVME
Definition: RawTask.h:82
ProcessingType _ptype
Definition: DQModule.h:59
int bunchId() const
Definition: AMC13Header.h:17
HashFilter _filter_FEDsVME
Definition: RawTask.h:68
void dqmthrow(std::string const &msg) const
Definition: Logger.h:15
int const FED_VME_MIN
Definition: Constants.h:47
int const FIBER_uTCA_MIN1
Definition: Constants.h:93
Container2D _cEvnMsm_ElectronicsVME
Definition: RawTask.h:80
Logger _logger
Definition: DQModule.h:70
edm::EDGetTokenT< HcalUnpackerReport > _tokReport
Definition: RawTask.h:46
edm::EDGetTokenT< FEDRawDataCollection > _tokFEDs
Definition: RawTask.h:45
bool isHcalDetId() const
int getSourceId() const
Definition: HcalDCCHeader.h:32
unsigned int orbitNumber() const
Definition: AMC13Header.h:23
bool isVMEid() const
uint32_t l1ANumber() const
Get the HTR event number.
Definition: HcalUHTRData.h:104
Container2D _cBcnMsm_ElectronicsVME
Definition: RawTask.h:81
std::string const & label() const
Definition: InputTag.h:36
edm::InputTag _tagFEDs
Definition: RawTask.h:43
int NAMC() const
Definition: AMC13Header.h:25
static const int SPIGOT_COUNT
Definition: HcalDCCHeader.h:19
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:243
int AMCSlot(int i) const
Definition: AMC13Header.h:33
const uint64_t * AMCPayload(int i) const
Definition: AMC13Header.cc:4
unsigned int getBunchNumber() const
Get the HTR bunch number.
Definition: HcalHTRData.h:115
const unsigned char * data() const
Return a const pointer to the beginning of the data buffer.
Definition: FEDRawData.cc:28
virtual bool filter(HcalDetId const &) const
Definition: HashFilter.cc:36
Container2D _cEvnMsm_ElectronicsuTCA
Definition: RawTask.h:83
edm::InputTag _tagReport
Definition: RawTask.h:44
uint16_t AMCId(int i) const
Definition: AMC13Header.h:31
unsigned int getL1ANumber() const
Get the HTR event number.
Definition: HcalHTRData.h:111
unsigned dccId(DetId const &)
unsigned long getDCCEventNumber() const
Definition: HcalDCCHeader.h:36
Readout chain identification for Hcal.
std::string const & instance() const
Definition: InputTag.h:37
void RawTask::_resetMonitors ( UpdateFreq  uf)
protectedvirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 181 of file RawTask.cc.

182 {
183  // base reset
184  DQTask::_resetMonitors(uf);
185 }
void RawTask::beginLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
virtual

Reimplemented from hcaldqm::DQTask.

Definition at line 347 of file RawTask.cc.

References hcaldqm::DQModule::_ptype, and hcaldqm::fOnline.

349 {
350  DQTask::beginLuminosityBlock(lb, es);
351 
352 // _cBadQualityvsLS.extendAxisRange(_currentLS);
353 
354  // ONLINE ONLY!
355  if (_ptype!=fOnline)
356  return;
357 // _cSummaryvsLS_FED.extendAxisRange(_currentLS);
358 // _cSummaryvsLS.extendAxisRange(_currentLS);
359 
360 }
ProcessingType _ptype
Definition: DQModule.h:59
void RawTask::bookHistograms ( DQMStore::IBooker ib,
edm::Run const &  r,
edm::EventSetup const &  es 
)
virtual

Reimplemented from hcaldqm::DQTask.

Definition at line 20 of file RawTask.cc.

References _cBadQuality_depth, _cBadQuality_FEDuTCA, _cBadQuality_FEDVME, _cBadQualityvsBX, _cBadQualityvsLS, _cBcnMsm_ElectronicsuTCA, _cBcnMsm_ElectronicsVME, _cEvnMsm_ElectronicsuTCA, _cEvnMsm_ElectronicsVME, _cOrnMsm_ElectronicsuTCA, _cOrnMsm_ElectronicsVME, _cSummaryvsLS, _cSummaryvsLS_FED, _ehashmap, _emap, _filter_FEDsuTCA, _filter_FEDsVME, _filter_uTCA, _filter_VME, hcaldqm::DQModule::_maxLS, hcaldqm::DQModule::_name, hcaldqm::DQModule::_ptype, hcaldqm::DQModule::_subsystem, _vflags, _vhashFEDs, _xBadQLS, _xBcnMsmLS, _xEvnMsmLS, hcaldqm::ContainerXXX< STDTYPE >::book(), hcaldqm::ContainerSingleProf1D::book(), hcaldqm::ContainerSingle2D::book(), hcaldqm::Container2D::book(), bookHistograms(), hcaldqm::constants::CRATE_uTCA_MIN, hcaldqm::constants::CRATE_VME_MIN, hcaldqm::quantity::fBX, hcaldqm::electronicsmap::fD2EHashMap, hcaldqm::quantity::fdepth, hcaldqm::utilities::fed2crate(), hcaldqm::constants::FED_VME_MIN, hcaldqm::hashfunctions::fElectronics, hcaldqm::quantity::fFED, hcaldqm::quantity::fFiberuTCAFiberCh, hcaldqm::quantity::fFiberVMEFiberCh, hcaldqm::filter::fFilter, hcaldqm::constants::FIBER_uTCA_MIN1, hcaldqm::constants::FIBER_VME_MIN, hcaldqm::constants::FIBERCH_MIN, hcaldqm::quantity::fieta, hcaldqm::quantity::fiphi, hcaldqm::quantity::fN, hcaldqm::quantity::fN_m0to10000, hcaldqm::fOffline, hcaldqm::fOnline, hcaldqm::filter::fPreserver, hcaldqm::quantity::fSlotuTCA, hcaldqm::quantity::fSpigot, hcaldqm::quantity::fState, edm::EventSetup::get(), hcaldqm::utilities::getFEDList(), hcaldqm::utilities::getFEDuTCAList(), hcaldqm::utilities::getFEDVMEList(), hcaldqm::ContainerSingleProf1D::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::ContainerXXX< STDTYPE >::initialize(), hcaldqm::ContainerSingle2D::initialize(), hcaldqm::filter::HashFilter::initialize(), hcaldqm::electronicsmap::ElectronicsMap::initialize(), hcaldqm::Container1D::setLumiFlag(), hcaldqm::constants::SLOT_uTCA_MIN, and hcaldqm::constants::SPIGOT_MIN.

22 {
24 
25  // GET WHAT YOU NEED
27  es.get<HcalDbRecord>().get(dbs);
28  _emap = dbs->getHcalMapping();
29  std::vector<int> vFEDs = utilities::getFEDList(_emap);
30  std::vector<int> vFEDsVME = utilities::getFEDVMEList(_emap);
31  std::vector<int> vFEDsuTCA = utilities::getFEDuTCAList(_emap);
32  std::vector<uint32_t> vVME;
33  std::vector<uint32_t> vuTCA;
34  std::vector<uint32_t> vhashFEDsVME;
35  std::vector<uint32_t> vhashFEDsuTCA;
39  FIBER_uTCA_MIN1, FIBERCH_MIN, false).rawId());
41  vVME);
43  vuTCA);
44 
45  for (std::vector<int>::const_iterator it=vFEDsVME.begin();
46  it!=vFEDsVME.end(); ++it)
47  {
48  vhashFEDsVME.push_back(HcalElectronicsId(constants::FIBERCH_MIN,
50  (*it)-constants::FED_VME_MIN).rawId());
53  (*it)-constants::FED_VME_MIN).rawId());
54  }
55  for (std::vector<int>::const_iterator it=vFEDsuTCA.begin();
56  it!=vFEDsuTCA.end(); ++it)
57  {
58  vhashFEDsuTCA.push_back(HcalElectronicsId(
60  FIBERCH_MIN, false).rawId());
61  _vhashFEDs.push_back(HcalElectronicsId(
63  FIBERCH_MIN, false).rawId());
64  }
66  hashfunctions::fFED, vhashFEDsVME);
68  hashfunctions::fFED, vhashFEDsuTCA);
69 
70  // INITIALIZE FIRST
73  new quantity::FEDQuantity(vFEDsVME),
78  new quantity::FEDQuantity(vFEDsVME),
83  new quantity::FEDQuantity(vFEDsVME),
88  new quantity::FEDQuantity(vFEDsuTCA),
93  new quantity::FEDQuantity(vFEDsuTCA),
98  new quantity::FEDQuantity(vFEDsuTCA),
101 
102  // Bad Quality
103  _cBadQuality_FEDVME.initialize(_name, "BadQuality",
108  _cBadQuality_FEDuTCA.initialize(_name, "BadQuality",
113  _cBadQualityvsLS.initialize(_name, "BadQualityvsLS",
116  _cBadQualityvsBX.initialize(_name, "BadQualityvsBX",
119  _cBadQuality_depth.initialize(_name, "BadQuality",
124 
125  // INITIALIZE HISTOGRAMS to be used in Online Only
126  if (_ptype==fOnline)
127  {
131  _cSummaryvsLS_FED.initialize(_name, "SummaryvsLS",
136  _cSummaryvsLS.initialize(_name, "SummaryvsLS",
138  new quantity::FEDQuantity(vFEDs),
140  }
141 
142  // BOOK HISTOGRAMS
149 
150 
156 
157  // BOOK HISTOGRAMS to be used in ONLINE ONLY!
158  if (_ptype==fOnline)
159  {
165  }
166 
167  // FOR OFFLINE PROCESSING MARK THESE HISTOGRAMS AS LUMI BASED
168  if (_ptype==fOffline)
169  {
175  }
176 
177  // initialize hash map
179 }
ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:86
virtual void initialize(std::string const &folder, Quantity *, Quantity *qy=new ValueQuantity(quantity::fN), int debug=0)
Container2D _cBadQuality_FEDuTCA
Definition: RawTask.h:73
int const CRATE_VME_MIN
Definition: Constants.h:60
uint16_t fed2crate(int fed)
Definition: Utilities.cc:12
electronicsmap::ElectronicsMap _ehashmap
Definition: RawTask.h:60
ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:86
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
ContainerSingleProf1D _cBadQualityvsLS
Definition: RawTask.h:76
Container2D _cBcnMsm_ElectronicsuTCA
Definition: RawTask.h:84
Container2D _cOrnMsm_ElectronicsuTCA
Definition: RawTask.h:85
int const SPIGOT_MIN
Definition: Constants.h:85
ContainerSingleProf1D _cBadQualityvsBX
Definition: RawTask.h:77
ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:86
int const FIBER_VME_MIN
Definition: Constants.h:90
HashFilter _filter_FEDsuTCA
Definition: RawTask.h:69
Container2D _cBadQuality_FEDVME
Definition: RawTask.h:72
void bookHistograms(fwlite::EventContainer &eventCont)
int const FIBERCH_MIN
Definition: Constants.h:100
Container2D _cBadQuality_depth
Definition: RawTask.h:74
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
Definition: Utilities.cc:71
Container2D _cOrnMsm_ElectronicsVME
Definition: RawTask.h:82
ProcessingType _ptype
Definition: DQModule.h:59
HashFilter _filter_uTCA
Definition: RawTask.h:67
HashFilter _filter_FEDsVME
Definition: RawTask.h:68
std::vector< uint32_t > _vhashFEDs
Definition: RawTask.h:63
int const FED_VME_MIN
Definition: Constants.h:47
virtual void initialize(std::string const &folder, hashfunctions::HashType, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fN), int debug=0)
Definition: Container2D.cc:32
int const FIBER_uTCA_MIN1
Definition: Constants.h:93
ContainerSingle2D _cSummaryvsLS
Definition: RawTask.h:89
Container2D _cEvnMsm_ElectronicsVME
Definition: RawTask.h:80
std::string _name
Definition: DQModule.h:57
int const CRATE_uTCA_MIN
Definition: Constants.h:65
Container2D _cSummaryvsLS_FED
Definition: RawTask.h:88
HashFilter _filter_VME
Definition: RawTask.h:66
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container2D.cc:895
virtual void book(HcalElectronicsMap const *)
Definition: ContainerXXX.h:93
virtual void initialize(std::string const &folder, Quantity *, Quantity *, Quantity *qz=new ValueQuantity(quantity::fN), int debug=0)
Container2D _cBcnMsm_ElectronicsVME
Definition: RawTask.h:81
std::vector< flag::Flag > _vflags
Definition: RawTask.h:49
virtual void setLumiFlag()
std::vector< int > getFEDList(HcalElectronicsMap const *)
Definition: Utilities.cc:47
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
Definition: Utilities.cc:97
Container2D _cEvnMsm_ElectronicsuTCA
Definition: RawTask.h:83
std::string _subsystem
Definition: DQModule.h:64
virtual void initialize(hashfunctions::HashType, int debug=0)
Definition: ContainerXXX.h:85
virtual void initialize(FilterType ftype, HashType htype, std::vector< uint32_t > const &)
Definition: HashFilter.cc:26
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
Readout chain identification for Hcal.
int const SLOT_uTCA_MIN
Definition: Constants.h:72
HcalElectronicsMap const * _emap
Definition: RawTask.h:59
void RawTask::endLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
virtual

Reimplemented from hcaldqm::DQTask.

Definition at line 362 of file RawTask.cc.

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

364 {
365  if (_ptype!=fOnline)
366  return;
367 
368  //
369  // GENERATE STATUS ONLY FOR ONLINE!
370  //
371  for (std::vector<uint32_t>::const_iterator it=_vhashFEDs.begin();
372  it!=_vhashFEDs.end(); ++it)
373  {
374  flag::Flag fSum("RAW");
376 
377  std::vector<uint32_t>::const_iterator cit=std::find(
378  _vcdaqEids.begin(), _vcdaqEids.end(), *it);
379  if (cit==_vcdaqEids.end())
380  {
381  // not @cDAQ
382  for (uint32_t iflag=0; iflag<_vflags.size(); iflag++)
383  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag),
384  int(flag::fNCDAQ));
386  continue;
387  }
388 
389  // FED is @cDAQ
390  if (utilities::isFEDHBHE(eid) || utilities::isFEDHF(eid) ||
391  utilities::isFEDHO(eid))
392  {
393  if (_xEvnMsmLS.get(eid)>0)
394  _vflags[fEvnMsm]._state = flag::fBAD;
395  else
396  _vflags[fEvnMsm]._state = flag::fGOOD;
397  if (_xBcnMsmLS.get(eid)>0)
398  _vflags[fBcnMsm]._state = flag::fBAD;
399  else
400  _vflags[fBcnMsm]._state = flag::fGOOD;
401  if (_xBadQLS.get(eid)>0)
402  _vflags[fBadQ]._state = flag::fBAD;
403  else
404  _vflags[fBadQ]._state = flag::fGOOD;
405  }
406 
407  int iflag=0;
408  // iterate over all flags:
409  // - sum them all up in summary flag for this FED
410  // - reset each flag right after using it
411  for (std::vector<flag::Flag>::iterator ft=_vflags.begin();
412  ft!=_vflags.end(); ++ft)
413  {
414  _cSummaryvsLS_FED.setBinContent(eid, _currentLS, int(iflag),
415  ft->_state);
416  fSum+=(*ft);
417  iflag++;
418 
419  // this is the MUST! We don't keep flags per FED, reset
420  // each one of them after using
421  ft->reset();
422  }
423  _cSummaryvsLS.setBinContent(eid, _currentLS, fSum._state);
424  }
425 
426  // reset...
428 
429  // in the end always do the DQTask::endLumi
430  DQTask::endLuminosityBlock(lb, es);
431 }
ContainerXXX< uint32_t > _xEvnMsmLS
Definition: RawTask.h:86
virtual void setBinContent(HcalDetId const &, int)
Definition: Container2D.cc:235
ContainerXXX< uint32_t > _xBcnMsmLS
Definition: RawTask.h:86
ContainerXXX< uint32_t > _xBadQLS
Definition: RawTask.h:86
virtual void reset()
Definition: ContainerXXX.h:342
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
ProcessingType _ptype
Definition: DQModule.h:59
virtual void setBinContent(int, int, int)
std::vector< uint32_t > _vhashFEDs
Definition: RawTask.h:63
ContainerSingle2D _cSummaryvsLS
Definition: RawTask.h:89
Container2D _cSummaryvsLS_FED
Definition: RawTask.h:88
bool isFEDHBHE(HcalElectronicsId const &)
Definition: Utilities.cc:124
std::vector< flag::Flag > _vflags
Definition: RawTask.h:49
virtual STDTYPE & get(HcalDetId const &)
Definition: ContainerXXX.h:243
bool isFEDHO(HcalElectronicsId const &)
Definition: Utilities.cc:171
std::vector< uint32_t > _vcdaqEids
Definition: DQTask.h:65
Readout chain identification for Hcal.
bool isFEDHF(HcalElectronicsId const &)
Definition: Utilities.cc:146

Member Data Documentation

Container2D RawTask::_cBadQuality_depth
protected

Definition at line 74 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cBadQuality_FEDuTCA
protected

Definition at line 73 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cBadQuality_FEDVME
protected

Definition at line 72 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cBadQualityLS_depth
protected

Definition at line 75 of file RawTask.h.

ContainerSingleProf1D RawTask::_cBadQualityvsBX
protected

Definition at line 77 of file RawTask.h.

Referenced by _process(), and bookHistograms().

ContainerSingleProf1D RawTask::_cBadQualityvsLS
protected

Definition at line 76 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cBcnMsm_ElectronicsuTCA
protected

Definition at line 84 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cBcnMsm_ElectronicsVME
protected

Definition at line 81 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cEvnMsm_ElectronicsuTCA
protected

Definition at line 83 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cEvnMsm_ElectronicsVME
protected

Definition at line 80 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cOrnMsm_ElectronicsuTCA
protected

Definition at line 85 of file RawTask.h.

Referenced by _process(), and bookHistograms().

Container2D RawTask::_cOrnMsm_ElectronicsVME
protected

Definition at line 82 of file RawTask.h.

Referenced by _process(), and bookHistograms().

ContainerSingle2D RawTask::_cSummaryvsLS
protected

Definition at line 89 of file RawTask.h.

Referenced by bookHistograms(), and endLuminosityBlock().

Container2D RawTask::_cSummaryvsLS_FED
protected

Definition at line 88 of file RawTask.h.

Referenced by bookHistograms(), and endLuminosityBlock().

electronicsmap::ElectronicsMap RawTask::_ehashmap
protected

Definition at line 60 of file RawTask.h.

Referenced by _process(), and bookHistograms().

HcalElectronicsMap const* RawTask::_emap
protected

Definition at line 59 of file RawTask.h.

Referenced by bookHistograms().

HashFilter RawTask::_filter_FEDsuTCA
protected

Definition at line 69 of file RawTask.h.

Referenced by _process(), and bookHistograms().

HashFilter RawTask::_filter_FEDsVME
protected

Definition at line 68 of file RawTask.h.

Referenced by _process(), and bookHistograms().

HashFilter RawTask::_filter_uTCA
protected

Definition at line 67 of file RawTask.h.

Referenced by bookHistograms().

HashFilter RawTask::_filter_VME
protected

Definition at line 66 of file RawTask.h.

Referenced by bookHistograms().

edm::InputTag RawTask::_tagFEDs
protected

Definition at line 43 of file RawTask.h.

Referenced by _process(), and RawTask().

edm::InputTag RawTask::_tagReport
protected

Definition at line 44 of file RawTask.h.

Referenced by _process(), and RawTask().

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

Definition at line 45 of file RawTask.h.

Referenced by _process(), and RawTask().

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

Definition at line 46 of file RawTask.h.

Referenced by _process(), and RawTask().

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

Definition at line 49 of file RawTask.h.

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

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

Definition at line 63 of file RawTask.h.

Referenced by bookHistograms(), and endLuminosityBlock().

ContainerXXX<uint32_t> RawTask::_xBadQLS
protected

Definition at line 86 of file RawTask.h.

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

ContainerXXX<uint32_t> RawTask::_xBcnMsmLS
protected

Definition at line 86 of file RawTask.h.

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

ContainerXXX<uint32_t> RawTask::_xEvnMsmLS
protected

Definition at line 86 of file RawTask.h.

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

tuple RawTask.rawTask
Initial value:
1 = cms.EDAnalyzer(
2  "RawTask",
3 
4  # standard parameters
5  name = cms.untracked.string("RawTask"),
6  debug = cms.untracked.int32(0),
7  runkeyVal = cms.untracked.int32(0),
8  runkeyName = cms.untracked.string("pp_run"),
9  ptype = cms.untracked.int32(0),
10  mtype = cms.untracked.bool(True),
11  subsystem = cms.untracked.string("Hcal"),
12 
13  # tags
14  tagFEDs = cms.untracked.InputTag("rawDataCollector"),
15  tagReport = cms.untracked.InputTag("hcalDigis")
16 )

Definition at line 5 of file RawTask.py.