Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:14:49

0001 #ifndef GEOMETRY_HCALEVENTSETUP_HCALTOPOLOGYIDEALEP_H
0002 #define GEOMETRY_HCALEVENTSETUP_HCALTOPOLOGYIDEALEP_H 1
0003 
0004 #include <memory>
0005 
0006 #include "FWCore/Framework/interface/ModuleFactory.h"
0007 #include "FWCore/Framework/interface/ESProducer.h"
0008 
0009 #include "Geometry/CaloTopology/interface/HcalTopology.h"
0010 #include "Geometry/Records/interface/HcalRecNumberingRecord.h"
0011 #include "Geometry/Records/interface/IdealGeometryRecord.h"
0012 
0013 namespace edm {
0014   class ConfigurationDescriptions;
0015 }
0016 
0017 class HcalTopologyIdealEP : public edm::ESProducer {
0018 public:
0019   HcalTopologyIdealEP(const edm::ParameterSet&);
0020 
0021   using ReturnType = std::unique_ptr<HcalTopology>;
0022 
0023   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0024 
0025   ReturnType produce(const HcalRecNumberingRecord&);
0026 
0027 private:
0028   // ----------member data ---------------------------
0029   edm::ESGetToken<HcalDDDRecConstants, HcalRecNumberingRecord> m_hdcToken;
0030   std::string m_restrictions;
0031   bool m_mergePosition;
0032 };
0033 #endif