Back to home page

Project CMSSW displayed by LXR

 
 

    


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);