CMS 3D CMS Logo

MTDTimeCalibESProducer.cc
Go to the documentation of this file.
2 
5 
8 
10 
16 
17 #include <string>
18 #include <memory>
19 
20 using namespace edm;
21 
23 public:
25  ~MTDTimeCalibESProducer() override = default;
26 
27  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
28 
29  std::unique_ptr<MTDTimeCalib> produce(const MTDTimeCalibRecord&);
30 
31 private:
35 };
36 
38  pset_ = p;
39  auto cc = setWhatProduced(this, "MTDTimeCalib");
40  ddToken_ = cc.consumes();
41  topoToken_ = cc.consumes();
42 }
43 
44 // Configuration descriptions
47  desc.add<double>("BTLTimeOffset", 0.)->setComment("Time offset (additive) to all the BTL RecHits [ns]");
48  desc.add<double>("ETLTimeOffset", 0.)->setComment("Time offset (additive) to all the ETL RecHits [ns]");
49  desc.add<double>("BTLLightCollTime", 0.2)->setComment("Light collection time for BTL tile geometry [ns]");
50  desc.add<double>("BTLLightCollSlope", 0.075)
51  ->setComment("Light collection slope for bar for BTL bar tile geometry [ns/cm]");
52  descriptions.add("MTDTimeCalibESProducer", desc);
53 }
54 
55 std::unique_ptr<MTDTimeCalib> MTDTimeCalibESProducer::produce(const MTDTimeCalibRecord& iRecord) {
56  return std::make_unique<MTDTimeCalib>(pset_, &iRecord.get(ddToken_), &iRecord.get(topoToken_));
57 }
58 
61 
uint32_t cc[maxCellsPerHit]
Definition: gpuFishbone.h:49
edm::ESGetToken< MTDTopology, MTDTopologyRcd > topoToken_
std::unique_ptr< MTDTimeCalib > produce(const MTDTimeCalibRecord &)
edm::ESGetToken< MTDGeometry, MTDDigiGeometryRecord > ddToken_
MTDTimeCalibESProducer(const edm::ParameterSet &p)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:61
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
HLT enums.
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const