00001 #ifndef RecoEGAMMA_ConversionTrack_InOutConversionTrackFinder_h 00002 #define RecoEGAMMA_ConversionTrack_InOutConversionTrackFinder_h 00003 00013 // 00014 #include "DataFormats/CaloRecHit/interface/CaloClusterFwd.h" 00015 #include "DataFormats/TrajectorySeed/interface/TrajectorySeedCollection.h" 00016 #include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h" 00017 // 00018 #include "RecoTracker/CkfPattern/interface/RedundantSeedCleaner.h" 00019 #include "TrackingTools/PatternTools/interface/TrajectoryMeasurement.h" 00020 #include "RecoEgamma/EgammaPhotonAlgos/interface/ConversionTrackFinder.h" 00021 00022 // C/C++ headers 00023 #include <string> 00024 #include <vector> 00025 00026 // 00027 00028 class MagneticField; 00029 class TrajectoryCleanerBySharedHits; 00030 00031 00032 class InOutConversionTrackFinder : public ConversionTrackFinder { 00033 public : 00034 00035 InOutConversionTrackFinder( const edm::EventSetup& es, 00036 const edm::ParameterSet& config ); 00037 00038 00039 virtual ~InOutConversionTrackFinder(); 00040 virtual std::vector<Trajectory> tracks(const TrajectorySeedCollection seeds, TrackCandidateCollection &candidate ) const ; 00041 00042 00043 private: 00044 00045 TrajectoryCleanerBySharedHits* theTrajectoryCleaner_; 00046 RedundantSeedCleaner* theSeedCleaner_; 00047 00048 00049 }; 00050 00051 #endif