CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoTracker/TkSeedingLayers/interface/SeedComparitor.h

Go to the documentation of this file.
00001 #ifndef RecoTracker_TkSeedingLayers_SeedComparitor_H
00002 #define RecoTracker_TkSeedingLayers_SeedComparitor_H
00003 
00011 class TrajectorySeed; 
00012 class SeedingHitSet;
00013 class TrackingRegion;
00014 class TrajectoryStateOnSurface;
00015 class FastHelix;
00016 class GlobalTrajectoryParameters;
00017 
00018 namespace edm { class EventSetup; }
00019 
00020 #include "TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHit.h"
00021 
00022 class SeedComparitor {
00023  public:
00024   virtual ~SeedComparitor() {}
00025   virtual void init(const edm::EventSetup& es) = 0;
00026   virtual bool compatible(const SeedingHitSet  &hits, const TrackingRegion & region) const = 0;
00027   virtual bool compatible(const TrajectorySeed &seed) const = 0;
00028   virtual bool compatible(const TrajectoryStateOnSurface &,  
00029                           const TransientTrackingRecHit::ConstRecHitPointer &hit) const = 0;
00030   virtual bool compatible(const SeedingHitSet  &hits, 
00031                           const GlobalTrajectoryParameters &helixStateAtVertex,
00032                           const FastHelix                  &helix,
00033                           const TrackingRegion & region) const = 0;
00034   virtual bool compatible(const SeedingHitSet  &hits, 
00035                           const GlobalTrajectoryParameters &straightLineStateAtVertex,
00036                           const TrackingRegion & region) const = 0;
00037 };
00038 
00039 #endif
00040