From b3d52cba0b14f889633d319d0bc7f94841bc95d7 Mon Sep 17 00:00:00 2001 From: mmusich Date: Fri, 8 Jan 2021 18:58:01 +0100 Subject: [PATCH] refine TrackerRemapper: add fillDescriptions --- .../plugins/TrackerRemapper.cc | 127 +++++++----------- DQM/TrackerRemapper/test/ConfFile_cfg.py | 17 ++- 2 files changed, 59 insertions(+), 85 deletions(-) diff --git a/DQM/TrackerRemapper/plugins/TrackerRemapper.cc b/DQM/TrackerRemapper/plugins/TrackerRemapper.cc index af290542d22a5..038033a1ace21 100644 --- a/DQM/TrackerRemapper/plugins/TrackerRemapper.cc +++ b/DQM/TrackerRemapper/plugins/TrackerRemapper.cc @@ -33,6 +33,8 @@ #include "FWCore/Framework/interface/one/EDAnalyzer.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/EmptyGroupDescription.h" +#include "FWCore/ParameterSet/interface/allowedValues.h" #include "FWCore/ServiceRegistry/interface/Service.h" #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" @@ -89,8 +91,6 @@ class TrackerRemapper : public edm::one::EDAnalyzer { template void analyzeGeneric(const edm::Event& iEvent, const edm::EDGetTokenT& src); void analyzeRechits(const edm::Event& iEvent, const edm::EDGetTokenT& src); - // void analyzeDigis(const edm::Event& iEvent); - // void analyzeClusters(const edm::Event& iEvent); void fillStripRemap(); void fillPixelRemap(const TrackerGeometry* theTrackerGeometry, const TrackerTopology* tt); @@ -104,8 +104,8 @@ class TrackerRemapper : public edm::one::EDAnalyzer { edm::Service fs; const edm::ParameterSet& iConfig; - unsigned opMode; - unsigned analyzeMode; + int opMode; + int analyzeMode; std::map bins; std::vector detIdVector; @@ -159,31 +159,36 @@ void TrackerRemapper::analyzeGeneric(const edm::Event& iEvent, const edm::EDGetT analyzeRechits(iEvent, t); } +//***************************************************************// TrackerRemapper::TrackerRemapper(const edm::ParameterSet& iConfig) - : iConfig(iConfig), - opMode(iConfig.getUntrackedParameter("opMode")), - analyzeMode(iConfig.getUntrackedParameter("analyzeMode")), - stripRemapFile(iConfig.getUntrackedParameter("stripRemapFile")), - stripDesiredHistogram(iConfig.getUntrackedParameter("stripHistogram")), - runString(iConfig.getUntrackedParameter("runString")) { + : geomToken_(esConsumes()), + topoToken_(esConsumes()), + tkDetMapToken_(esConsumes()), + iConfig(iConfig), + opMode(iConfig.getParameter("opMode")), + analyzeMode(iConfig.getParameter("analyzeMode")) { usesResource("TFileService"); - pixelRemapFile = std::string("DQM_V0001_PixelPhase1_R000305516.root"); + if (opMode == MODE_REMAP) { + stripRemapFile = iConfig.getParameter("stripRemapFile"); + stripDesiredHistogram = iConfig.getParameter("stripHistogram"); + runString = iConfig.getParameter("runString"); - stripBaseDir = std::string("DQMData/Run " + runString + "/SiStrip/Run summary/MechanicalView/"); - pixelBaseDir = std::string("DQMData/Run " + runString + "/PixelPhase1/Run summary/Phase1_MechanicalView/"); + pixelRemapFile = std::string("DQM_V0001_PixelPhase1_R000305516.root"); - pixelDesiredHistogramBarrel = std::string("adc_per_SignedModule_per_SignedLadder"); - pixelDesiredHistogramDisk = std::string("adc_per_PXDisk_per_SignedBladePanel"); + stripBaseDir = std::string("DQMData/Run " + runString + "/SiStrip/Run summary/MechanicalView/"); + pixelBaseDir = std::string("DQMData/Run " + runString + "/PixelPhase1/Run summary/Phase1_MechanicalView/"); - prepareStripNames(); - preparePixelNames(); + pixelDesiredHistogramBarrel = std::string("adc_per_SignedModule_per_SignedLadder"); + pixelDesiredHistogramDisk = std::string("adc_per_PXDisk_per_SignedBladePanel"); - analyzeModeNameMap[RECHITS] = "# Rechits"; - analyzeModeNameMap[DIGIS] = "# Digis"; - analyzeModeNameMap[CLUSTERS] = "# Clusters"; + prepareStripNames(); + preparePixelNames(); + } else if (opMode == MODE_ANALYZE) { + analyzeModeNameMap[RECHITS] = "# Rechits"; + analyzeModeNameMap[DIGIS] = "# Digis"; + analyzeModeNameMap[CLUSTERS] = "# Clusters"; - if (opMode == MODE_ANALYZE) { switch (analyzeMode) { case RECHITS: rechitSrcToken = consumes(iConfig.getParameter("src")); @@ -197,6 +202,8 @@ TrackerRemapper::TrackerRemapper(const edm::ParameterSet& iConfig) default: edm::LogError("LogicError") << "Unrecognized analyze mode!" << std::endl; } + } else { + throw cms::Exception("TrackerRemapper") << "Unrecognized operations mode!" << std::endl; } // TColor::SetPalette(1); @@ -318,7 +325,6 @@ void TrackerRemapper::analyze(const edm::Event& iEvent, const edm::EventSetup& i break; case AnalyzeData::CLUSTERS: analyzeGeneric(iEvent, clusterSrcToken); - // analyzeClusters(iEvent); break; default: edm::LogError("LogicError") << "Unrecognized Analyze mode!" << std::endl; @@ -611,62 +617,31 @@ void TrackerRemapper::beginJob() {} void TrackerRemapper::endJob() {} -void TrackerRemapper::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { - //The following says we do not know what parameters are allowed so do no validation - // Please change this to state exactly what you do use, even if it is no parameters +//***************************************************************// +void TrackerRemapper::fillDescriptions(edm::ConfigurationDescriptions& descriptions) +//***************************************************************// +{ edm::ParameterSetDescription desc; - desc.setUnknown(); - descriptions.addDefault(desc); + desc.setComment( + "Creates TH2Poly Strip Tracker maps by either analyzing the event or remapping exising DQM historams"); + desc.add("src", edm::InputTag("generalTracks")); + desc.ifValue(edm::ParameterDescription("opMode", 0, true), + 0 >> edm::EmptyGroupDescription() or + 1 >> (edm::ParameterDescription("stripRemapFile", "", true) and + edm::ParameterDescription("stripHistogram", "", true) and + edm::ParameterDescription("runString", "", true))) + ->setComment("0 for Analyze, 1 for Remap"); + + desc.ifValue(edm::ParameterDescription("analyzeMode", 1, true), edm::allowedValues(1, 2, 3)) + ->setComment("1=Rechits, 2=Digis, 3=Clusters"); + + //desc.add("analyzeMode", 1)->setComment("1=Rechits, 2=Digis, 3=Clusters"); + //desc.add("opMode", 0)->setComment("0 for Analyze, 1 for Remap"); + //desc.addOptional("stripRemapFile","" )->setComment("file name to analyze, will come from the config file"); + //desc.addOptional("stripHistogram","TkHMap_NumberValidHits" )->setComment("histogram to use to remap"); + //desc.addOptional("runString", "")->setComment("run number, will come form config file"); + descriptions.addWithDefaultLabel(desc); } -/* - ----------------------------- REDUNDANT STAFF ----------------------------- -*/ - -// void TrackerRemapper::analyzeDigis(const edm::Event& iEvent) -// { -// // static ? -// auto srcToken = consumes>(iConfig.getParameter("src")); - -// edm::Handle> input; -// iEvent.getByToken(srcToken, input); -// if (!input.isValid()) -// { -// LogInfo("Analyzer") << "edm::DetSetVector not found... Aborting...\n"; -// return; -// } - -// edm::DetSetVector::const_iterator it; -// for (it = input->begin(); it != input->end(); ++it) -// { -// auto id = DetId(it->detId()); -// // NDIGIS -// trackerMap->Fill(TString::Format("%ld", (long)id.rawId()), it->size()); -// } -// } - -// void TrackerRemapper::analyzeClusters(const edm::Event& iEvent) -// { -// // static ? -// // auto srcToken = consumes>(iConfig.getParameter("src")); - -// edm::Handle> input; -// iEvent.getByToken(clusterSrcToken, input); - -// if (!input.isValid()) -// { -// edm::LogError("TrackerRemapper") << "edm::DetSetVector not found... Aborting...\n"; -// return; -// } - -// edmNew::DetSetVector::const_iterator it; -// for (it = input->begin(); it != input->end(); ++it) -// { -// auto id = DetId(it->detId()); -// // NCLUSTERS -// trackerMap->Fill(TString::Format("%ld", (long)id.rawId()), it->size()); -// } -// } - //define this as a plug-in DEFINE_FWK_MODULE(TrackerRemapper); diff --git a/DQM/TrackerRemapper/test/ConfFile_cfg.py b/DQM/TrackerRemapper/test/ConfFile_cfg.py index 799f8893ed1ae..1c396858681c5 100644 --- a/DQM/TrackerRemapper/test/ConfFile_cfg.py +++ b/DQM/TrackerRemapper/test/ConfFile_cfg.py @@ -45,8 +45,7 @@ VarParsing.VarParsing.varType.string, "Strip Detector Histogram to Remap") -options.register ( - "src", +options.register ("src", dataSourceDic[defaultAnylyzeMode], VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, @@ -80,13 +79,13 @@ runNumber = str(int(options.inputRootFile.split("_")[-1].split(".")[0][1:])) process.demo = cms.EDAnalyzer('TrackerRemapper', - opMode = cms.untracked.uint32(options.opMode), - analyzeMode = cms.untracked.uint32(options.analyzeMode), - stripRemapFile = cms.untracked.string(options.inputRootFile), - stripHistogram = cms.untracked.string(options.stripHistogram), - runString = cms.untracked.string(runNumber), - src = cms.InputTag(options.src), - ) + opMode = cms.int32(options.opMode), + analyzeMode = cms.int32(options.analyzeMode), + #stripRemapFile = cms.string(options.inputRootFile), + #stripHistogram = cms.string(options.stripHistogram), + #runString = cms.string(runNumber), + src = cms.InputTag(options.src), + ) process.p = cms.Path(process.demo)