00001 #ifndef TkDetLayers_PixelRod_h 00002 #define TkDetLayers_PixelRod_h 00003 00004 00005 #include "TrackingTools/DetLayers/interface/DetRodOneR.h" 00006 #include "TrackingTools/DetLayers/interface/PeriodicBinFinderInZ.h" 00007 00011 #pragma GCC visibility push(hidden) 00012 class PixelRod GCC11_FINAL : public DetRodOneR{ 00013 public: 00014 typedef PeriodicBinFinderInZ<float> BinFinderType; 00015 00016 PixelRod(std::vector<const GeomDet*>& theDets); 00017 ~PixelRod(); 00018 00019 // GeometricSearchDet interface 00020 00021 virtual const std::vector<const GeometricSearchDet*>& components() const; 00022 00023 virtual std::pair<bool, TrajectoryStateOnSurface> 00024 compatible( const TrajectoryStateOnSurface& ts, const Propagator&, 00025 const MeasurementEstimator&) const; 00026 00027 virtual void 00028 compatibleDetsV( const TrajectoryStateOnSurface& startingState, 00029 const Propagator& prop, 00030 const MeasurementEstimator& est, 00031 std::vector<DetWithState> & result) const; 00032 00033 virtual void 00034 groupedCompatibleDetsV( const TrajectoryStateOnSurface&, 00035 const Propagator&, 00036 const MeasurementEstimator&, 00037 std::vector<DetGroup> &) const; 00038 00039 00040 virtual bool hasGroups() const {return false;} 00041 00042 private: 00043 BinFinderType theBinFinder; 00044 00045 00046 }; 00047 00048 00049 #pragma GCC visibility pop 00050 #endif