CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/Geometry/ForwardGeometry/plugins/ZdcHardcodeGeometryEP.h

Go to the documentation of this file.
00001 #ifndef Geometry_ForwardGeometry_ZdcHardcodeGeometryEP_H
00002 #define Geometry_ForwardGeometry_ZdcHardcodeGeometryEP_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/ModuleFactory.h"
00011 #include "FWCore/Framework/interface/ESProducer.h"
00012 #include "FWCore/Framework/interface/ESHandle.h"
00013 #include "Geometry/Records/interface/ZDCGeometryRecord.h"
00014 #include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h"
00015 #include "Geometry/ForwardGeometry/interface/ZdcHardcodeGeometryLoader.h"
00016 
00017 //
00018 // class decleration
00019 //
00020 
00021 class ZdcHardcodeGeometryEP : public edm::ESProducer 
00022 {
00023    public:
00024       ZdcHardcodeGeometryEP(const edm::ParameterSet&);
00025       ~ZdcHardcodeGeometryEP();
00026 
00027       typedef boost::shared_ptr<CaloSubdetectorGeometry> ReturnType;
00028 
00029       ReturnType produce( const ZDCGeometryRecord&   ) ;
00030 
00031    private:
00032 
00033       // ----------member data ---------------------------
00034 
00035       ZdcHardcodeGeometryLoader* m_loader ;
00036 
00037       ZdcTopology m_topology ;
00038 
00039       bool m_applyAlignment ;
00040 };
00041 
00042 
00043 
00044 #endif