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