Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef HCAL_TOWER_ALGO_HCAL_TRIG_TOWER_GEOMETRY_ES_PRODUCER_H
0002 #define HCAL_TOWER_ALGO_HCAL_TRIG_TOWER_GEOMETRY_ES_PRODUCER_H
0003 
0004 #include <memory>
0005 
0006 #include "FWCore/Framework/interface/ESProducer.h"
0007 #include "FWCore/Utilities/interface/ESGetToken.h"
0008 #include "Geometry/Records/interface/CaloGeometryRecord.h"
0009 #include "Geometry/HcalTowerAlgo/interface/HcalTrigTowerGeometry.h"
0010 
0011 namespace edm {
0012   class ConfigurationDescriptions;
0013 }
0014 
0015 class HcalTrigTowerGeometryESProducer : public edm::ESProducer {
0016 public:
0017   HcalTrigTowerGeometryESProducer(const edm::ParameterSet& conf);
0018   ~HcalTrigTowerGeometryESProducer(void) override;
0019 
0020   std::unique_ptr<HcalTrigTowerGeometry> produce(const CaloGeometryRecord&);
0021 
0022   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0023 
0024 private:
0025   edm::ESGetToken<HcalTopology, HcalRecNumberingRecord> topologyToken_;
0026 };
0027 
0028 #endif  // HCAL_TOWER_ALGO_HCAL_TRIG_TOWER_GEOMETRY_ES_PRODUCER_H