CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_6/src/RecoTracker/TkNavigation/plugins/NavigationSchoolESProducer.h

Go to the documentation of this file.
00001 #ifndef RecoTracker_TkNavigation_NavigationSchoolESProducer_h
00002 #define RecoTracker_TkNavigation_NavigationSchoolESProducer_h
00003 
00004 #include <memory>
00005 #include "boost/shared_ptr.hpp"
00006 
00007 // user include files
00008 #include "FWCore/Framework/interface/ModuleFactory.h"
00009 #include "FWCore/Framework/interface/ESProducer.h"
00010 
00011 #include "FWCore/Framework/interface/ESHandle.h"
00012 
00013 #include "RecoTracker/TkNavigation/interface/NavigationSchoolFactory.h"
00014 #include "RecoTracker/Record/interface/NavigationSchoolRecord.h"
00015 
00016 //
00017 // class decleration
00018 //
00019 
00020 class NavigationSchoolESProducer : public edm::ESProducer {
00021 public:
00022   NavigationSchoolESProducer(const edm::ParameterSet&);
00023   ~NavigationSchoolESProducer();
00024   
00025   typedef boost::shared_ptr<NavigationSchool> ReturnType;
00026 
00027   virtual ReturnType produce(const NavigationSchoolRecord&);
00028  protected:
00029   // ----------member data ---------------------------
00030   edm::ParameterSet theNavigationPSet;
00031   std::string theNavigationSchoolName;
00032   boost::shared_ptr<NavigationSchool> theNavigationSchool ;
00033 };
00034 
00035 #endif