diff --git a/CalibCalorimetry/HcalPlugins/src/HcalTimeSlewEP.cc b/CalibCalorimetry/HcalPlugins/src/HcalTimeSlewEP.cc index 98140fc863328..7b4678e3854fa 100644 --- a/CalibCalorimetry/HcalPlugins/src/HcalTimeSlewEP.cc +++ b/CalibCalorimetry/HcalPlugins/src/HcalTimeSlewEP.cc @@ -47,27 +47,97 @@ void HcalTimeSlewEP::setIntervalFor(const edm::eventsetup::EventSetupRecordKey& } void HcalTimeSlewEP::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + // HcalTimeSlewEP edm::ParameterSetDescription desc; - - edm::ParameterSetDescription desc_M2; - desc_M2.add("tzero"); - desc_M2.add("slope"); - desc_M2.add("tmax"); - std::vector default_M2(1); - desc.addVPSet("timeSlewParametersM2", desc_M2, default_M2); - - edm::ParameterSetDescription desc_M3; - desc_M3.add("cap"); - desc_M3.add("tspar0"); - desc_M3.add("tspar1"); - desc_M3.add("tspar2"); - desc_M3.add("tspar0_siPM"); - desc_M3.add("tspar1_siPM"); - desc_M3.add("tspar2_siPM"); - std::vector default_M3(1); - desc.addVPSet("timeSlewParametersM3", desc_M3, default_M3); - - descriptions.addDefault(desc); + desc.add("appendToDataLabel", "HBHE"); + { + edm::ParameterSetDescription vpsd1; + vpsd1.add("tzero", 23.960177); + vpsd1.add("slope", -3.178648); + vpsd1.add("tmax", 16.0); + std::vector temp1; + temp1.reserve(3); + { + edm::ParameterSet temp2; + temp2.addParameter("tzero", 23.960177); + temp2.addParameter("slope", -3.178648); + temp2.addParameter("tmax", 16.0); + temp1.push_back(temp2); + } + { + edm::ParameterSet temp2; + temp2.addParameter("tzero", 11.977461); + temp2.addParameter("slope", -1.5610227); + temp2.addParameter("tmax", 10.0); + temp1.push_back(temp2); + } + { + edm::ParameterSet temp2; + temp2.addParameter("tzero", 9.109694); + temp2.addParameter("slope", -1.075824); + temp2.addParameter("tmax", 6.25); + temp1.push_back(temp2); + } + desc.addVPSet("timeSlewParametersM2", vpsd1, temp1); + } + { + edm::ParameterSetDescription vpsd1; + vpsd1.add("cap", 6.0); + vpsd1.add("tspar0", 12.2999); + vpsd1.add("tspar1", -2.19142); + vpsd1.add("tspar2", 0.0); + vpsd1.add("tspar0_siPM", 0.0); + vpsd1.add("tspar1_siPM", 0.0); + vpsd1.add("tspar2_siPM", 0.0); + std::vector temp1; + temp1.reserve(4); + { + edm::ParameterSet temp2; + temp2.addParameter("cap", 6.0); + temp2.addParameter("tspar0", 12.2999); + temp2.addParameter("tspar1", -2.19142); + temp2.addParameter("tspar2", 0.0); + temp2.addParameter("tspar0_siPM", 0.0); + temp2.addParameter("tspar1_siPM", 0.0); + temp2.addParameter("tspar2_siPM", 0.0); + temp1.push_back(temp2); + } + { + edm::ParameterSet temp2; + temp2.addParameter("cap", 6.0); + temp2.addParameter("tspar0", 15.5); + temp2.addParameter("tspar1", -3.2); + temp2.addParameter("tspar2", 32.0); + temp2.addParameter("tspar0_siPM", 0.0); + temp2.addParameter("tspar1_siPM", 0.0); + temp2.addParameter("tspar2_siPM", 0.0); + temp1.push_back(temp2); + } + { + edm::ParameterSet temp2; + temp2.addParameter("cap", 6.0); + temp2.addParameter("tspar0", 12.2999); + temp2.addParameter("tspar1", -2.19142); + temp2.addParameter("tspar2", 0.0); + temp2.addParameter("tspar0_siPM", 0.0); + temp2.addParameter("tspar1_siPM", 0.0); + temp2.addParameter("tspar2_siPM", 0.0); + temp1.push_back(temp2); + } + { + edm::ParameterSet temp2; + temp2.addParameter("cap", 6.0); + temp2.addParameter("tspar0", 12.2999); + temp2.addParameter("tspar1", -2.19142); + temp2.addParameter("tspar2", 0.0); + temp2.addParameter("tspar0_siPM", 0.0); + temp2.addParameter("tspar1_siPM", 0.0); + temp2.addParameter("tspar2_siPM", 0.0); + temp1.push_back(temp2); + } + desc.addVPSet("timeSlewParametersM3", vpsd1, temp1); + } + descriptions.addWithDefaultLabel(desc); } // ------------ method called to produce the data ------------ diff --git a/CalibTracker/SiPixelESProducers/plugins/SiPixelTemplateDBObjectESProducer.cc b/CalibTracker/SiPixelESProducers/plugins/SiPixelTemplateDBObjectESProducer.cc index 5586ec5840149..9eec8c2bb70fd 100644 --- a/CalibTracker/SiPixelESProducers/plugins/SiPixelTemplateDBObjectESProducer.cc +++ b/CalibTracker/SiPixelESProducers/plugins/SiPixelTemplateDBObjectESProducer.cc @@ -17,23 +17,24 @@ #include +#include "CalibTracker/Records/interface/SiPixelTemplateDBObjectESProducerRcd.h" +#include "CondFormats/SiPixelObjects/interface/SiPixelTemplateDBObject.h" #include "FWCore/Framework/interface/ESProducer.h" +#include "FWCore/Framework/interface/ModuleFactory.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/Utilities/interface/ESProductTag.h" #include "FWCore/Utilities/interface/do_nothing_deleter.h" - -#include "FWCore/Framework/interface/ModuleFactory.h" #include "MagneticField/Engine/interface/MagneticField.h" -#include "CondFormats/SiPixelObjects/interface/SiPixelTemplateDBObject.h" -#include "CalibTracker/Records/interface/SiPixelTemplateDBObjectESProducerRcd.h" - using namespace edm; class SiPixelTemplateDBObjectESProducer : public edm::ESProducer { public: SiPixelTemplateDBObjectESProducer(const edm::ParameterSet& iConfig); std::shared_ptr produce(const SiPixelTemplateDBObjectESProducerRcd&); + static void fillDescriptions(ConfigurationDescriptions& descriptions); private: edm::ESGetToken magfieldToken_; @@ -73,4 +74,9 @@ std::shared_ptr SiPixelTemplateDBObjectESProducer return std::shared_ptr(&dbobject, edm::do_nothing_deleter()); } +void SiPixelTemplateDBObjectESProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + descriptions.addWithDefaultLabel(desc); +} + DEFINE_FWK_EVENTSETUP_MODULE(SiPixelTemplateDBObjectESProducer); diff --git a/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.cc b/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.cc index 260ca08f4829f..13a6d7d8ecb33 100644 --- a/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.cc +++ b/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.cc @@ -4,6 +4,8 @@ #include "Geometry/CaloTopology/interface/EcalEndcapTopology.h" #include "Geometry/CaloTopology/interface/EcalPreshowerTopology.h" #include "DataFormats/EcalDetId/interface/EcalSubdetector.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" CaloTopologyBuilder::CaloTopologyBuilder(const edm::ParameterSet& /*iConfig*/) : geometryToken_{setWhatProduced(this, &CaloTopologyBuilder::produceCalo) @@ -26,3 +28,8 @@ CaloTopologyBuilder::ReturnType CaloTopologyBuilder::produceCalo(const CaloTopol ct->setSubdetTopology(DetId::Ecal, EcalPreshower, std::make_unique()); return ct; } + +void CaloTopologyBuilder::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + descriptions.addWithDefaultLabel(desc); +} diff --git a/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.h b/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.h index cb9ae65c4a434..75d868aa95aa6 100644 --- a/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.h +++ b/Geometry/CaloEventSetup/plugins/CaloTopologyBuilder.h @@ -40,6 +40,8 @@ class CaloTopologyBuilder : public edm::ESProducer { ReturnType produceCalo(const CaloTopologyRecord&); + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + private: // ----------member data --------------------------- edm::ESGetToken geometryToken_; diff --git a/RecoLocalCalo/CaloTowersCreator/src/CaloTowersCreator.cc b/RecoLocalCalo/CaloTowersCreator/src/CaloTowersCreator.cc index 94a3084a36ca6..cb29430f47285 100644 --- a/RecoLocalCalo/CaloTowersCreator/src/CaloTowersCreator.cc +++ b/RecoLocalCalo/CaloTowersCreator/src/CaloTowersCreator.cc @@ -488,5 +488,5 @@ void CaloTowersCreator::fillDescriptions(edm::ConfigurationDescriptions& descrip desc.add("HcalPhase", 0); desc.add("usePFThresholdsFromDB", true); desc.add("EcalRecHitThresh", false); - descriptions.addDefault(desc); + descriptions.addWithDefaultLabel(desc); } diff --git a/RecoLocalCalo/EcalRecProducers/plugins/ESRecHitProducer.cc b/RecoLocalCalo/EcalRecProducers/plugins/ESRecHitProducer.cc index 63e996dfd8629..10e85d3ec2b05 100644 --- a/RecoLocalCalo/EcalRecProducers/plugins/ESRecHitProducer.cc +++ b/RecoLocalCalo/EcalRecProducers/plugins/ESRecHitProducer.cc @@ -8,7 +8,9 @@ #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/stream/EDProducer.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "RecoLocalCalo/EcalRecProducers/interface/ESRecHitWorkerFactory.h" #include "ESRecHitWorker.h" @@ -18,6 +20,8 @@ class ESRecHitProducer : public edm::stream::EDProducer<> { explicit ESRecHitProducer(const edm::ParameterSet& ps); void produce(edm::Event& e, const edm::EventSetup& es) override; + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + private: const edm::EDGetTokenT digiToken_; const std::string rechitCollection_; // secondary name to be given to collection of hits @@ -57,5 +61,14 @@ void ESRecHitProducer::produce(edm::Event& e, const edm::EventSetup& es) { e.put(std::move(rec), rechitCollection_); } +void ESRecHitProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("ESrechitCollection", "EcalRecHitsES"); + desc.add("ESdigiCollection", edm::InputTag("ecalPreshowerDigis")); + desc.add("algo", "ESRecHitWorker"); + desc.add("ESRecoAlgo", 0); + descriptions.addWithDefaultLabel(desc); +} + #include "FWCore/Framework/interface/MakerMacros.h" DEFINE_FWK_MODULE(ESRecHitProducer); diff --git a/RecoLocalCalo/HcalRecAlgos/plugins/HcalChannelPropertiesEP.cc b/RecoLocalCalo/HcalRecAlgos/plugins/HcalChannelPropertiesEP.cc index e9ea228b97193..5b3656663897b 100644 --- a/RecoLocalCalo/HcalRecAlgos/plugins/HcalChannelPropertiesEP.cc +++ b/RecoLocalCalo/HcalRecAlgos/plugins/HcalChannelPropertiesEP.cc @@ -1,29 +1,25 @@ -#include "FWCore/Framework/interface/ESProducer.h" -#include "FWCore/Utilities/interface/ESGetToken.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "CalibFormats/HcalObjects/interface/HcalDbService.h" #include "CalibFormats/HcalObjects/interface/HcalDbRecord.h" - -#include "DataFormats/HcalDetId/interface/HcalGenericDetId.h" -#include "DataFormats/HcalDetId/interface/HcalSubdetector.h" - -#include "CondFormats/HcalObjects/interface/HcalRecoParams.h" +#include "CalibFormats/HcalObjects/interface/HcalDbService.h" +#include "CondFormats/DataRecord/interface/HcalPFCutsRcd.h" #include "CondFormats/DataRecord/interface/HcalRecoParamsRcd.h" - #include "CondFormats/HcalObjects/interface/HcalPFCuts.h" -#include "CondFormats/DataRecord/interface/HcalPFCutsRcd.h" - +#include "CondFormats/HcalObjects/interface/HcalRecoParams.h" +#include "DataFormats/HcalDetId/interface/HcalGenericDetId.h" +#include "DataFormats/HcalDetId/interface/HcalSubdetector.h" +#include "FWCore/Framework/interface/ESProducer.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "FWCore/Utilities/interface/ESGetToken.h" #include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/CaloGeometryRecord.h" #include "Geometry/CaloTopology/interface/HcalTopology.h" #include "Geometry/HcalTowerAlgo/interface/HcalGeometry.h" - -#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputer.h" -#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputerRcd.h" +#include "Geometry/Records/interface/CaloGeometryRecord.h" #include "RecoLocalCalo/HcalRecAlgos/interface/HcalChannelProperties.h" #include "RecoLocalCalo/HcalRecAlgos/interface/HcalChannelPropertiesAuxRecord.h" #include "RecoLocalCalo/HcalRecAlgos/interface/HcalChannelPropertiesRecord.h" +#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputer.h" +#include "RecoLocalCalo/HcalRecAlgos/interface/HcalSeverityLevelComputerRcd.h" class HcalChannelPropertiesEP : public edm::ESProducer { public: @@ -52,6 +48,11 @@ class HcalChannelPropertiesEP : public edm::ESProducer { inline ~HcalChannelPropertiesEP() override {} + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + descriptions.addWithDefaultLabel(desc); + } + ReturnType1 produce1(const HcalChannelPropertiesAuxRecord& rcd) { const HcalTopology& htopo = rcd.get(topoToken_); const HcalRecoParams& params = rcd.get(paramsToken_); diff --git a/RecoLocalCalo/HcalRecProducers/src/HBHEPhase1Reconstructor.cc b/RecoLocalCalo/HcalRecProducers/src/HBHEPhase1Reconstructor.cc index 58a82cbfcc79f..5c18e46346048 100644 --- a/RecoLocalCalo/HcalRecProducers/src/HBHEPhase1Reconstructor.cc +++ b/RecoLocalCalo/HcalRecProducers/src/HBHEPhase1Reconstructor.cc @@ -210,7 +210,7 @@ namespace { psdigi.getParameter("nominalPedestal"), psdigi.getParameter("hitEnergyMinimum"), psdigi.getParameter("hitMultiplicityThreshold"), - psdigi.getParameter >("pulseShapeParameterSets")); + psdigi.getParameter>("pulseShapeParameterSets")); } std::unique_ptr parse_HBHEPulseShapeFlagSetter(const edm::ParameterSet& psPulseShape, @@ -225,20 +225,20 @@ namespace { psPulseShape.getParameter("R45PlusOneRange"), psPulseShape.getParameter("R45MinusOneRange"), psPulseShape.getParameter("TrianglePeakTS"), - psPulseShape.getParameter >("LinearThreshold"), - psPulseShape.getParameter >("LinearCut"), - psPulseShape.getParameter >("RMS8MaxThreshold"), - psPulseShape.getParameter >("RMS8MaxCut"), - psPulseShape.getParameter >("LeftSlopeThreshold"), - psPulseShape.getParameter >("LeftSlopeCut"), - psPulseShape.getParameter >("RightSlopeThreshold"), - psPulseShape.getParameter >("RightSlopeCut"), - psPulseShape.getParameter >("RightSlopeSmallThreshold"), - psPulseShape.getParameter >("RightSlopeSmallCut"), - psPulseShape.getParameter >("TS4TS5LowerThreshold"), - psPulseShape.getParameter >("TS4TS5LowerCut"), - psPulseShape.getParameter >("TS4TS5UpperThreshold"), - psPulseShape.getParameter >("TS4TS5UpperCut"), + psPulseShape.getParameter>("LinearThreshold"), + psPulseShape.getParameter>("LinearCut"), + psPulseShape.getParameter>("RMS8MaxThreshold"), + psPulseShape.getParameter>("RMS8MaxCut"), + psPulseShape.getParameter>("LeftSlopeThreshold"), + psPulseShape.getParameter>("LeftSlopeCut"), + psPulseShape.getParameter>("RightSlopeThreshold"), + psPulseShape.getParameter>("RightSlopeCut"), + psPulseShape.getParameter>("RightSlopeSmallThreshold"), + psPulseShape.getParameter>("RightSlopeSmallCut"), + psPulseShape.getParameter>("TS4TS5LowerThreshold"), + psPulseShape.getParameter>("TS4TS5LowerCut"), + psPulseShape.getParameter>("TS4TS5UpperThreshold"), + psPulseShape.getParameter>("TS4TS5UpperCut"), psPulseShape.getParameter("UseDualFit"), psPulseShape.getParameter("TriangleIgnoreSlow"), setLegacyFlags); @@ -761,46 +761,287 @@ void HBHEPhase1Reconstructor::beginRun(edm::Run const& r, edm::EventSetup const& void HBHEPhase1Reconstructor::endRun(edm::Run const&, edm::EventSetup const&) { reco_->endRun(); } -#define add_param_set(name) /**/ \ - edm::ParameterSetDescription name; \ - name.setAllowAnything(); \ - desc.add(#name, name) - // ------------ method fills 'descriptions' with the allowed parameters for the module ------------ void HBHEPhase1Reconstructor::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + // hbheprereco edm::ParameterSetDescription desc; - - desc.add("digiLabelQIE8"); - desc.add("digiLabelQIE11"); - desc.add("algoConfigClass"); - desc.add("processQIE8"); - desc.add("processQIE11"); - desc.add("saveInfos"); - desc.add("saveDroppedInfos"); - desc.add("makeRecHits"); - desc.add("dropZSmarkedPassed"); - desc.add("tsFromDB"); - desc.add("recoParamsFromDB"); + desc.add("digiLabelQIE8", edm::InputTag("hcalDigis")); + desc.add("processQIE8", true); + desc.add("digiLabelQIE11", edm::InputTag("hcalDigis")); + desc.add("processQIE11", true); + desc.add("tsFromDB", false); + desc.add("recoParamsFromDB", true); desc.add("saveEffectivePedestal", false); - desc.add("use8ts", false); + desc.add("dropZSmarkedPassed", true); + desc.add("makeRecHits", true); + desc.add("saveInfos", false); + desc.add("saveDroppedInfos", false); + desc.add("use8ts", true); desc.add("sipmQTSShift", 0); desc.add("sipmQNTStoSum", 3); - desc.add("setNegativeFlagsQIE8"); - desc.add("setNegativeFlagsQIE11"); - desc.add("setNoiseFlagsQIE8"); - desc.add("setNoiseFlagsQIE11"); - desc.add("setPulseShapeFlagsQIE8"); - desc.add("setPulseShapeFlagsQIE11"); - desc.add("setLegacyFlagsQIE8"); - desc.add("setLegacyFlagsQIE11"); - - desc.add("algorithm", fillDescriptionForParseHBHEPhase1Algo()); - add_param_set(flagParametersQIE8); - add_param_set(flagParametersQIE11); - add_param_set(pulseShapeParametersQIE8); - add_param_set(pulseShapeParametersQIE11); - - descriptions.addDefault(desc); + { + edm::ParameterSetDescription psd0; + psd0.add("applyTimeSlewM3", true); + psd0.add("timeSlewParsType", 3); + psd0.add("respCorrM3", 1.0); + psd0.add("applyPedConstraint", true); + psd0.add("applyTimeConstraint", true); + psd0.add("applyPulseJitter", false); + psd0.add("applyTimeSlew", true); + psd0.add("ts4Min", 0.0); + psd0.add>("ts4Max", + { + 100.0, + 20000.0, + 30000, + }); + psd0.add("pulseJitter", 1.0); + psd0.add("meanPed", 0.0); + psd0.add("meanTime", 0.0); + psd0.add("timeSigmaHPD", 5.0); + psd0.add("timeSigmaSiPM", 2.5); + psd0.add("timeMin", -12.5); + psd0.add("timeMax", 12.5); + psd0.add>("ts4chi2", + { + 15.0, + 15.0, + }); + psd0.add("fitTimes", 1); + psd0.add("firstSampleShift", 0); + psd0.add("samplesToAdd", 2); + psd0.add("correctForPhaseContainment", true); + psd0.add("correctionPhaseNS", 6.0); + psd0.add("applyFixPCC", false); + psd0.add("calculateArrivalTime", true); + psd0.add("timeAlgo", 2); + psd0.add("thEnergeticPulses", 5.0); + psd0.add("dynamicPed", false); + psd0.add("ts4Thresh", 0.0); + psd0.add("chiSqSwitch", 15.0); + psd0.add>("activeBXs", + { + -3, + -2, + -1, + 0, + 1, + 2, + 3, + 4, + }); + psd0.add("nMaxItersMin", 500); + psd0.add("nMaxItersNNLS", 500); + psd0.add("deltaChiSqThresh", 0.001); + psd0.add("nnlsThresh", 1e-11); + psd0.add("Class", "SimpleHBHEPhase1Algo"); + psd0.add("tdcTimeShift", 0.0); + psd0.add("useM2", false); + psd0.add("useM3", true); + psd0.add("useMahi", true); + psd0.add("applyLegacyHBMCorrection", true); + desc.add("algorithm", psd0); + } + desc.add("algoConfigClass", ""); + desc.add("setNegativeFlagsQIE8", true); + desc.add("setNegativeFlagsQIE11", false); + desc.add("setNoiseFlagsQIE8", true); + desc.add("setNoiseFlagsQIE11", false); + desc.add("setPulseShapeFlagsQIE8", true); + desc.add("setPulseShapeFlagsQIE11", false); + desc.add("setLegacyFlagsQIE8", true); + desc.add("setLegacyFlagsQIE11", false); + { + edm::ParameterSetDescription psd0; + psd0.add("nominalPedestal", 3.0); + psd0.add("hitEnergyMinimum", 1.0); + psd0.add("hitMultiplicityThreshold", 17); + { + edm::ParameterSetDescription vpsd2; + vpsd2.add>("pulseShapeParameters", + { + 0.0, + 100.0, + -50.0, + 0.0, + -15.0, + 0.15, + }); + std::vector temp2; + temp2.reserve(4); + { + edm::ParameterSet temp3; + temp3.addParameter>("pulseShapeParameters", + { + 0.0, + 100.0, + -50.0, + 0.0, + -15.0, + 0.15, + }); + temp2.push_back(temp3); + } + { + edm::ParameterSet temp3; + temp3.addParameter>("pulseShapeParameters", + { + 100.0, + 2000.0, + -50.0, + 0.0, + -5.0, + 0.05, + }); + temp2.push_back(temp3); + } + { + edm::ParameterSet temp3; + temp3.addParameter>("pulseShapeParameters", + { + 2000.0, + 1000000.0, + -50.0, + 0.0, + 95.0, + 0.0, + }); + temp2.push_back(temp3); + } + { + edm::ParameterSet temp3; + temp3.addParameter>("pulseShapeParameters", + { + -1000000.0, + 1000000.0, + 45.0, + 0.1, + 1000000.0, + 0.0, + }); + temp2.push_back(temp3); + } + psd0.addVPSet("pulseShapeParameterSets", vpsd2, temp2); + } + desc.add("flagParametersQIE8", psd0); + } + { + edm::ParameterSetDescription psd0; + desc.add("flagParametersQIE11", psd0); + } + { + edm::ParameterSetDescription psd0; + psd0.add("MinimumChargeThreshold", 20); + psd0.add("TS4TS5ChargeThreshold", 70); + psd0.add("TS3TS4ChargeThreshold", 70); + psd0.add("TS3TS4UpperChargeThreshold", 20); + psd0.add("TS5TS6ChargeThreshold", 70); + psd0.add("TS5TS6UpperChargeThreshold", 20); + psd0.add("R45PlusOneRange", 0.2); + psd0.add("R45MinusOneRange", 0.2); + psd0.add("TrianglePeakTS", 10000); + psd0.add>("LinearThreshold", + { + 20, + 100, + 100000, + }); + psd0.add>("LinearCut", + { + -3, + -0.054, + -0.054, + }); + psd0.add>("RMS8MaxThreshold", + { + 20, + 100, + 100000, + }); + psd0.add>("RMS8MaxCut", + { + -13.5, + -11.5, + -11.5, + }); + psd0.add>("LeftSlopeThreshold", + { + 250, + 500, + 100000, + }); + psd0.add>("LeftSlopeCut", + { + 5, + 2.55, + 2.55, + }); + psd0.add>("RightSlopeThreshold", + { + 250, + 400, + 100000, + }); + psd0.add>("RightSlopeCut", + { + 5, + 4.15, + 4.15, + }); + psd0.add>("RightSlopeSmallThreshold", + { + 150, + 200, + 100000, + }); + psd0.add>("RightSlopeSmallCut", + { + 1.08, + 1.16, + 1.16, + }); + psd0.add("MinimumTS4TS5Threshold", 100); + psd0.add>("TS4TS5UpperThreshold", + { + 70, + 90, + 100, + 400, + }); + psd0.add>("TS4TS5UpperCut", + { + 1, + 0.8, + 0.75, + 0.72, + }); + psd0.add>("TS4TS5LowerThreshold", + { + 100, + 120, + 160, + 200, + 300, + 500, + }); + psd0.add>("TS4TS5LowerCut", + { + -1, + -0.7, + -0.5, + -0.4, + -0.3, + 0.1, + }); + psd0.add("UseDualFit", true); + psd0.add("TriangleIgnoreSlow", false); + desc.add("pulseShapeParametersQIE8", psd0); + } + { + edm::ParameterSetDescription psd0; + desc.add("pulseShapeParametersQIE11", psd0); + } + descriptions.addWithDefaultLabel(desc); } //define this as a plug-in diff --git a/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.cc b/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.cc index 75db587198313..46ed267d52a9b 100644 --- a/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.cc +++ b/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.cc @@ -5,14 +5,14 @@ #include "RPCRecHitProducer.h" -#include "Geometry/RPCGeometry/interface/RPCRoll.h" #include "DataFormats/MuonDetId/interface/RPCDetId.h" #include "DataFormats/RPCRecHit/interface/RPCRecHit.h" - -#include "RPCRecHitAlgoFactory.h" #include "DataFormats/RPCRecHit/interface/RPCRecHitCollection.h" - #include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/ParameterSet/interface/ParameterSetDescription.h" +#include "Geometry/RPCGeometry/interface/RPCRoll.h" +#include "RPCRecHitAlgoFactory.h" #include #include @@ -160,3 +160,18 @@ void RPCRecHitProducer::produce(Event& event, const EventSetup& setup) { event.put(std::move(recHitCollection)); } + +void RPCRecHitProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + { + edm::ParameterSetDescription psd0; + desc.add("recAlgoConfig", psd0); + } + desc.add("recAlgo", "RPCRecHitStandardAlgo"); + desc.add("rpcDigiLabel", edm::InputTag("muonRPCDigis")); + desc.add("maskSource", "File"); + desc.add("maskvecfile", edm::FileInPath("RecoLocalMuon/RPCRecHit/data/RPCMaskVec.dat")); + desc.add("deadSource", "File"); + desc.add("deadvecfile", edm::FileInPath("RecoLocalMuon/RPCRecHit/data/RPCDeadVec.dat")); + descriptions.addWithDefaultLabel(desc); +} diff --git a/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.h b/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.h index e64aa8446502e..34257d0d2f4f7 100644 --- a/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.h +++ b/RecoLocalMuon/RPCRecHit/plugins/RPCRecHitProducer.h @@ -26,7 +26,7 @@ class RPCRecHitProducer : public edm::stream::EDProducer<> { RPCRecHitProducer(const edm::ParameterSet& config); /// Destructor - ~RPCRecHitProducer() override {} + ~RPCRecHitProducer() override = default; // Method that access the EventSetup for each run void beginRun(const edm::Run&, const edm::EventSetup&) override; @@ -34,6 +34,9 @@ class RPCRecHitProducer : public edm::stream::EDProducer<> { /// The method which produces the rechits void produce(edm::Event& event, const edm::EventSetup& setup) override; + /// fillDescriptions + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + private: // The label to be used to retrieve RPC digis from the event const edm::EDGetTokenT theRPCDigiLabel; diff --git a/TrackingTools/MaterialEffects/plugins/PropagatorWithMaterialESProducer.cc b/TrackingTools/MaterialEffects/plugins/PropagatorWithMaterialESProducer.cc index 94edd0f278a10..a365f447ac2dc 100644 --- a/TrackingTools/MaterialEffects/plugins/PropagatorWithMaterialESProducer.cc +++ b/TrackingTools/MaterialEffects/plugins/PropagatorWithMaterialESProducer.cc @@ -1,11 +1,11 @@ -#include "PropagatorWithMaterialESProducer.h" -#include "TrackingTools/MaterialEffects/interface/PropagatorWithMaterial.h" - -#include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/ESHandle.h" -#include "FWCore/Framework/interface/ModuleFactory.h" #include "FWCore/Framework/interface/ESProducer.h" +#include "FWCore/Framework/interface/EventSetup.h" +#include "FWCore/Framework/interface/ModuleFactory.h" +#include "FWCore/ParameterSet/interface/allowedValues.h" #include "FWCore/Utilities/interface/ESInputTag.h" +#include "PropagatorWithMaterialESProducer.h" +#include "TrackingTools/MaterialEffects/interface/PropagatorWithMaterial.h" #include #include @@ -48,13 +48,14 @@ std::unique_ptr PropagatorWithMaterialESProducer::produce(const Trac void PropagatorWithMaterialESProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { ParameterSetDescription desc; - desc.add("PropagationDirection"); + desc.ifValue(edm::ParameterDescription("PropagationDirection", "alongMomentum", true), + edm::allowedValues("oppositeToMomentum", "alongMomentum", "anyDirection")); desc.add("SimpleMagneticField", ""); - desc.add("ComponentName"); - desc.add("Mass"); - desc.add("MaxDPhi"); - desc.add("useRungeKutta"); + desc.add("ComponentName", ""); + desc.add("Mass", 0.); + desc.add("MaxDPhi", 0.); + desc.add("useRungeKutta", false); desc.add("useOldAnalPropLogic", true); desc.add("ptMin", -1.0); - descriptions.addDefault(desc); + descriptions.addWithDefaultLabel(desc); }