00001 #ifndef TrackingTools_TrackFitters_FlexibleKFFittingSmootherESProducer_h 00002 #define TrackingTools_TrackFitters_FlexibleKFFittingSmootherESProducer_h 00003 00012 #include "FWCore/Framework/interface/ESProducer.h" 00013 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00014 #include "TrackingTools/TrackFitters/interface/TrajectoryFitterRecord.h" 00015 #include "TrackingTools/TrackFitters/interface/FlexibleKFFittingSmoother.h" 00016 #include <boost/shared_ptr.hpp> 00017 00018 class FlexibleKFFittingSmootherESProducer: public edm::ESProducer{ 00019 public: 00020 FlexibleKFFittingSmootherESProducer(const edm::ParameterSet & p); 00021 virtual ~FlexibleKFFittingSmootherESProducer(); 00022 boost::shared_ptr<TrajectoryFitter> produce(const TrajectoryFitterRecord &); 00023 private: 00024 boost::shared_ptr<TrajectoryFitter> _fitter; 00025 edm::ParameterSet pset_; 00026 }; 00027 00028 00029 #endif 00030 00031 00032 00033