CMS 3D CMS Logo

DDDetectorESProducer.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: DetectorDescription/DDDetectorESProducer
4 // Class: DDDetectorESProducer
5 //
13 //
14 // Original Author: Ianna Osborne
15 // Created: Fri, 07 Dec 2018 11:20:52 GMT
16 //
17 //
18 
19 #include <memory>
20 #include <iostream>
21 
25 
29 
31 public:
33  ~DDDetectorESProducer() override;
34 
35  using ReturnType = std::unique_ptr<cms::DDDetector>;
36 
39 
40 protected:
42 
43 private:
45 };
46 
48  : m_confGeomXMLFiles(iConfig.getParameter<std::string>("confGeomXMLFiles"))
49 {
50  setWhatProduced(this);
51  findingRecord<DetectorDescriptionRcd>();
52 }
53 
55 {
56 }
57 
58 void
60 {
62 
63  desc.add<std::string>("confGeomXMLFiles");
64  descriptions.addDefault(desc);
65 }
66 
67 void
70 }
71 
74 {
75  auto product = std::make_unique<cms::DDDetector>();
76  product->process(m_confGeomXMLFiles);
77  return product;
78 }
79 
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:116
ReturnType produce(const DetectorDescriptionRcd &)
static void fillDescriptions(edm::ConfigurationDescriptions &)
std::unique_ptr< cms::DDDetector > ReturnType
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:97
std::pair< Time_t, Time_t > ValidityInterval
Definition: Time.h:19
void addDefault(ParameterSetDescription const &psetDescription)
static const IOVSyncValue & beginOfTime()
ParameterDescriptionBase * add(U const &iLabel, T const &value)
#define DEFINE_FWK_EVENTSETUP_SOURCE(type)
Definition: SourceFactory.h:92
DDDetectorESProducer(const edm::ParameterSet &)
void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override