CMS 3D CMS Logo

DDSpecParRegistryESProducer.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: DetectorDescription/DDCMS
4 // Class: DDSpecParRegistryESProducer
5 //
13 //
14 // Original Author: Ianna Osborne
15 // Created: Wed, 09 Jan 2019 16:04:31 GMT
16 //
17 //
18 
19 #include <memory>
20 
24 
30 #include <DD4hep/Detector.h>
31 #include <DD4hep/SpecParRegistry.h>
32 
33 using namespace std;
34 using namespace cms;
35 
37 public:
39  ~DDSpecParRegistryESProducer() override;
40 
41  using ReturnType = unique_ptr<dd4hep::SpecParRegistry>;
42 
44 
45  ReturnType produce(const DDSpecParRegistryRcd&);
46 
47 private:
49 };
50 
52  : m_token(
53  setWhatProduced(this).consumes(edm::ESInputTag("", iConfig.getParameter<std::string>("appendToDataLabel")))) {
54 }
55 
57 
60  descriptions.addDefault(desc);
61 }
62 
64  const dd4hep::SpecParRegistry& registry = iRecord.get(m_token).specpars();
65  auto product = std::make_unique<dd4hep::SpecParRegistry>();
66  product->specpars.insert(registry.specpars.begin(), registry.specpars.end());
67  return product;
68 }
69 
ConfigurationDescriptions.h
DDSpecParRegistryRcd
Definition: DDSpecParRegistryRcd.h:8
ESHandle.h
ESInputTag
DDSpecParRegistryESProducer::ReturnType
unique_ptr< dd4hep::SpecParRegistry > ReturnType
Definition: DDSpecParRegistryESProducer.cc:41
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
ESProducer.h
DDSpecParRegistryESProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &)
Definition: DDSpecParRegistryESProducer.cc:58
DDDetector.h
fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
ParameterSetDescription.h
edm::eventsetup::DependentRecordImplementation::get
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
Definition: DependentRecordImplementation.h:109
DDSpecParRegistryESProducer::DDSpecParRegistryESProducer
DDSpecParRegistryESProducer(const edm::ParameterSet &)
Definition: DDSpecParRegistryESProducer.cc:51
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
edm::ParameterSet
Definition: ParameterSet.h:47
DDSpecParRegistryESProducer::produce
ReturnType produce(const DDSpecParRegistryRcd &)
Definition: DDSpecParRegistryESProducer.cc:63
DDSpecParRegistryESProducer::m_token
const edm::ESGetToken< DDDetector, IdealGeometryRecord > m_token
Definition: DDSpecParRegistryESProducer.cc:48
IdealGeometryRecord.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ESGetToken< DDDetector, IdealGeometryRecord >
ModuleFactory.h
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
std
Definition: JetResolutionObject.h:76
DDSpecParRegistryRcd.h
DEFINE_FWK_EVENTSETUP_MODULE
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:60
DDSpecParRegistryESProducer::~DDSpecParRegistryESProducer
~DDSpecParRegistryESProducer() override
Definition: DDSpecParRegistryESProducer.cc:56
edm::ESProducer
Definition: ESProducer.h:104
edm::ConfigurationDescriptions::addDefault
void addDefault(ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:99
DDSpecParRegistryESProducer
Definition: DDSpecParRegistryESProducer.cc:36
cms
Namespace of DDCMS conversion namespace.
Definition: ProducerAnalyzer.cc:21