CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/Geometry/CaloEventSetup/plugins/CaloTowerConstituentsMapBuilder.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    CaloTowerConstituentsMapBuilder
00004 // Class:      CaloTowerConstituentsMapBuilder
00005 // 
00013 //
00014 // Original Author:  Jeremiah Mans
00015 //         Created:  Mon Oct  3 11:35:27 CDT 2005
00016 // $Id: CaloTowerConstituentsMapBuilder.h,v 1.4 2012/10/26 09:47:48 yana 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/CaloTopology/interface/CaloTowerConstituentsMap.h"
00032 
00033 namespace edm {
00034   class ConfigurationDescriptions;
00035 }
00036 
00037 //
00038 // class decleration
00039 //
00040 
00041 class CaloTowerConstituentsMapBuilder : public edm::ESProducer {
00042 public:
00043   CaloTowerConstituentsMapBuilder(const edm::ParameterSet&);
00044   ~CaloTowerConstituentsMapBuilder();
00045 
00046   typedef std::auto_ptr<CaloTowerConstituentsMap> ReturnType;
00047 
00048   ReturnType produce(const IdealGeometryRecord&);
00049   static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
00050 
00051 private:
00052   void parseTextMap(const std::string& filename,CaloTowerConstituentsMap& theMap);
00053   std::string mapFile_;
00054 };
00055