00001 #ifndef GsfTrackProducer_h 00002 #define GsfTrackProducer_h 00003 00004 #include "RecoTracker/TrackProducer/interface/GsfTrackProducerBase.h" 00005 #include "RecoTracker/TrackProducer/interface/TrackProducerAlgorithm.h" 00006 00007 #include "TrackingTools/TransientTrack/interface/TransientTrack.h" 00008 #include "DataFormats/GsfTrackReco/interface/GsfComponent5D.h" 00009 #include "DataFormats/GsfTrackReco/interface/GsfTrackFwd.h" 00010 #include "DataFormats/GsfTrackReco/interface/GsfTrackExtraFwd.h" 00011 00012 class GsfTrackProducer : public GsfTrackProducerBase, public edm::EDProducer { 00013 public: 00014 00015 explicit GsfTrackProducer(const edm::ParameterSet& iConfig); 00016 00017 00018 virtual void produce(edm::Event&, const edm::EventSetup&); 00019 00020 // virtual void putInEvt(edm::Event&, 00021 // std::auto_ptr<TrackingRecHitCollection>&, 00022 // std::auto_ptr<reco::GsfTrackCollection>&, 00023 // std::auto_ptr<reco::TrackExtraCollection>&, 00024 // std::auto_ptr<reco::GsfTrackExtraCollection>&, 00025 // std::auto_ptr<std::vector<Trajectory> >&, 00026 // AlgoProductCollection&); 00027 00028 // std::vector<reco::TransientTrack> getTransient(edm::Event&, const edm::EventSetup&); 00029 // protected: 00030 // void fillStates (TrajectoryStateOnSurface tsos, std::vector<reco::GsfComponent5D>& states) const; 00031 00032 private: 00033 TrackProducerAlgorithm<reco::GsfTrack> theAlgo; 00034 00035 }; 00036 00037 #endif