Skip to content

Commit

Permalink
Merge pull request #38158 from abhih1/ChangeforPU
Browse files Browse the repository at this point in the history
Changes to get the PU info from OnlineMetaData stream [Master]
  • Loading branch information
cmsbuild committed Jun 2, 2022
2 parents 82cdcb2 + 1b4042a commit ec10677
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 20 deletions.
3 changes: 2 additions & 1 deletion DQM/EcalMonitorTasks/BuildFile.xml
Expand Up @@ -9,7 +9,8 @@
<use name="DataFormats/TCDS"/>
<use name="DataFormats/L1GlobalTrigger"/>
<use name="DataFormats/L1GlobalMuonTrigger"/>
<use name="DataFormats/Scalers"/> <!-- needed in UBSAN builds for typeinfo for LumiScalers -->
<use name="DataFormats/Luminosity"/>
<use name="DataFormats/OnlineMetaData"/>
<use name="FWCore/Framework"/>
<use name="FWCore/MessageLogger"/>
<use name="FWCore/ParameterSet"/>
Expand Down
6 changes: 3 additions & 3 deletions DQM/EcalMonitorTasks/interface/OccupancyTask.h
Expand Up @@ -11,7 +11,7 @@
#include "CalibCalorimetry/EcalLaserCorrection/interface/EcalLaserDbService.h"
#include "DataFormats/Provenance/interface/Timestamp.h"
#include "FWCore/Framework/interface/ConsumesCollector.h"
#include "DataFormats/Scalers/interface/LumiScalers.h"
#include "DataFormats/OnlineMetaData/interface/OnlineLuminosityRecord.h"

namespace ecaldqm {
class OccupancyTask : public DQWorkerTask {
Expand Down Expand Up @@ -40,8 +40,8 @@ namespace ecaldqm {
float recHitThreshold_;
float tpThreshold_;
edm::TimeValue_t m_iTime;
edm::InputTag lumiTag;
edm::EDGetTokenT<LumiScalersCollection> lumiScalersToken_;
edm::InputTag metadataTag;
edm::EDGetTokenT<OnlineLuminosityRecord> metaDataToken_;
double scal_pu;
bool FindPUinLS = false;
int nEv;
Expand Down
4 changes: 2 additions & 2 deletions DQM/EcalMonitorTasks/python/OccupancyTask_cfi.py
Expand Up @@ -8,8 +8,8 @@
params = cms.untracked.PSet(
recHitThreshold = cms.untracked.double(recHitThreshold),
tpThreshold = cms.untracked.double(tpThreshold),
scalers = cms.InputTag('hltScalersRawToDigi'),
lumiCheck = cms.untracked.bool(lumiCheck)
metadata = cms.InputTag('onlineMetaDataDigis'),
lumiCheck = cms.untracked.bool(lumiCheck)
),
MEs = cms.untracked.PSet(
TrendNTPDigi = cms.untracked.PSet(
Expand Down
16 changes: 7 additions & 9 deletions DQM/EcalMonitorTasks/src/OccupancyTask.cc
Expand Up @@ -5,15 +5,14 @@
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Framework/interface/ConsumesCollector.h"
#include "FWCore/Framework/interface/Event.h"
#include "DataFormats/Scalers/interface/LumiScalers.h"

namespace ecaldqm {
OccupancyTask::OccupancyTask() : DQWorkerTask(), recHitThreshold_(0.), tpThreshold_(0.), m_iTime(0.) {}

void OccupancyTask::setParams(edm::ParameterSet const& _params) {
recHitThreshold_ = _params.getUntrackedParameter<double>("recHitThreshold");
tpThreshold_ = _params.getUntrackedParameter<double>("tpThreshold");
lumiTag = _params.getParameter<edm::InputTag>("scalers");
metadataTag = _params.getParameter<edm::InputTag>("metadata");
lumiCheck_ = _params.getUntrackedParameter<bool>("lumiCheck", false);
if (!onlineMode_) {
MEs_.erase(std::string("PU"));
Expand All @@ -26,7 +25,7 @@ namespace ecaldqm {

void OccupancyTask::setTokens(edm::ConsumesCollector& _collector) {
lasertoken_ = _collector.esConsumes();
lumiScalersToken_ = _collector.consumes<LumiScalersCollection>(lumiTag);
metaDataToken_ = _collector.consumes<OnlineLuminosityRecord>(metadataTag);
}

bool OccupancyTask::filterRunType(short const* _runType) {
Expand Down Expand Up @@ -85,12 +84,11 @@ namespace ecaldqm {
if (lumiCheck_ && FindPUinLS) {
scal_pu = -1.;
MESet& mePU(static_cast<MESet&>(MEs_.at("PU")));
edm::Handle<LumiScalersCollection> lumiScalers;
_evt.getByToken(lumiScalersToken_, lumiScalers);
if (lumiScalers.isValid() and not lumiScalers->empty()) {
auto scalit = lumiScalers->begin();
scal_pu = scalit->pileup();
}
edm::Handle<OnlineLuminosityRecord> metaData;
_evt.getByToken(metaDataToken_, metaData);

if (metaData.isValid())
scal_pu = metaData->avgPileUp();
mePU.fill(getEcalDQMSetupObjects(), double(scal_pu));
FindPUinLS = false;
}
Expand Down
10 changes: 5 additions & 5 deletions DQM/Integration/python/clients/ecal_dqm_sourceclient-live_cfg.py
Expand Up @@ -136,10 +136,10 @@
process.tcdsDigis = tcdsRawToDigi.clone(
InputLabel = "rawDataCollector"
)
###### LumiScalars to get the PU/luminosity info ######
process.hltScalersRawToDigi = cms.EDProducer( "ScalersRawToDigi",
scalersInputTag = cms.InputTag( "rawDataCollector" )
)

###### For OnlineLuminosityRecord to get the PU/luminosity info ######
process.load('EventFilter.OnlineMetaDataRawToDigi.onlineMetaDataRawToDigi_cfi')
process.onlineMetaDataDigis = cms.EDProducer('OnlineMetaDataRawToDigi')

process.dqmEnv.subSystemFolder = 'Ecal'
process.dqmSaver.tag = 'Ecal'
Expand Down Expand Up @@ -173,7 +173,7 @@

### Paths ###

process.ecalMonitorPath = cms.Path(process.hltScalersRawToDigi+process.preScaler+process.ecalPreRecoSequence+process.ecalPhysicsFilter+process.ecalRecoSequence+process.tcdsDigis+process.ecalMonitorTask)
process.ecalMonitorPath = cms.Path(process.onlineMetaDataDigis+process.preScaler+process.ecalPreRecoSequence+process.ecalPhysicsFilter+process.ecalRecoSequence+process.tcdsDigis+process.ecalMonitorTask)
process.ecalClientPath = cms.Path(process.preScaler+process.ecalPreRecoSequence+process.ecalPhysicsFilter+process.ecalMonitorClient)

process.dqmEndPath = cms.EndPath(process.dqmEnv)
Expand Down

0 comments on commit ec10677

Please sign in to comment.