00001 #ifndef _LowPtClusterShapeSeedComparitor_h_ 00002 #define _LowPtClusterShapeSeedComparitor_h_ 00003 00004 00005 #include "RecoTracker/TkSeedingLayers/interface/SeedComparitor.h" 00006 #include "FWCore/Framework/interface/ESHandle.h" 00007 #include "RecoPixelVertexing/PixelLowPtUtilities/interface/ClusterShapeHitFilter.h" 00008 00009 class TrackerTopology; 00010 00011 namespace edm { class ParameterSet; class EventSetup; } 00012 00013 class LowPtClusterShapeSeedComparitor : public SeedComparitor 00014 { 00015 public: 00016 LowPtClusterShapeSeedComparitor(const edm::ParameterSet& ps){} 00017 virtual ~LowPtClusterShapeSeedComparitor(){} 00018 virtual void init(const edm::EventSetup& es) ; 00019 virtual bool compatible(const SeedingHitSet &hits, const TrackingRegion & region) const ; 00020 virtual bool compatible(const TrajectorySeed &seed) const { return true; } 00021 virtual bool compatible(const TrajectoryStateOnSurface &, 00022 const TransientTrackingRecHit::ConstRecHitPointer &hit) const { return true; } 00023 virtual bool compatible(const SeedingHitSet &hits, 00024 const GlobalTrajectoryParameters &helixStateAtVertex, 00025 const FastHelix &helix, 00026 const TrackingRegion & region) const { return true; } 00027 virtual bool compatible(const SeedingHitSet &hits, 00028 const GlobalTrajectoryParameters &straightLineStateAtVertex, 00029 const TrackingRegion & region) const { return true; } 00030 00031 private: 00033 edm::ESHandle<ClusterShapeHitFilter> theShapeFilter; 00034 edm::ESHandle<TrackerTopology> theTTopo; 00035 }; 00036 00037 #endif 00038