CMS 3D CMS Logo

FastTimeNumberingInitialization.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: FastTimeNumberingInitialization
4 // Class: FastTimeNumberingInitialization
5 //
14 //
15 // Original Author: Sunanda Banerjee
16 // Created: Tue Mar 21 16:40:29 PDT 2013
17 // $Id: FastTimeNumberingInitialization.cc,v 1.0 2014/04/24 12:47:41 sunanda Exp
18 // $
19 //
20 //
21 
22 // user include files
27 
34 
35 //#define EDM_ML_DEBUG
36 
38 public:
41 
42  using ReturnType = std::unique_ptr<FastTimeDDDConstants>;
43 
45 
46 private:
48 };
49 
51  : ftParToken_{setWhatProduced(this).consumes<FastTimeParameters>(edm::ESInputTag{})} {
52 #ifdef EDM_ML_DEBUG
53  edm::LogVerbatim("HGCalGeom") << "constructing FastTimeNumberingInitialization";
54 #endif
55 }
56 
58 
59 // ------------ method called to produce the data ------------
61  const IdealGeometryRecord& iRecord) {
62 #ifdef EDM_ML_DEBUG
63  edm::LogVerbatim("HGCalGeom") << "in FastTimeNumberingInitialization::produce";
64 #endif
65  const auto& pFTpar = iRecord.get(ftParToken_);
66  return std::make_unique<FastTimeDDDConstants>(&pFTpar);
67 }
68 
69 // define this as a plug-in
Log< level::Info, true > LogVerbatim
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:163
std::unique_ptr< FastTimeDDDConstants > ReturnType
ReturnType produce(const IdealGeometryRecord &)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:60
edm::ESGetToken< FastTimeParameters, IdealGeometryRecord > ftParToken_
FastTimeNumberingInitialization(const edm::ParameterSet &)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const