CMS 3D CMS Logo

EcalMultifitParametersGPUESProducer.cc
Go to the documentation of this file.
1 #include <array>
2 #include <tuple>
3 #include <utility>
4 
18 
20 public:
22  ~EcalMultifitParametersGPUESProducer() override = default;
23 
25  std::unique_ptr<EcalMultifitParametersGPU> produce(JobConfigurationGPURecord const&);
26 
27 protected:
29  const edm::IOVSyncValue&,
30  edm::ValidityInterval&) override;
31 
32 private:
34 };
35 
37  setWhatProduced(this);
38  findingRecord<JobConfigurationGPURecord>();
39 }
40 
42  const edm::IOVSyncValue& iTime,
43  edm::ValidityInterval& oInterval) {
45 }
46 
49  d.add<std::vector<int>>("pulseOffsets", {-3, -2, -1, 0, 1, 2, 3, 4});
50  d.add<std::vector<double>>("EBtimeFitParameters",
51  {-2.015452e+00,
52  3.130702e+00,
53  -1.234730e+01,
54  4.188921e+01,
55  -8.283944e+01,
56  9.101147e+01,
57  -5.035761e+01,
58  1.105621e+01});
59  d.add<std::vector<double>>("EEtimeFitParameters",
60  {-2.390548e+00,
61  3.553628e+00,
62  -1.762341e+01,
63  6.767538e+01,
64  -1.332130e+02,
65  1.407432e+02,
66  -7.541106e+01,
67  1.620277e+01});
68  d.add<std::vector<double>>("EBamplitudeFitParameters", {1.138, 1.652});
69  d.add<std::vector<double>>("EEamplitudeFitParameters", {1.890, 1.400});
70  desc.addWithDefaultLabel(d);
71 }
72 
73 std::unique_ptr<EcalMultifitParametersGPU> EcalMultifitParametersGPUESProducer::produce(
75  return std::make_unique<EcalMultifitParametersGPU>(
76  pset_.getParameter<std::vector<double>>("EBamplitudeFitParameters"),
77  pset_.getParameter<std::vector<double>>("EEamplitudeFitParameters"),
78  pset_.getParameter<std::vector<double>>("EBtimeFitParameters"),
79  pset_.getParameter<std::vector<double>>("EEtimeFitParameters"));
80 }
81 
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
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
d
Definition: ztail.py:151
#define DEFINE_FWK_EVENTSETUP_SOURCE(type)
Definition: SourceFactory.h:91
std::unique_ptr< EcalMultifitParametersGPU > produce(JobConfigurationGPURecord const &)
static void fillDescriptions(edm::ConfigurationDescriptions &)
void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override
~EcalMultifitParametersGPUESProducer() override=default