CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/RecoTracker/TkSeedingLayers/plugins/SeedingLayersESProducer.h

Go to the documentation of this file.
00001 #ifndef SeedingLayersESProducer_H
00002 #define SeedingLayersESProducer_H
00003 
00004 #include "FWCore/Framework/interface/ESProducer.h"
00005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00006 #include <boost/shared_ptr.hpp>
00007 
00008 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
00009 #include "RecoTracker/TkSeedingLayers/interface/SeedingLayerSetsBuilder.h"
00010 
00011 class SeedingLayersESProducer : public edm::ESProducer {
00012 public:
00013 
00014   SeedingLayersESProducer(const edm::ParameterSet & cfg) : theConfig(cfg) {
00015     setWhatProduced(this, theConfig.getParameter<std::string>("ComponentName") );
00016   }
00017 
00018   boost::shared_ptr<SeedingLayerSetsBuilder> produce(const TrackerDigiGeometryRecord & r) {
00019     theResult = boost::shared_ptr<SeedingLayerSetsBuilder>( new SeedingLayerSetsBuilder(theConfig));
00020     return theResult;
00021   }
00022   
00023 private:
00024   edm::ParameterSet theConfig;
00025   boost::shared_ptr<SeedingLayerSetsBuilder> theResult;
00026 };
00027 #endif