CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/Geometry/CaloEventSetup/plugins/CaloGeometryBuilder.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    CaloGeometryBuilder
00004 // Class:      CaloGeometryBuilder
00005 // 
00013 //
00014 // Original Author:  Jeremiah Mans
00015 //         Created:  Mon Oct  3 11:35:27 CDT 2005
00016 // $Id: CaloGeometryBuilder.h,v 1.4 2008/11/10 15:15:30 heltsley Exp $
00017 //
00018 //
00019 
00020 
00021 // system include files
00022 #include <memory>
00023 #include "boost/shared_ptr.hpp"
00024 
00025 // user include files
00026 #include "FWCore/Framework/interface/ESProducer.h"
00027 
00028 #include "FWCore/Framework/interface/ESHandle.h"
00029 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00030 #include "Geometry/Records/interface/IdealGeometryRecord.h"
00031 #include "Geometry/Records/interface/CaloGeometryRecord.h"
00032 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
00033 
00034 //
00035 // class decleration
00036 //
00037 
00038 class CaloGeometryBuilder : public edm::ESProducer 
00039 {
00040    public:
00041 
00042       typedef boost::shared_ptr<CaloGeometry> ReturnType;
00043 
00044       typedef edm::ESHandle<CaloSubdetectorGeometry> SubdType ;
00045 
00046       CaloGeometryBuilder( const edm::ParameterSet& iConfig ) ;
00047 
00048       virtual ~CaloGeometryBuilder() {} ;
00049 
00050       ReturnType produceAligned( const CaloGeometryRecord&  iRecord ) ;
00051 
00052    private:
00053       // ----------member data ---------------------------
00054       
00055       std::vector<std::string> theCaloList;
00056 };
00057