00001 // -*- C++ -*- 00002 // 00003 // Package: TrajectoryCleanerESProducer 00004 // Class: TrajectoryCleanerESProducer 00005 // 00013 // 00014 // Original Author: Jean-Roch Vlimant 00015 // Created: Thu Oct 11 05:20:59 CEST 2007 00016 // $Id: TrajectoryCleanerESProducer.h,v 1.1 2007/10/16 04:16:59 vlimant 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/ModuleFactory.h" 00027 #include "FWCore/Framework/interface/ESProducer.h" 00028 00029 #include "FWCore/Framework/interface/ESHandle.h" 00030 00031 #include "TrackingTools/Records/interface/TrackingComponentsRecord.h" 00032 #include "TrackingTools/TrajectoryCleaning/interface/TrajectoryCleaner.h" 00033 00034 class TrajectoryCleanerESProducer : public edm::ESProducer { 00035 public: 00036 TrajectoryCleanerESProducer(const edm::ParameterSet&); 00037 ~TrajectoryCleanerESProducer(); 00038 00039 typedef boost::shared_ptr<TrajectoryCleaner> ReturnType; 00040 00041 ReturnType produce(const TrackingComponentsRecord&); 00042 private: 00043 std::string theComponentName; 00044 };