File indexing completed on 2025-01-31 02:20:02
0001 #include <memory>
0002 #include <string>
0003
0004 #include "FWCore/Framework/interface/ESHandle.h"
0005 #include "FWCore/Framework/interface/ESProducer.h"
0006 #include "FWCore/Framework/interface/EventSetup.h"
0007 #include "FWCore/Framework/interface/ModuleFactory.h"
0008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0009 #include "TrackingTools/DetLayers/interface/DetLayerGeometry.h"
0010 #include "TrackingTools/RecoGeometry/interface/RecoGeometryRecord.h"
0011
0012 class DetLayerGeometryESProducer : public edm::ESProducer {
0013 public:
0014 DetLayerGeometryESProducer(const edm::ParameterSet& p);
0015 ~DetLayerGeometryESProducer() override = default;
0016
0017 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0018
0019 std::unique_ptr<DetLayerGeometry> produce(const RecoGeometryRecord&);
0020 };
0021
0022 using namespace edm;
0023
0024 DetLayerGeometryESProducer::DetLayerGeometryESProducer(const edm::ParameterSet& p) {
0025 std::string myName = p.getParameter<std::string>("ComponentName");
0026 setWhatProduced(this, myName);
0027 }
0028
0029 void DetLayerGeometryESProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) {
0030 edm::ParameterSetDescription desc;
0031 desc.add<std::string>("ComponentName", std::string(""));
0032 descriptions.addWithDefaultLabel(desc);
0033 }
0034
0035 std::unique_ptr<DetLayerGeometry> DetLayerGeometryESProducer::produce(const RecoGeometryRecord& iRecord) {
0036 return std::make_unique<DetLayerGeometry>();
0037 }
0038
0039 DEFINE_FWK_EVENTSETUP_MODULE(DetLayerGeometryESProducer);