CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Attributes
HcalHardcodeCalibrations Class Reference

#include <HcalHardcodeCalibrations.h>

Inheritance diagram for HcalHardcodeCalibrations:
edm::ESProducer edm::EventSetupRecordIntervalFinder edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Member Functions

 HcalHardcodeCalibrations (const edm::ParameterSet &)
 
 ~HcalHardcodeCalibrations () override
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
 ESProducer (const ESProducer &)=delete
 
ESProxyIndex const * getTokenIndices (unsigned int iIndex) const
 
ESProducer const & operator= (const ESProducer &)=delete
 
template<typename Record >
void updateFromMayConsumes (unsigned int iIndex, const Record &iRecord)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &) final
 
 ~ESProducer ()(false) override
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
 ESProxyFactoryProducer (const ESProxyFactoryProducer &)=delete
 
const ESProxyFactoryProduceroperator= (const ESProxyFactoryProducer &)=delete
 
 ~ESProxyFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
void createKeyedProxies (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
 DataProxyProvider ()
 
 DataProxyProvider (const DataProxyProvider &)=delete
 
const ComponentDescriptiondescription () const
 
void fillRecordsNotAllowingConcurrentIOVs (std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
 
virtual void initConcurrentIOVs (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
bool isUsingRecord (const EventSetupRecordKey &key) const
 
KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey, unsigned int iovIndex=0)
 
const DataProxyProvideroperator= (const DataProxyProvider &)=delete
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider () noexcept(false)
 
- Public Member Functions inherited from edm::EventSetupRecordIntervalFinder
bool concurrentFinder () const
 
const eventsetup::ComponentDescriptiondescriptionForFinder () const
 
 EventSetupRecordIntervalFinder ()
 
 EventSetupRecordIntervalFinder (const EventSetupRecordIntervalFinder &)=delete
 
std::set< eventsetup::EventSetupRecordKeyfindingForRecords () const
 
const ValidityIntervalfindIntervalFor (const eventsetup::EventSetupRecordKey &, const IOVSyncValue &)
 
bool nonconcurrentAndIOVNeedsUpdate (const eventsetup::EventSetupRecordKey &key, const IOVSyncValue &syncValue) const
 
const EventSetupRecordIntervalFinderoperator= (const EventSetupRecordIntervalFinder &)=delete
 
void resetInterval (const eventsetup::EventSetupRecordKey &)
 
void setDescriptionForFinder (const eventsetup::ComponentDescription &iDescription)
 
virtual ~EventSetupRecordIntervalFinder () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 

Protected Member Functions

std::unique_ptr< HcalChannelQualityproduceChannelQuality (const HcalChannelQualityRcd &rcd)
 
std::unique_ptr< HcalDcsMapproduceDcsMap (const HcalDcsMapRcd &rcd)
 
std::unique_ptr< HcalDcsValuesproduceDcsValues (const HcalDcsRcd &rcd)
 
std::unique_ptr< HcalPedestalsproduceEffectivePedestals (const HcalPedestalsRcd &rcd)
 
std::unique_ptr< HcalPedestalWidthsproduceEffectivePedestalWidths (const HcalPedestalWidthsRcd &rcd)
 
std::unique_ptr< HcalElectronicsMapproduceElectronicsMap (const HcalElectronicsMapRcd &rcd)
 
std::unique_ptr< HcalFlagHFDigiTimeParamsproduceFlagHFDigiTimeParams (const HcalFlagHFDigiTimeParamsRcd &rcd)
 
std::unique_ptr< HcalFrontEndMapproduceFrontEndMap (const HcalFrontEndMapRcd &rcd)
 
std::unique_ptr< HcalGainsproduceGains (const HcalGainsRcd &rcd)
 
std::unique_ptr< HcalGainWidthsproduceGainWidths (const HcalGainWidthsRcd &rcd)
 
std::unique_ptr< HcalL1TriggerObjectsproduceL1TriggerObjects (const HcalL1TriggerObjectsRcd &rcd)
 
std::unique_ptr< HcalLongRecoParamsproduceLongRecoParams (const HcalLongRecoParamsRcd &rcd)
 
std::unique_ptr< HcalLUTCorrsproduceLUTCorrs (const HcalLUTCorrsRcd &rcd)
 
std::unique_ptr< HcalLutMetadataproduceLutMetadata (const HcalLutMetadataRcd &rcd)
 
std::unique_ptr< HcalMCParamsproduceMCParams (const HcalMCParamsRcd &rcd)
 
std::unique_ptr< HcalPedestalsproducePedestals (const HcalPedestalsRcd &rcd)
 
std::unique_ptr< HcalPedestalsproducePedestals_ (const HcalPedestalsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
 
std::unique_ptr< HcalPedestalWidthsproducePedestalWidths (const HcalPedestalWidthsRcd &rcd)
 
std::unique_ptr< HcalPedestalWidthsproducePedestalWidths_ (const HcalPedestalWidthsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
 
std::unique_ptr< HcalPFCorrsproducePFCorrs (const HcalPFCorrsRcd &rcd)
 
std::unique_ptr< HcalQIEDataproduceQIEData (const HcalQIEDataRcd &rcd)
 
std::unique_ptr< HcalQIETypesproduceQIETypes (const HcalQIETypesRcd &rcd)
 
std::unique_ptr< HcalRecoParamsproduceRecoParams (const HcalRecoParamsRcd &rcd)
 
std::unique_ptr< HcalRespCorrsproduceRespCorrs (const HcalRespCorrsRcd &rcd)
 
std::unique_ptr< HcalSiPMCharacteristicsproduceSiPMCharacteristics (const HcalSiPMCharacteristicsRcd &rcd)
 
std::unique_ptr< HcalSiPMParametersproduceSiPMParameters (const HcalSiPMParametersRcd &rcd)
 
std::unique_ptr< HcalTimeCorrsproduceTimeCorrs (const HcalTimeCorrsRcd &rcd)
 
std::unique_ptr< HcalTimingParamsproduceTimingParams (const HcalTimingParamsRcd &rcd)
 
std::unique_ptr< HcalTPChannelParametersproduceTPChannelParameters (const HcalTPChannelParametersRcd &rcd)
 
std::unique_ptr< HcalTPParametersproduceTPParameters (const HcalTPParametersRcd &rcd)
 
std::unique_ptr< HcalValidationCorrsproduceValidationCorrs (const HcalValidationCorrsRcd &rcd)
 
std::unique_ptr< HcalZDCLowGainFractionsproduceZDCLowGainFractions (const HcalZDCLowGainFractionsRcd &rcd)
 
std::unique_ptr< HcalZSThresholdsproduceZSThresholds (const HcalZSThresholdsRcd &rcd)
 
void setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override
 
- Protected Member Functions inherited from edm::ESProducer
template<typename T >
auto setWhatProduced (T *iThis, const es::Label &iLabel={})
 
template<typename T >
auto setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
auto setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
auto setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord >
auto setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord , typename TArg >
ESConsumesCollectorT< TRecord > setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel={})
 
- Protected Member Functions inherited from edm::ESProxyFactoryProducer
template<class TFactory >
void registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string())
 
KeyedProxiesVector registerProxies (const EventSetupRecordKey &, unsigned int iovIndex) override
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &key)
 
- Protected Member Functions inherited from edm::EventSetupRecordIntervalFinder
template<class T >
void findingRecord ()
 
void findingRecordWithKey (const eventsetup::EventSetupRecordKey &)
 

Private Types

enum  {
  kPedestals, kPedestalWidths, kEffectivePedestals, kEffectivePedestalWidths,
  kGains, kGainWidths, kQIEData, kQIETypes,
  kChannelQuality, kRespCorrs, kLUTCorrs, kPFCorrs,
  kTimeCorrs, kZSThresholds, kL1TriggerObjects, kElectronicsMap,
  kValidationCorrs, kLutMetadata, kRecoParams, kTimingParams,
  kLongRecoParams, kZDCLowGainFractions, kMCParams, kFlagHFDigiTimeParams,
  kFrontEndMap, kSiPMParameters, kTPChannelParameters
}
 

Private Attributes

HcalDbHardcode dbHardcode
 
std::unique_ptr< HBHERecalibrationhb_recalibration
 
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecordhbDarkeningToken_
 
std::unique_ptr< HBHERecalibrationhe_recalibration
 
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecordheDarkeningToken_
 
std::unique_ptr< HFRecalibrationhf_recalibration
 
double iLumi
 
bool setHBdsegm
 
bool setHEdsegm
 
bool switchGainWidthsForTrigPrims
 
bool testHEPlan1
 
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
 
bool useIeta18depth1
 
bool useLayer0Weight
 

Additional Inherited Members

- Protected Types inherited from edm::ESProxyFactoryProducer
using EventSetupRecordKey = eventsetup::EventSetupRecordKey
 
- Protected Types inherited from edm::eventsetup::DataProxyProvider
using KeyedProxiesVector = std::vector< std::pair< DataKey, std::shared_ptr< DataProxy >>>
 

Detailed Description

Definition at line 56 of file HcalHardcodeCalibrations.h.

Member Enumeration Documentation

anonymous enum
private
Enumerator
kPedestals 
kPedestalWidths 
kEffectivePedestals 
kEffectivePedestalWidths 
kGains 
kGainWidths 
kQIEData 
kQIETypes 
kChannelQuality 
kRespCorrs 
kLUTCorrs 
kPFCorrs 
kTimeCorrs 
kZSThresholds 
kL1TriggerObjects 
kElectronicsMap 
kValidationCorrs 
kLutMetadata 
kRecoParams 
kTimingParams 
kLongRecoParams 
kZDCLowGainFractions 
kMCParams 
kFlagHFDigiTimeParams 
kFrontEndMap 
kSiPMParameters 
kTPChannelParameters 

Definition at line 112 of file HcalHardcodeCalibrations.h.

112  {
113  kPedestals,
117  kGains,
118  kGainWidths,
119  kQIEData,
120  kQIETypes,
122  kRespCorrs,
123  kLUTCorrs,
124  kPFCorrs,
125  kTimeCorrs,
130  kLutMetadata,
131  kRecoParams,
135  kMCParams,
137  kFrontEndMap,
140  };

Constructor & Destructor Documentation

HcalHardcodeCalibrations::HcalHardcodeCalibrations ( const edm::ParameterSet iConfig)

Definition at line 131 of file HcalHardcodeCalibrations.cc.

References Vispa.Plugins.EdmBrowser.EdmDataAccessor::all(), HltBtagPostValidation_cff::c, gather_cfg::cout, dbHardcode, edm::ParameterSet::empty(), edm::ParameterSet::exists(), edm::FileInPath::fullPath(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hb_recalibration, hbDarkeningToken_, he_recalibration, heDarkeningToken_, hf_recalibration, iLumi, kChannelQuality, kEffectivePedestals, kEffectivePedestalWidths, kElectronicsMap, kFlagHFDigiTimeParams, kFrontEndMap, kGains, kGainWidths, kL1TriggerObjects, kLongRecoParams, kLUTCorrs, kLutMetadata, kMCParams, kPedestals, kPedestalWidths, kPFCorrs, kQIEData, kQIETypes, kRecoParams, kRespCorrs, kSiPMParameters, kTimeCorrs, kTPChannelParameters, kValidationCorrs, kZDCLowGainFractions, kZSThresholds, summarizeEdmComparisonLogfiles::objectName, produceChannelQuality(), produceDcsMap(), produceDcsValues(), produceEffectivePedestals(), produceEffectivePedestalWidths(), produceElectronicsMap(), produceFlagHFDigiTimeParams(), produceFrontEndMap(), produceGains(), produceGainWidths(), produceL1TriggerObjects(), produceLongRecoParams(), produceLUTCorrs(), produceLutMetadata(), produceMCParams(), producePedestals(), producePedestalWidths(), producePFCorrs(), produceQIEData(), produceQIETypes(), produceRecoParams(), produceRespCorrs(), produceSiPMCharacteristics(), produceSiPMParameters(), produceTimeCorrs(), produceTPChannelParameters(), produceTPParameters(), produceValidationCorrs(), produceZDCLowGainFractions(), produceZSThresholds(), HcalDbHardcode::setHB(), HcalDbHardcode::setHBUpgrade(), HcalDbHardcode::setHE(), HcalDbHardcode::setHEUpgrade(), HcalDbHardcode::setHF(), HcalDbHardcode::setHFUpgrade(), HcalDbHardcode::setHO(), HcalDbHardcode::setKillHE(), HcalDbHardcode::setSiPMCharacteristics(), edm::ESProducer::setWhatProduced(), switchGainWidthsForTrigPrims, HcalDbHardcode::testHEPlan1(), testHEPlan1, HcalDbHardcode::testHFQIE10(), DBConfiguration_cff::toGet, topoTokens_, HcalDbHardcode::useHBUpgrade(), HcalDbHardcode::useHEUpgrade(), HcalDbHardcode::useHFUpgrade(), HcalDbHardcode::useHOUpgrade(), useIeta18depth1, and useLayer0Weight.

132  : hb_recalibration(nullptr),
133  he_recalibration(nullptr),
134  hf_recalibration(nullptr),
135  setHEdsegm(false),
136  setHBdsegm(false) {
137  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::HcalHardcodeCalibrations->...";
138 
139  if (iConfig.exists("GainWidthsForTrigPrims"))
140  switchGainWidthsForTrigPrims = iConfig.getParameter<bool>("GainWidthsForTrigPrims");
141  else
143 
144  //DB helper preparation
152  dbHardcode.useHBUpgrade(iConfig.getParameter<bool>("useHBUpgrade"));
153  dbHardcode.useHEUpgrade(iConfig.getParameter<bool>("useHEUpgrade"));
154  dbHardcode.useHFUpgrade(iConfig.getParameter<bool>("useHFUpgrade"));
155  dbHardcode.useHOUpgrade(iConfig.getParameter<bool>("useHOUpgrade"));
156  dbHardcode.testHFQIE10(iConfig.getParameter<bool>("testHFQIE10"));
157  dbHardcode.testHEPlan1(iConfig.getParameter<bool>("testHEPlan1"));
158  dbHardcode.setKillHE(iConfig.getParameter<bool>("killHE"));
159  dbHardcode.setSiPMCharacteristics(iConfig.getParameter<std::vector<edm::ParameterSet>>("SiPMCharacteristics"));
160 
161  useLayer0Weight = iConfig.getParameter<bool>("useLayer0Weight");
162  useIeta18depth1 = iConfig.getParameter<bool>("useIeta18depth1");
163  testHEPlan1 = iConfig.getParameter<bool>("testHEPlan1");
164  // HB, HE, HF recalibration preparation
165  iLumi = iConfig.getParameter<double>("iLumi");
166 
167  if (iLumi > 0.0) {
168  bool hb_recalib = iConfig.getParameter<bool>("HBRecalibration");
169  bool he_recalib = iConfig.getParameter<bool>("HERecalibration");
170  bool hf_recalib = iConfig.getParameter<bool>("HFRecalibration");
171  if (hb_recalib) {
172  hb_recalibration.reset(new HBHERecalibration(iLumi,
173  iConfig.getParameter<double>("HBreCalibCutoff"),
174  iConfig.getParameter<edm::FileInPath>("HBmeanenergies").fullPath()));
175  }
176  if (he_recalib) {
177  he_recalibration.reset(new HBHERecalibration(iLumi,
178  iConfig.getParameter<double>("HEreCalibCutoff"),
179  iConfig.getParameter<edm::FileInPath>("HEmeanenergies").fullPath()));
180  }
181  if (hf_recalib && !iConfig.getParameter<edm::ParameterSet>("HFRecalParameterBlock").empty())
182  hf_recalibration.reset(new HFRecalibration(iConfig.getParameter<edm::ParameterSet>("HFRecalParameterBlock")));
183 
184 #ifdef DebugLog
185  std::cout << " HcalHardcodeCalibrations: iLumi = " << iLumi << std::endl;
186 #endif
187  }
188 
189  std::vector<std::string> toGet = iConfig.getUntrackedParameter<std::vector<std::string>>("toGet");
190  for (auto& objectName : toGet) {
191  bool all = objectName == "all";
192 #ifdef DebugLog
193  std::cout << "Load parameters for " << objectName << std::endl;
194 #endif
195  if ((objectName == "Pedestals") || all) {
197  findingRecord<HcalPedestalsRcd>();
198  }
199  if ((objectName == "PedestalWidths") || all) {
201  findingRecord<HcalPedestalWidthsRcd>();
202  }
203  if ((objectName == "EffectivePedestals") || all) {
205  .setConsumes(topoTokens_[kEffectivePedestals]);
206  findingRecord<HcalPedestalsRcd>();
207  }
208  if ((objectName == "EffectivePedestalWidths") || all) {
210  .setConsumes(topoTokens_[kEffectivePedestalWidths]);
211  findingRecord<HcalPedestalWidthsRcd>();
212  }
213  if ((objectName == "Gains") || all) {
215  findingRecord<HcalGainsRcd>();
216  }
217  if ((objectName == "GainWidths") || all) {
219  findingRecord<HcalGainWidthsRcd>();
220  }
221  if ((objectName == "QIEData") || all) {
223  findingRecord<HcalQIEDataRcd>();
224  }
225  if ((objectName == "QIETypes") || all) {
227  findingRecord<HcalQIETypesRcd>();
228  }
229  if ((objectName == "ChannelQuality") || (objectName == "channelQuality") || all) {
231  findingRecord<HcalChannelQualityRcd>();
232  }
233  if ((objectName == "ElectronicsMap") || (objectName == "electronicsMap") || all) {
235  findingRecord<HcalElectronicsMapRcd>();
236  }
237  if ((objectName == "ZSThresholds") || (objectName == "zsThresholds") || all) {
239  findingRecord<HcalZSThresholdsRcd>();
240  }
241  if ((objectName == "RespCorrs") || (objectName == "ResponseCorrection") || all) {
243  c.setConsumes(topoTokens_[kRespCorrs]);
244  if (he_recalibration) {
245  c.setConsumes(heDarkeningToken_, edm::ESInputTag("", "HE"));
246  }
247  if (hb_recalibration) {
248  c.setConsumes(hbDarkeningToken_, edm::ESInputTag("", "HB"));
249  }
250  findingRecord<HcalRespCorrsRcd>();
251  }
252  if ((objectName == "LUTCorrs") || (objectName == "LUTCorrection") || all) {
254  findingRecord<HcalLUTCorrsRcd>();
255  }
256  if ((objectName == "PFCorrs") || (objectName == "PFCorrection") || all) {
258  findingRecord<HcalPFCorrsRcd>();
259  }
260  if ((objectName == "TimeCorrs") || (objectName == "TimeCorrection") || all) {
262  findingRecord<HcalTimeCorrsRcd>();
263  }
264  if ((objectName == "L1TriggerObjects") || (objectName == "L1Trigger") || all) {
266  .setConsumes(topoTokens_[kL1TriggerObjects]);
267  findingRecord<HcalL1TriggerObjectsRcd>();
268  }
269  if ((objectName == "ValidationCorrs") || (objectName == "ValidationCorrection") || all) {
271  .setConsumes(topoTokens_[kValidationCorrs]);
272  findingRecord<HcalValidationCorrsRcd>();
273  }
274  if ((objectName == "LutMetadata") || (objectName == "lutMetadata") || all) {
276  findingRecord<HcalLutMetadataRcd>();
277  }
278  if ((objectName == "DcsValues") || all) {
280  findingRecord<HcalDcsRcd>();
281  }
282  if ((objectName == "DcsMap") || (objectName == "dcsMap") || all) {
284  findingRecord<HcalDcsMapRcd>();
285  }
286  if ((objectName == "RecoParams") || all) {
288  findingRecord<HcalRecoParamsRcd>();
289  }
290  if ((objectName == "LongRecoParams") || all) {
292  findingRecord<HcalLongRecoParamsRcd>();
293  }
294  if ((objectName == "ZDCLowGainFractions") || all) {
296  .setConsumes(topoTokens_[kZDCLowGainFractions]);
297  findingRecord<HcalZDCLowGainFractionsRcd>();
298  }
299  if ((objectName == "MCParams") || all) {
301  findingRecord<HcalMCParamsRcd>();
302  }
303  if ((objectName == "FlagHFDigiTimeParams") || all) {
305  .setConsumes(topoTokens_[kFlagHFDigiTimeParams]);
306  findingRecord<HcalFlagHFDigiTimeParamsRcd>();
307  }
308  if ((objectName == "FrontEndMap") || (objectName == "frontEndMap") || all) {
310  findingRecord<HcalFrontEndMapRcd>();
311  }
312  if ((objectName == "SiPMParameters") || all) {
314  findingRecord<HcalSiPMParametersRcd>();
315  }
316  if ((objectName == "SiPMCharacteristics") || all) {
318  findingRecord<HcalSiPMCharacteristicsRcd>();
319  }
320  if ((objectName == "TPChannelParameters") || all) {
322  .setConsumes(topoTokens_[kTPChannelParameters]);
323  findingRecord<HcalTPChannelParametersRcd>();
324  }
325  if ((objectName == "TPParameters") || all) {
327  findingRecord<HcalTPParametersRcd>();
328  }
329  }
330 }
std::unique_ptr< HcalPedestals > producePedestals(const HcalPedestalsRcd &rcd)
T getParameter(std::string const &) const
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:138
bool empty() const
Definition: ParameterSet.h:190
T getUntrackedParameter(std::string const &, T const &) const
std::unique_ptr< HcalGains > produceGains(const HcalGainsRcd &rcd)
void useHBUpgrade(bool b)
std::unique_ptr< HcalPedestalWidths > produceEffectivePedestalWidths(const HcalPedestalWidthsRcd &rcd)
std::unique_ptr< HcalPFCorrs > producePFCorrs(const HcalPFCorrsRcd &rcd)
std::unique_ptr< HcalQIEData > produceQIEData(const HcalQIEDataRcd &rcd)
void setHBUpgrade(HcalHardcodeParameters p)
void testHEPlan1(bool b)
std::unique_ptr< HcalTimeCorrs > produceTimeCorrs(const HcalTimeCorrsRcd &rcd)
void useHFUpgrade(bool b)
std::unique_ptr< HcalLongRecoParams > produceLongRecoParams(const HcalLongRecoParamsRcd &rcd)
std::unique_ptr< HcalPedestals > produceEffectivePedestals(const HcalPedestalsRcd &rcd)
std::unique_ptr< HcalSiPMCharacteristics > produceSiPMCharacteristics(const HcalSiPMCharacteristicsRcd &rcd)
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecord > hbDarkeningToken_
std::unique_ptr< HcalElectronicsMap > produceElectronicsMap(const HcalElectronicsMapRcd &rcd)
void setHF(HcalHardcodeParameters p)
bool exists(std::string const &parameterName) const
checks if a parameter exists
std::unique_ptr< HcalDcsValues > produceDcsValues(const HcalDcsRcd &rcd)
std::unique_ptr< HcalPedestalWidths > producePedestalWidths(const HcalPedestalWidthsRcd &rcd)
std::unique_ptr< HFRecalibration > hf_recalibration
std::unique_ptr< HcalRespCorrs > produceRespCorrs(const HcalRespCorrsRcd &rcd)
std::unique_ptr< HcalLutMetadata > produceLutMetadata(const HcalLutMetadataRcd &rcd)
void setHO(HcalHardcodeParameters p)
void setHFUpgrade(HcalHardcodeParameters p)
void setHE(HcalHardcodeParameters p)
void setKillHE(bool b)
std::unique_ptr< HcalFlagHFDigiTimeParams > produceFlagHFDigiTimeParams(const HcalFlagHFDigiTimeParamsRcd &rcd)
std::unique_ptr< HcalFrontEndMap > produceFrontEndMap(const HcalFrontEndMapRcd &rcd)
std::unique_ptr< HBHERecalibration > hb_recalibration
void useHOUpgrade(bool b)
std::unique_ptr< HcalSiPMParameters > produceSiPMParameters(const HcalSiPMParametersRcd &rcd)
std::unique_ptr< HBHERecalibration > he_recalibration
std::unique_ptr< HcalRecoParams > produceRecoParams(const HcalRecoParamsRcd &rcd)
void setHB(HcalHardcodeParameters p)
std::unique_ptr< HcalTPParameters > produceTPParameters(const HcalTPParametersRcd &rcd)
std::unique_ptr< HcalGainWidths > produceGainWidths(const HcalGainWidthsRcd &rcd)
std::unique_ptr< HcalTPChannelParameters > produceTPChannelParameters(const HcalTPChannelParametersRcd &rcd)
std::unique_ptr< HcalL1TriggerObjects > produceL1TriggerObjects(const HcalL1TriggerObjectsRcd &rcd)
std::unique_ptr< HcalZSThresholds > produceZSThresholds(const HcalZSThresholdsRcd &rcd)
std::unique_ptr< HcalZDCLowGainFractions > produceZDCLowGainFractions(const HcalZDCLowGainFractionsRcd &rcd)
void setSiPMCharacteristics(std::vector< edm::ParameterSet > vps)
std::unique_ptr< HcalMCParams > produceMCParams(const HcalMCParamsRcd &rcd)
void useHEUpgrade(bool b)
std::unique_ptr< HcalQIETypes > produceQIETypes(const HcalQIETypesRcd &rcd)
std::unique_ptr< HcalChannelQuality > produceChannelQuality(const HcalChannelQualityRcd &rcd)
std::string fullPath() const
Definition: FileInPath.cc:163
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecord > heDarkeningToken_
void setHEUpgrade(HcalHardcodeParameters p)
std::unique_ptr< HcalDcsMap > produceDcsMap(const HcalDcsMapRcd &rcd)
std::unique_ptr< HcalLUTCorrs > produceLUTCorrs(const HcalLUTCorrsRcd &rcd)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
void testHFQIE10(bool b)
std::unique_ptr< HcalValidationCorrs > produceValidationCorrs(const HcalValidationCorrsRcd &rcd)
HcalHardcodeCalibrations::~HcalHardcodeCalibrations ( )
override

Definition at line 332 of file HcalHardcodeCalibrations.cc.

332 {}

Member Function Documentation

void HcalHardcodeCalibrations::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 847 of file HcalHardcodeCalibrations.cc.

References edm::ParameterSetDescription::add(), edm::ConfigurationDescriptions::addDefault(), edm::ParameterSetDescription::addUntracked(), and edm::ParameterSetDescription::addVPSet().

847  {
849  desc.add<double>("iLumi", -1.);
850  desc.add<bool>("HBRecalibration", false);
851  desc.add<double>("HBreCalibCutoff", 20.);
852  desc.add<edm::FileInPath>("HBmeanenergies", edm::FileInPath("CalibCalorimetry/HcalPlugins/data/meanenergiesHB.txt"));
853  desc.add<bool>("HERecalibration", false);
854  desc.add<double>("HEreCalibCutoff", 20.);
855  desc.add<edm::FileInPath>("HEmeanenergies", edm::FileInPath("CalibCalorimetry/HcalPlugins/data/meanenergiesHE.txt"));
856  desc.add<bool>("HFRecalibration", false);
857  desc.add<bool>("GainWidthsForTrigPrims", false);
858  desc.add<bool>("useHBUpgrade", false);
859  desc.add<bool>("useHEUpgrade", false);
860  desc.add<bool>("useHFUpgrade", false);
861  desc.add<bool>("useHOUpgrade", true);
862  desc.add<bool>("testHFQIE10", false);
863  desc.add<bool>("testHEPlan1", false);
864  desc.add<bool>("killHE", false);
865  desc.add<bool>("useLayer0Weight", false);
866  desc.add<bool>("useIeta18depth1", true);
867  desc.addUntracked<std::vector<std::string>>("toGet", std::vector<std::string>());
868  desc.addUntracked<bool>("fromDDD", false);
869 
871  desc_hb.add<std::vector<double>>("gain", std::vector<double>({0.19}));
872  desc_hb.add<std::vector<double>>("gainWidth", std::vector<double>({0.0}));
873  desc_hb.add<double>("pedestal", 3.0);
874  desc_hb.add<double>("pedestalWidth", 0.55);
875  desc_hb.add<int>("zsThreshold", 8);
876  desc_hb.add<std::vector<double>>("qieOffset", std::vector<double>({-0.49, 1.8, 7.2, 37.9}));
877  desc_hb.add<std::vector<double>>("qieSlope", std::vector<double>({0.912, 0.917, 0.922, 0.923}));
878  desc_hb.add<int>("qieType", 0);
879  desc_hb.add<int>("mcShape", 125);
880  desc_hb.add<int>("recoShape", 105);
881  desc_hb.add<double>("photoelectronsToAnalog", 0.0);
882  desc_hb.add<std::vector<double>>("darkCurrent", std::vector<double>({0.0}));
883  desc_hb.add<bool>("doRadiationDamage", false);
884  desc.add<edm::ParameterSetDescription>("hb", desc_hb);
885 
886  edm::ParameterSetDescription desc_hbRaddam;
887  desc_hbRaddam.add<double>("temperatureBase", 20.0);
888  desc_hbRaddam.add<double>("temperatureNew", -5.0);
889  desc_hbRaddam.add<double>("intlumiOffset", 150);
890  desc_hbRaddam.add<double>("depVsTemp", 0.0631);
891  desc_hbRaddam.add<double>("intlumiToNeutrons", 3.67e8);
892  desc_hbRaddam.add<std::vector<double>>("depVsNeutrons", {5.69e-11, 7.90e-11});
893 
894  edm::ParameterSetDescription desc_hbUpgrade;
895  desc_hbUpgrade.add<std::vector<double>>("gain", std::vector<double>({0.00111111111111}));
896  desc_hbUpgrade.add<std::vector<double>>("gainWidth", std::vector<double>({0}));
897  desc_hbUpgrade.add<double>("pedestal", 18.0);
898  desc_hbUpgrade.add<double>("pedestalWidth", 5.0);
899  desc_hbUpgrade.add<int>("zsThreshold", 3);
900  desc_hbUpgrade.add<std::vector<double>>("qieOffset", std::vector<double>({0.0, 0.0, 0.0, 0.0}));
901  desc_hbUpgrade.add<std::vector<double>>("qieSlope", std::vector<double>({0.333, 0.333, 0.333, 0.333}));
902  desc_hbUpgrade.add<int>("qieType", 2);
903  desc_hbUpgrade.add<int>("mcShape", 206);
904  desc_hbUpgrade.add<int>("recoShape", 206);
905  desc_hbUpgrade.add<double>("photoelectronsToAnalog", 57.5);
906  desc_hbUpgrade.add<std::vector<double>>("darkCurrent", std::vector<double>({0.055}));
907  desc_hbUpgrade.add<bool>("doRadiationDamage", true);
908  desc_hbUpgrade.add<edm::ParameterSetDescription>("radiationDamage", desc_hbRaddam);
909  desc.add<edm::ParameterSetDescription>("hbUpgrade", desc_hbUpgrade);
910 
912  desc_he.add<std::vector<double>>("gain", std::vector<double>({0.23}));
913  desc_he.add<std::vector<double>>("gainWidth", std::vector<double>({0}));
914  desc_he.add<double>("pedestal", 3.0);
915  desc_he.add<double>("pedestalWidth", 0.79);
916  desc_he.add<int>("zsThreshold", 9);
917  desc_he.add<std::vector<double>>("qieOffset", std::vector<double>({-0.38, 2.0, 7.6, 39.6}));
918  desc_he.add<std::vector<double>>("qieSlope", std::vector<double>({0.912, 0.916, 0.92, 0.922}));
919  desc_he.add<int>("qieType", 0);
920  desc_he.add<int>("mcShape", 125);
921  desc_he.add<int>("recoShape", 105);
922  desc_he.add<double>("photoelectronsToAnalog", 0.0);
923  desc_he.add<std::vector<double>>("darkCurrent", std::vector<double>({0.0}));
924  desc_he.add<bool>("doRadiationDamage", false);
925  desc.add<edm::ParameterSetDescription>("he", desc_he);
926 
927  edm::ParameterSetDescription desc_heRaddam;
928  desc_heRaddam.add<double>("temperatureBase", 20.0);
929  desc_heRaddam.add<double>("temperatureNew", 5.0);
930  desc_heRaddam.add<double>("intlumiOffset", 75);
931  desc_heRaddam.add<double>("depVsTemp", 0.0631);
932  desc_heRaddam.add<double>("intlumiToNeutrons", 2.92e8);
933  desc_heRaddam.add<std::vector<double>>("depVsNeutrons", {5.69e-11, 7.90e-11});
934 
935  edm::ParameterSetDescription desc_heUpgrade;
936  desc_heUpgrade.add<std::vector<double>>("gain", std::vector<double>({0.00111111111111}));
937  desc_heUpgrade.add<std::vector<double>>("gainWidth", std::vector<double>({0}));
938  desc_heUpgrade.add<double>("pedestal", 18.0);
939  desc_heUpgrade.add<double>("pedestalWidth", 5.0);
940  desc_heUpgrade.add<int>("zsThreshold", 3);
941  desc_heUpgrade.add<std::vector<double>>("qieOffset", std::vector<double>({0.0, 0.0, 0.0, 0.0}));
942  desc_heUpgrade.add<std::vector<double>>("qieSlope", std::vector<double>({0.333, 0.333, 0.333, 0.333}));
943  desc_heUpgrade.add<int>("qieType", 2);
944  desc_heUpgrade.add<int>("mcShape", 206);
945  desc_heUpgrade.add<int>("recoShape", 206);
946  desc_heUpgrade.add<double>("photoelectronsToAnalog", 57.5);
947  desc_heUpgrade.add<std::vector<double>>("darkCurrent", std::vector<double>({0.055}));
948  desc_heUpgrade.add<bool>("doRadiationDamage", true);
949  desc_heUpgrade.add<edm::ParameterSetDescription>("radiationDamage", desc_heRaddam);
950  desc.add<edm::ParameterSetDescription>("heUpgrade", desc_heUpgrade);
951 
953  desc_hf.add<std::vector<double>>("gain", std::vector<double>({0.14, 0.135}));
954  desc_hf.add<std::vector<double>>("gainWidth", std::vector<double>({0.0, 0.0}));
955  desc_hf.add<double>("pedestal", 3.0);
956  desc_hf.add<double>("pedestalWidth", 0.84);
957  desc_hf.add<int>("zsThreshold", -9999);
958  desc_hf.add<std::vector<double>>("qieOffset", std::vector<double>({-0.87, 1.4, 7.8, -29.6}));
959  desc_hf.add<std::vector<double>>("qieSlope", std::vector<double>({0.359, 0.358, 0.36, 0.367}));
960  desc_hf.add<int>("qieType", 0);
961  desc_hf.add<int>("mcShape", 301);
962  desc_hf.add<int>("recoShape", 301);
963  desc_hf.add<double>("photoelectronsToAnalog", 0.0);
964  desc_hf.add<std::vector<double>>("darkCurrent", std::vector<double>({0.0}));
965  desc_hf.add<bool>("doRadiationDamage", false);
966  desc.add<edm::ParameterSetDescription>("hf", desc_hf);
967 
968  edm::ParameterSetDescription desc_hfUpgrade;
969  desc_hfUpgrade.add<std::vector<double>>("gain", std::vector<double>({0.14, 0.135}));
970  desc_hfUpgrade.add<std::vector<double>>("gainWidth", std::vector<double>({0.0, 0.0}));
971  desc_hfUpgrade.add<double>("pedestal", 13.33);
972  desc_hfUpgrade.add<double>("pedestalWidth", 3.33);
973  desc_hfUpgrade.add<int>("zsThreshold", -9999);
974  desc_hfUpgrade.add<std::vector<double>>("qieOffset", std::vector<double>({0.0697, -0.7405, 12.38, -671.9}));
975  desc_hfUpgrade.add<std::vector<double>>("qieSlope", std::vector<double>({0.297, 0.298, 0.298, 0.313}));
976  desc_hfUpgrade.add<int>("qieType", 1);
977  desc_hfUpgrade.add<int>("mcShape", 301);
978  desc_hfUpgrade.add<int>("recoShape", 301);
979  desc_hfUpgrade.add<double>("photoelectronsToAnalog", 0.0);
980  desc_hfUpgrade.add<std::vector<double>>("darkCurrent", std::vector<double>({0.0}));
981  desc_hfUpgrade.add<bool>("doRadiationDamage", false);
982  desc.add<edm::ParameterSetDescription>("hfUpgrade", desc_hfUpgrade);
983 
984  edm::ParameterSetDescription desc_hfrecal;
985  desc_hfrecal.add<std::vector<double>>("HFdepthOneParameterA", std::vector<double>());
986  desc_hfrecal.add<std::vector<double>>("HFdepthOneParameterB", std::vector<double>());
987  desc_hfrecal.add<std::vector<double>>("HFdepthTwoParameterA", std::vector<double>());
988  desc_hfrecal.add<std::vector<double>>("HFdepthTwoParameterB", std::vector<double>());
989  desc.add<edm::ParameterSetDescription>("HFRecalParameterBlock", desc_hfrecal);
990 
992  desc_ho.add<std::vector<double>>("gain", std::vector<double>({0.006, 0.0087}));
993  desc_ho.add<std::vector<double>>("gainWidth", std::vector<double>({0.0, 0.0}));
994  desc_ho.add<double>("pedestal", 11.0);
995  desc_ho.add<double>("pedestalWidth", 0.57);
996  desc_ho.add<int>("zsThreshold", 24);
997  desc_ho.add<std::vector<double>>("qieOffset", std::vector<double>({-0.44, 1.4, 7.1, 38.5}));
998  desc_ho.add<std::vector<double>>("qieSlope", std::vector<double>({0.907, 0.915, 0.92, 0.921}));
999  desc_ho.add<int>("qieType", 0);
1000  desc_ho.add<int>("mcShape", 201);
1001  desc_ho.add<int>("recoShape", 201);
1002  desc_ho.add<double>("photoelectronsToAnalog", 4.0);
1003  desc_ho.add<std::vector<double>>("darkCurrent", std::vector<double>({0.0}));
1004  desc_ho.add<bool>("doRadiationDamage", false);
1005  desc.add<edm::ParameterSetDescription>("ho", desc_ho);
1006 
1007  edm::ParameterSetDescription validator_sipm;
1008  validator_sipm.add<int>("pixels", 1);
1009  validator_sipm.add<double>("crosstalk", 0);
1010  validator_sipm.add<double>("nonlin1", 1);
1011  validator_sipm.add<double>("nonlin2", 0);
1012  validator_sipm.add<double>("nonlin3", 0);
1013  std::vector<edm::ParameterSet> default_sipm(1);
1014  desc.addVPSet("SiPMCharacteristics", validator_sipm, default_sipm);
1015 
1016  descriptions.addDefault(desc);
1017 }
void addDefault(ParameterSetDescription const &psetDescription)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
std::unique_ptr< HcalChannelQuality > HcalHardcodeCalibrations::produceChannelQuality ( const HcalChannelQualityRcd rcd)
protected

Definition at line 455 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, LEDCalibrationChannels::depth, HcalDetId::depth(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), LEDCalibrationChannels::ieta, HcalDetId::ieta(), HcalDetId::ietaAbs(), LEDCalibrationChannels::iphi, HcalDetId::iphi(), B2GTnPMonitor_cfi::item, kChannelQuality, HcalDbHardcode::killHE(), mps_fire::result, mps_update::status, testHEPlan1, topoTokens_, and useIeta18depth1.

Referenced by HcalHardcodeCalibrations().

455  {
456  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceChannelQuality-> ...";
457  auto const& topo = rcd.get(topoTokens_[kChannelQuality]);
458 
459  auto result = std::make_unique<HcalChannelQuality>(&topo);
460  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
461  for (auto cell : cells) {
462  // Special: removal of (non-instrumented) layer "-1"("nose") = depth 1
463  // from Upgrade HE, either from
464  // (i) HEP17 sector in 2017 or
465  // (ii) the entire HE rin=18 from 2018 through Run 3.
466  // May require a revision by 2021.
467 
468  uint32_t status = 0;
469 
470  if (!(cell.isHcalZDCDetId())) {
471  HcalDetId hid = HcalDetId(cell);
472  int iphi = hid.iphi();
473  int ieta = hid.ieta();
474  int absieta = hid.ietaAbs();
475  int depth = hid.depth();
476 
477  // specific HEP17 sector (2017 only)
478  bool isHEP17 = (iphi >= 63) && (iphi <= 66) && (ieta > 0);
479  // |ieta|=18, depth=1
480  bool is18d1 = (absieta == 18) && (depth == 1);
481 
482  if ((!useIeta18depth1 && is18d1) && ((testHEPlan1 && isHEP17) || (!testHEPlan1))) {
483  status = 0x8002; // dead cell
484  }
485  }
486 
487  HcalChannelStatus item(cell.rawId(), status);
488  result->addValues(item);
489  }
490 
491  return result;
492 }
const bool killHE() const
int depth() const
get the tower depth
Definition: HcalDetId.h:164
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
int ieta() const
get the cell ieta
Definition: HcalDetId.h:155
int ietaAbs() const
get the absolute value of the cell ieta
Definition: HcalDetId.h:148
int iphi() const
get the cell iphi
Definition: HcalDetId.h:157
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalDcsMap > HcalHardcodeCalibrations::produceDcsMap ( const HcalDcsMapRcd rcd)
protected

Definition at line 687 of file HcalHardcodeCalibrations.cc.

References dbHardcode, and HcalDbHardcode::makeHardcodeDcsMap().

Referenced by HcalHardcodeCalibrations().

687  {
688  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceDcsMap-> ...";
689 
691 }
std::unique_ptr< HcalDcsMap > makeHardcodeDcsMap() const
std::unique_ptr< HcalDcsValues > HcalHardcodeCalibrations::produceDcsValues ( const HcalDcsRcd rcd)
protected

Definition at line 681 of file HcalHardcodeCalibrations.cc.

References mps_fire::result.

Referenced by HcalHardcodeCalibrations().

681  {
682  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceDcsValues-> ...";
683  auto result = std::make_unique<HcalDcsValues>();
684  return result;
685 }
std::unique_ptr< HcalPedestals > HcalHardcodeCalibrations::produceEffectivePedestals ( const HcalPedestalsRcd rcd)
protected

Definition at line 379 of file HcalHardcodeCalibrations.cc.

References kEffectivePedestals, producePedestals_(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

379  {
381 }
std::unique_ptr< HcalPedestals > producePedestals_(const HcalPedestalsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalPedestalWidths > HcalHardcodeCalibrations::produceEffectivePedestalWidths ( const HcalPedestalWidthsRcd rcd)
protected

Definition at line 387 of file HcalHardcodeCalibrations.cc.

References kEffectivePedestalWidths, producePedestalWidths_(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

388  {
390 }
std::unique_ptr< HcalPedestalWidths > producePedestalWidths_(const HcalPedestalWidthsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalElectronicsMap > HcalHardcodeCalibrations::produceElectronicsMap ( const HcalElectronicsMapRcd rcd)
protected

Definition at line 633 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), kElectronicsMap, HcalDbHardcode::killHE(), HcalDbHardcode::makeHardcodeMap(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

633  {
634  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceElectronicsMap-> ...";
635  auto const& topo = rcd.get(topoTokens_[kElectronicsMap]);
636 
637  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
638  return dbHardcode.makeHardcodeMap(cells);
639 }
const bool killHE() const
std::unique_ptr< HcalElectronicsMap > makeHardcodeMap(const std::vector< HcalGenericDetId > &cells) const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalFlagHFDigiTimeParams > HcalHardcodeCalibrations::produceFlagHFDigiTimeParams ( const HcalFlagHFDigiTimeParamsRcd rcd)
protected

Definition at line 770 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, kFlagHFDigiTimeParams, HcalDbHardcode::killHE(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

771  {
772  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceFlagHFDigiTimeParams-> ...";
773  auto const& topo = rec.get(topoTokens_[kFlagHFDigiTimeParams]);
774 
775  auto result = std::make_unique<HcalFlagHFDigiTimeParams>(&topo);
776  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
777 
778  std::vector<double> coef;
779  coef.push_back(0.93);
780  coef.push_back(-0.38275);
781  coef.push_back(-0.012667);
782 
783  for (auto cell : cells) {
784  HcalFlagHFDigiTimeParam item(cell.rawId(),
785  1, //firstsample
786  3, // samplestoadd
787  2, //expectedpeak
788  40., // min energy threshold
789  coef // coefficients
790  );
791  result->addValues(item);
792  }
793  return result;
794 }
const bool killHE() const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalFrontEndMap > HcalHardcodeCalibrations::produceFrontEndMap ( const HcalFrontEndMapRcd rcd)
protected

Definition at line 796 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), kFrontEndMap, HcalDbHardcode::killHE(), HcalDbHardcode::makeHardcodeFrontEndMap(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

796  {
797  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceFrontEndMap-> ...";
798  auto const& topo = rec.get(topoTokens_[kFrontEndMap]);
799 
800  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
801 
802  return dbHardcode.makeHardcodeFrontEndMap(cells);
803 }
const bool killHE() const
void makeHardcodeFrontEndMap(HcalFrontEndMap &emap, const std::vector< HcalGenericDetId > &cells) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalGains > HcalHardcodeCalibrations::produceGains ( const HcalGainsRcd rcd)
protected

Definition at line 392 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, kGains, HcalDbHardcode::killHE(), HcalDbHardcode::makeGain(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

392  {
393  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceGains-> ...";
394 
395  auto const& topo = rec.get(topoTokens_[kGains]);
396  auto result = std::make_unique<HcalGains>(&topo);
397  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
398  for (auto cell : cells) {
400  result->addValues(item);
401  }
402  return result;
403 }
const bool killHE() const
HcalGain makeGain(HcalGenericDetId fId, bool fSmear=false) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalGainWidths > HcalHardcodeCalibrations::produceGainWidths ( const HcalGainWidthsRcd rcd)
protected

Definition at line 405 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, kGainWidths, HcalDbHardcode::killHE(), HcalDbHardcode::makeGainWidth(), mps_fire::result, switchGainWidthsForTrigPrims, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

405  {
406  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceGainWidths-> ...";
407 
408  auto const& topo = rec.get(topoTokens_[kGainWidths]);
409  auto result = std::make_unique<HcalGainWidths>(&topo);
410  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
411  for (auto cell : cells) {
412  // for Upgrade - include TrigPrims, for regular case - only HcalDetId
415  result->addValues(item);
416  } else if (!cell.isHcalTrigTowerDetId()) {
418  result->addValues(item);
419  }
420  }
421  return result;
422 }
const bool killHE() const
HcalGainWidth makeGainWidth(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalL1TriggerObjects > HcalHardcodeCalibrations::produceL1TriggerObjects ( const HcalL1TriggerObjectsRcd rcd)
protected

Definition at line 616 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kL1TriggerObjects, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

617  {
618  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceL1TriggerObjects-> ...";
619  auto const& topo = rcd.get(topoTokens_[kL1TriggerObjects]);
620 
621  auto result = std::make_unique<HcalL1TriggerObjects>(&topo);
622  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
623  for (auto cell : cells) {
624  HcalL1TriggerObject item(cell.rawId(), 0., 1., 0);
625  result->addValues(item);
626  }
627  // add tag and algo values
628  result->setTagString("hardcoded");
629  result->setAlgoString("hardcoded");
630  return result;
631 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalLongRecoParams > HcalHardcodeCalibrations::produceLongRecoParams ( const HcalLongRecoParamsRcd rcd)
protected

Definition at line 719 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kLongRecoParams, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

719  {
720  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceLongRecoParams-> ...";
721  auto const& topo = rec.get(topoTokens_[kLongRecoParams]);
722 
723  auto result = std::make_unique<HcalLongRecoParams>(&topo);
724  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
725  std::vector<unsigned int> mSignal;
726  mSignal.push_back(4);
727  mSignal.push_back(5);
728  mSignal.push_back(6);
729  std::vector<unsigned int> mNoise;
730  mNoise.push_back(1);
731  mNoise.push_back(2);
732  mNoise.push_back(3);
733  for (auto cell : cells) {
734  if (cell.isHcalZDCDetId()) {
735  HcalLongRecoParam item(cell.rawId(), mSignal, mNoise);
736  result->addValues(item);
737  }
738  }
739  return result;
740 }
const bool killHE() const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalLUTCorrs > HcalHardcodeCalibrations::produceLUTCorrs ( const HcalLUTCorrsRcd rcd)
protected

Definition at line 564 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kLUTCorrs, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

564  {
565  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceLUTCorrs-> ...";
566  auto const& topo = rcd.get(topoTokens_[kLUTCorrs]);
567 
568  auto result = std::make_unique<HcalLUTCorrs>(&topo);
569  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
570  for (auto cell : cells) {
571  HcalLUTCorr item(cell.rawId(), 1.0);
572  result->addValues(item);
573  }
574  return result;
575 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalLutMetadata > HcalHardcodeCalibrations::produceLutMetadata ( const HcalLutMetadataRcd rcd)
protected

Definition at line 655 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kLutMetadata, mps_fire::result, MessageLogger_cff::threshold, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

655  {
656  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceLutMetadata-> ...";
657  auto const& topo = rcd.get(topoTokens_[kLutMetadata]);
658 
659  auto result = std::make_unique<HcalLutMetadata>(&topo);
660 
661  result->setRctLsb(0.5);
662  result->setNominalGain(0.177); // for HBHE SiPMs
663 
664  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
665  for (const auto& cell : cells) {
666  float rcalib = 1.;
667  int granularity = 1;
668  int threshold = 0;
669 
670  if (cell.isHcalTrigTowerDetId()) {
671  rcalib = 0.;
672  }
673 
674  HcalLutMetadatum item(cell.rawId(), rcalib, granularity, threshold);
675  result->addValues(item);
676  }
677 
678  return result;
679 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalMCParams > HcalHardcodeCalibrations::produceMCParams ( const HcalMCParamsRcd rcd)
protected

Definition at line 756 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kMCParams, HcalDbHardcode::makeMCParam(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

756  {
757  // std::cout << std::endl << " .... HcalHardcodeCalibrations::produceMCParams ->"<< std::endl;
758 
759  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceMCParams-> ...";
760  auto const& topo = rec.get(topoTokens_[kMCParams]);
761  auto result = std::make_unique<HcalMCParams>(&topo);
762  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
763  for (auto cell : cells) {
765  result->addValues(item);
766  }
767  return result;
768 }
HcalMCParam makeMCParam(HcalGenericDetId fId) const
const bool killHE() const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalPedestals > HcalHardcodeCalibrations::producePedestals ( const HcalPedestalsRcd rcd)
protected

Definition at line 375 of file HcalHardcodeCalibrations.cc.

References kPedestals, producePedestals_(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

375  {
376  return producePedestals_(rec, topoTokens_[kPedestals], false);
377 }
std::unique_ptr< HcalPedestals > producePedestals_(const HcalPedestalsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalPedestals > HcalHardcodeCalibrations::producePedestals_ ( const HcalPedestalsRcd rcd,
const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &  token,
bool  eff 
)
protected

Definition at line 346 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), iLumi, B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), HcalDbHardcode::makePedestal(), mps_fire::result, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by produceEffectivePedestals(), and producePedestals().

347  {
348  std::string seff = eff ? "Effective" : "";
349  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produce" << seff << "Pedestals-> ...";
350 
351  auto const& topo = rec.get(token);
352  auto result = std::make_unique<HcalPedestals>(&topo, false);
353  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
354  for (auto cell : cells) {
355  HcalPedestal item = dbHardcode.makePedestal(cell, false, eff, &topo, iLumi);
356  result->addValues(item);
357  }
358  return result;
359 }
const bool killHE() const
HcalPedestal makePedestal(HcalGenericDetId fId, bool fSmear, bool eff, const HcalTopology *topo, double intlumi)
std::unique_ptr< HcalPedestalWidths > HcalHardcodeCalibrations::producePedestalWidths ( const HcalPedestalWidthsRcd rcd)
protected

Definition at line 383 of file HcalHardcodeCalibrations.cc.

References kPedestalWidths, producePedestalWidths_(), and topoTokens_.

Referenced by HcalHardcodeCalibrations().

383  {
385 }
std::unique_ptr< HcalPedestalWidths > producePedestalWidths_(const HcalPedestalWidthsRcd &rcd, const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &, bool eff)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalPedestalWidths > HcalHardcodeCalibrations::producePedestalWidths_ ( const HcalPedestalWidthsRcd rcd,
const edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > &  token,
bool  eff 
)
protected

Definition at line 361 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), iLumi, B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), HcalDbHardcode::makePedestalWidth(), mps_fire::result, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by produceEffectivePedestalWidths(), and producePedestalWidths().

362  {
363  std::string seff = eff ? "Effective" : "";
364  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produce" << seff << "PedestalWidths-> ...";
365  auto const& topo = rec.get(token);
366  auto result = std::make_unique<HcalPedestalWidths>(&topo, false);
367  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
368  for (auto cell : cells) {
370  result->addValues(item);
371  }
372  return result;
373 }
const bool killHE() const
HcalPedestalWidth makePedestalWidth(HcalGenericDetId fId, bool eff, const HcalTopology *topo, double intlumi)
std::unique_ptr< HcalPFCorrs > HcalHardcodeCalibrations::producePFCorrs ( const HcalPFCorrsRcd rcd)
protected

Definition at line 577 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kPFCorrs, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

577  {
578  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::producePFCorrs-> ...";
579  auto const& topo = rcd.get(topoTokens_[kPFCorrs]);
580 
581  auto result = std::make_unique<HcalPFCorrs>(&topo);
582  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
583  for (auto cell : cells) {
584  HcalPFCorr item(cell.rawId(), 1.0);
585  result->addValues(item);
586  }
587  return result;
588 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalQIEData > HcalHardcodeCalibrations::produceQIEData ( const HcalQIEDataRcd rcd)
protected

Definition at line 424 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), HcalDbHardcode::killHE(), kQIEData, HcalDbHardcode::makeQIECoder(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

424  {
425  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceQIEData-> ...";
426 
427  /*
428  std::cout << std::endl << ">>> HcalHardcodeCalibrations::produceQIEData"
429  << std::endl;
430  */
431 
432  auto const& topo = rcd.get(topoTokens_[kQIEData]);
433  auto result = std::make_unique<HcalQIEData>(&topo);
434  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
435  for (auto cell : cells) {
436  HcalQIECoder coder = dbHardcode.makeQIECoder(cell);
437  result->addCoder(coder);
438  }
439  return result;
440 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
HcalQIECoder makeQIECoder(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalQIETypes > HcalHardcodeCalibrations::produceQIETypes ( const HcalQIETypesRcd rcd)
protected

Definition at line 442 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kQIETypes, HcalDbHardcode::makeQIEType(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

442  {
443  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceQIETypes-> ...";
444  auto const& topo = rcd.get(topoTokens_[kQIETypes]);
445 
446  auto result = std::make_unique<HcalQIETypes>(&topo);
447  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
448  for (auto cell : cells) {
450  result->addValues(item);
451  }
452  return result;
453 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
HcalQIEType makeQIEType(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalRecoParams > HcalHardcodeCalibrations::produceRecoParams ( const HcalRecoParamsRcd rcd)
protected

Definition at line 693 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kRecoParams, HcalDbHardcode::makeRecoParam(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

693  {
694  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceRecoParams-> ...";
695  auto const& topo = rec.get(topoTokens_[kRecoParams]);
696 
697  auto result = std::make_unique<HcalRecoParams>(&topo);
698  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
699  for (auto cell : cells) {
701  result->addValues(item);
702  }
703  return result;
704 }
const bool killHE() const
HcalRecoParam makeRecoParam(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalRespCorrs > HcalHardcodeCalibrations::produceRespCorrs ( const HcalRespCorrsRcd rcd)
protected

Definition at line 494 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, corr, gather_cfg::cout, dbHardcode, LEDCalibrationChannels::depth, HcalDetId::depth(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), HcalDbHardcode::getLayersInDepth(), hb_recalibration, hbDarkeningToken_, HcalGenericDetId::HcalGenBarrel, HcalGenericDetId::HcalGenEndcap, HcalGenericDetId::HcalGenForward, he_recalibration, heDarkeningToken_, hf_recalibration, mps_fire::i, HcalDetId::ieta(), iLumi, B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kRespCorrs, maxEta, mps_fire::result, setHBdsegm, setHEdsegm, topoTokens_, and useLayer0Weight.

Referenced by HcalHardcodeCalibrations().

494  {
495  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceRespCorrs-> ...";
496  auto const& topo = rcd.get(topoTokens_[kRespCorrs]);
497 
498  //set depth segmentation for HB/HE recalib - only happens once
500  std::vector<std::vector<int>> m_segmentation;
501  int maxEta = topo.lastHBHERing();
502  m_segmentation.resize(maxEta);
503  for (int i = 0; i < maxEta; i++) {
504  topo.getDepthSegmentation(i + 1, m_segmentation[i]);
505  }
506  if (he_recalibration && !setHEdsegm) {
507  he_recalibration->setup(m_segmentation, &rcd.get(heDarkeningToken_));
508  setHEdsegm = true;
509  }
510  if (hb_recalibration && !setHBdsegm) {
511  hb_recalibration->setup(m_segmentation, &rcd.get(hbDarkeningToken_));
512  setHBdsegm = true;
513  }
514  }
515 
516  auto result = std::make_unique<HcalRespCorrs>(&topo);
517  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
518  for (const auto& cell : cells) {
519  double corr = 1.0;
520 
521  //check for layer 0 reweighting: when depth 1 has only one layer, it is layer 0
522  if (useLayer0Weight &&
523  ((cell.genericSubdet() == HcalGenericDetId::HcalGenEndcap) ||
524  (cell.genericSubdet() == HcalGenericDetId::HcalGenBarrel)) &&
525  (HcalDetId(cell).depth() == 1 &&
526  dbHardcode.getLayersInDepth(HcalDetId(cell).ietaAbs(), HcalDetId(cell).depth(), &topo) == 1)) {
527  //layer 0 is thicker than other layers (9mm vs 3.7mm) and brighter (Bicron vs SCSN81)
528  //in Run1/Run2 (pre-2017 for HE), ODU for layer 0 had neutral density filter attached
529  //NDF was simulated as weight of 0.5 applied to Geant energy deposits
530  //for Phase1, NDF is removed - simulated as weight of 1.2 applied to Geant energy deposits
531  //to maintain RECO calibrations, move the layer 0 energy scale back to its previous state using respcorrs
532  corr = 0.5 / 1.2;
533  }
534 
535  if ((hb_recalibration != nullptr) && (cell.genericSubdet() == HcalGenericDetId::HcalGenBarrel)) {
536  int depth_ = HcalDetId(cell).depth();
537  int ieta_ = HcalDetId(cell).ieta();
538  corr *= hb_recalibration->getCorr(ieta_, depth_);
539 #ifdef DebugLog
540  std::cout << "HB ieta, depth = " << ieta_ << ", " << depth_ << " corr = " << corr << std::endl;
541 #endif
542  } else if ((he_recalibration != nullptr) && (cell.genericSubdet() == HcalGenericDetId::HcalGenEndcap)) {
543  int depth_ = HcalDetId(cell).depth();
544  int ieta_ = HcalDetId(cell).ieta();
545  corr *= he_recalibration->getCorr(ieta_, depth_);
546 #ifdef DebugLog
547  std::cout << "HE ieta, depth = " << ieta_ << ", " << depth_ << " corr = " << corr << std::endl;
548 #endif
549  } else if ((hf_recalibration != nullptr) && (cell.genericSubdet() == HcalGenericDetId::HcalGenForward)) {
550  int depth_ = HcalDetId(cell).depth();
551  int ieta_ = HcalDetId(cell).ieta();
552  corr = hf_recalibration->getCorr(ieta_, depth_, iLumi);
553 #ifdef DebugLog
554  std::cout << "HF ieta, depth = " << ieta_ << ", " << depth_ << " corr = " << corr << std::endl;
555 #endif
556  }
557 
558  HcalRespCorr item(cell.rawId(), corr);
559  result->addValues(item);
560  }
561  return result;
562 }
const bool killHE() const
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecord > hbDarkeningToken_
double maxEta
int depth() const
get the tower depth
Definition: HcalDetId.h:164
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unique_ptr< HFRecalibration > hf_recalibration
int ieta() const
get the cell ieta
Definition: HcalDetId.h:155
std::unique_ptr< HBHERecalibration > hb_recalibration
std::unique_ptr< HBHERecalibration > he_recalibration
JetCorrectorParameters corr
Definition: classes.h:5
int getLayersInDepth(int ieta, int depth, const HcalTopology *topo)
edm::ESGetToken< HBHEDarkening, HBHEDarkeningRecord > heDarkeningToken_
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalSiPMCharacteristics > HcalHardcodeCalibrations::produceSiPMCharacteristics ( const HcalSiPMCharacteristicsRcd rcd)
protected

Definition at line 818 of file HcalHardcodeCalibrations.cc.

References dbHardcode, and HcalDbHardcode::makeHardcodeSiPMCharacteristics().

Referenced by HcalHardcodeCalibrations().

819  {
820  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceSiPMCharacteristics-> ...";
821 
823 }
std::unique_ptr< HcalSiPMCharacteristics > makeHardcodeSiPMCharacteristics() const
std::unique_ptr< HcalSiPMParameters > HcalHardcodeCalibrations::produceSiPMParameters ( const HcalSiPMParametersRcd rcd)
protected

Definition at line 805 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), iLumi, B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kSiPMParameters, HcalDbHardcode::makeHardcodeSiPMParameter(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

805  {
806  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceSiPMParameters-> ...";
807  auto const& topo = rec.get(topoTokens_[kSiPMParameters]);
808 
809  auto result = std::make_unique<HcalSiPMParameters>(&topo);
810  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
811  for (auto cell : cells) {
813  result->addValues(item);
814  }
815  return result;
816 }
const bool killHE() const
HcalSiPMParameter makeHardcodeSiPMParameter(HcalGenericDetId fId, const HcalTopology *topo, double intlumi)
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalTimeCorrs > HcalHardcodeCalibrations::produceTimeCorrs ( const HcalTimeCorrsRcd rcd)
protected

Definition at line 590 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kTimeCorrs, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

590  {
591  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceTimeCorrs-> ...";
592  auto const& topo = rcd.get(topoTokens_[kTimeCorrs]);
593 
594  auto result = std::make_unique<HcalTimeCorrs>(&topo);
595  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
596  for (auto cell : cells) {
597  HcalTimeCorr item(cell.rawId(), 0.0);
598  result->addValues(item);
599  }
600  return result;
601 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalTimingParams > HcalHardcodeCalibrations::produceTimingParams ( const HcalTimingParamsRcd rcd)
protected

Definition at line 706 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kTimingParams, HcalDbHardcode::makeTimingParam(), mps_fire::result, and topoTokens_.

706  {
707  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceTimingParams-> ...";
708  auto const& topo = rec.get(topoTokens_[kTimingParams]);
709 
710  auto result = std::make_unique<HcalTimingParams>(&topo);
711  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
712  for (auto cell : cells) {
714  result->addValues(item);
715  }
716  return result;
717 }
const bool killHE() const
HcalTimingParam makeTimingParam(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalTPChannelParameters > HcalHardcodeCalibrations::produceTPChannelParameters ( const HcalTPChannelParametersRcd rcd)
protected

Definition at line 825 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kTPChannelParameters, HcalDbHardcode::makeHardcodeTPChannelParameter(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

826  {
827  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceTPChannelParameters-> ...";
828  auto const& topo = rec.get(topoTokens_[kTPChannelParameters]);
829 
830  auto result = std::make_unique<HcalTPChannelParameters>(&topo);
831  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
832  for (auto cell : cells) {
834  result->addValues(item);
835  }
836  return result;
837 }
const bool killHE() const
HcalTPChannelParameter makeHardcodeTPChannelParameter(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalTPParameters > HcalHardcodeCalibrations::produceTPParameters ( const HcalTPParametersRcd rcd)
protected

Definition at line 839 of file HcalHardcodeCalibrations.cc.

References dbHardcode, HcalDbHardcode::makeHardcodeTPParameters(), and mps_fire::result.

Referenced by HcalHardcodeCalibrations().

839  {
840  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceTPParameters-> ...";
841 
842  auto result = std::make_unique<HcalTPParameters>();
844  return result;
845 }
void makeHardcodeTPParameters(HcalTPParameters &tppar) const
std::unique_ptr< HcalValidationCorrs > HcalHardcodeCalibrations::produceValidationCorrs ( const HcalValidationCorrsRcd rcd)
protected

Definition at line 641 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kValidationCorrs, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

642  {
643  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceValidationCorrs-> ...";
644  auto const& topo = rcd.get(topoTokens_[kValidationCorrs]);
645 
646  auto result = std::make_unique<HcalValidationCorrs>(&topo);
647  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
648  for (auto cell : cells) {
649  HcalValidationCorr item(cell.rawId(), 1.0);
650  result->addValues(item);
651  }
652  return result;
653 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalZDCLowGainFractions > HcalHardcodeCalibrations::produceZDCLowGainFractions ( const HcalZDCLowGainFractionsRcd rcd)
protected

Definition at line 742 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kZDCLowGainFractions, mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

743  {
744  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceZDCLowGainFractions-> ...";
745  auto const& topo = rec.get(topoTokens_[kZDCLowGainFractions]);
746 
747  auto result = std::make_unique<HcalZDCLowGainFractions>(&topo);
748  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
749  for (auto cell : cells) {
750  HcalZDCLowGainFraction item(cell.rawId(), 0.0);
751  result->addValues(item);
752  }
753  return result;
754 }
const bool killHE() const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
std::unique_ptr< HcalZSThresholds > HcalHardcodeCalibrations::produceZSThresholds ( const HcalZSThresholdsRcd rcd)
protected

Definition at line 603 of file HcalHardcodeCalibrations.cc.

References postprocess-scan-build::cells, dbHardcode, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::get(), B2GTnPMonitor_cfi::item, HcalDbHardcode::killHE(), kZSThresholds, HcalDbHardcode::makeZSThreshold(), mps_fire::result, and topoTokens_.

Referenced by HcalHardcodeCalibrations().

603  {
604  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::produceZSThresholds-> ...";
605  auto const& topo = rcd.get(topoTokens_[kZSThresholds]);
606 
607  auto result = std::make_unique<HcalZSThresholds>(&topo);
608  const std::vector<HcalGenericDetId>& cells = allCells(topo, dbHardcode.killHE());
609  for (auto cell : cells) {
611  result->addValues(item);
612  }
613  return result;
614 }
const bool killHE() const
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
HcalZSThreshold makeZSThreshold(HcalGenericDetId fId) const
std::unordered_map< int, edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > > topoTokens_
void HcalHardcodeCalibrations::setIntervalFor ( const edm::eventsetup::EventSetupRecordKey iKey,
const edm::IOVSyncValue iTime,
edm::ValidityInterval oInterval 
)
overrideprotectedvirtual

Implements edm::EventSetupRecordIntervalFinder.

Definition at line 337 of file HcalHardcodeCalibrations.cc.

References edm::IOVSyncValue::beginOfTime(), edm::IOVSyncValue::endOfTime(), edm::IOVSyncValue::eventID(), edm::eventsetup::EventSetupRecordKey::name(), record, AlCaHLTBitMon_QueryRunRegistry::string, edm::IOVSyncValue::time(), and edm::Timestamp::value().

339  {
340  std::string record = iKey.name();
341  edm::LogInfo("HCAL") << "HcalHardcodeCalibrations::setIntervalFor-> key: " << record << " time: " << iTime.eventID()
342  << '/' << iTime.time().value();
344 }
const EventID & eventID() const
Definition: IOVSyncValue.h:40
JetCorrectorParameters::Record record
Definition: classes.h:7
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:82
std::pair< Time_t, Time_t > ValidityInterval
Definition: Time.h:17
static const IOVSyncValue & beginOfTime()
Definition: IOVSyncValue.cc:88
const Timestamp & time() const
Definition: IOVSyncValue.h:42
TimeValue_t value() const
Definition: Timestamp.h:45

Member Data Documentation

HcalDbHardcode HcalHardcodeCalibrations::dbHardcode
private
std::unique_ptr<HBHERecalibration> HcalHardcodeCalibrations::hb_recalibration
private

Definition at line 143 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().

edm::ESGetToken<HBHEDarkening, HBHEDarkeningRecord> HcalHardcodeCalibrations::hbDarkeningToken_
private

Definition at line 148 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().

std::unique_ptr<HBHERecalibration> HcalHardcodeCalibrations::he_recalibration
private

Definition at line 144 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().

edm::ESGetToken<HBHEDarkening, HBHEDarkeningRecord> HcalHardcodeCalibrations::heDarkeningToken_
private

Definition at line 147 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().

std::unique_ptr<HFRecalibration> HcalHardcodeCalibrations::hf_recalibration
private

Definition at line 145 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().

double HcalHardcodeCalibrations::iLumi
private
bool HcalHardcodeCalibrations::setHBdsegm
private

Definition at line 151 of file HcalHardcodeCalibrations.h.

Referenced by produceRespCorrs().

bool HcalHardcodeCalibrations::setHEdsegm
private

Definition at line 150 of file HcalHardcodeCalibrations.h.

Referenced by produceRespCorrs().

bool HcalHardcodeCalibrations::switchGainWidthsForTrigPrims
private

Definition at line 149 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceGainWidths().

bool HcalHardcodeCalibrations::testHEPlan1
private

Definition at line 154 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceChannelQuality().

std::unordered_map<int, edm::ESGetToken<HcalTopology, HcalRecNumberingRecord> > HcalHardcodeCalibrations::topoTokens_
private
bool HcalHardcodeCalibrations::useIeta18depth1
private

Definition at line 153 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceChannelQuality().

bool HcalHardcodeCalibrations::useLayer0Weight
private

Definition at line 152 of file HcalHardcodeCalibrations.h.

Referenced by HcalHardcodeCalibrations(), and produceRespCorrs().