00001 #ifndef GEOMETRY_HCALEVENTSETUP_HCALHARDCODEGEOMETRYEP_H 00002 #define GEOMETRY_HCALEVENTSETUP_HCALHARDCODEGEOMETRYEP_H 1 00003 00004 00005 // system include files 00006 #include <memory> 00007 #include "boost/shared_ptr.hpp" 00008 00009 // user include files 00010 #include "FWCore/Framework/interface/ESProducer.h" 00011 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00012 00013 // class declarations 00014 class CaloSubdetectorGeometry; 00015 class IdealGeometryRecord; 00016 class HcalGeometryRecord; 00017 00018 00019 class HcalHardcodeGeometryEP : public edm::ESProducer { 00020 00021 public: 00022 HcalHardcodeGeometryEP(const edm::ParameterSet&); 00023 virtual ~HcalHardcodeGeometryEP(); 00024 00025 typedef boost::shared_ptr<CaloSubdetectorGeometry> ReturnType; 00026 00027 ReturnType produceIdeal( const IdealGeometryRecord&); 00028 ReturnType produceAligned( const HcalGeometryRecord& ); 00029 00030 void idealRecordCallBack( const IdealGeometryRecord& ); 00031 00032 private: 00033 edm::ParameterSet ps0; 00034 }; 00035 00036 00037 00038 #endif