00001 #ifndef DetLayers_ForwardDetRingOneZ_H 00002 #define DetLayers_ForwardDetRingOneZ_H 00003 00008 #include "TrackingTools/DetLayers/interface/ForwardDetRing.h" 00009 00010 00011 class ForwardDetRingOneZ : public ForwardDetRing { 00012 public: 00013 00015 ForwardDetRingOneZ(){}; 00016 00018 ForwardDetRingOneZ( std::vector<const GeomDet*>::const_iterator first, 00019 std::vector<const GeomDet*>::const_iterator last); 00020 00021 // Construct from a std::vector of Det*. 00022 ForwardDetRingOneZ( const std::vector<const GeomDet*>& dets); 00023 00024 virtual ~ForwardDetRingOneZ(); 00025 00026 virtual const std::vector<const GeomDet*>& basicComponents() const {return theDets;} 00027 00028 protected: 00029 00030 bool add( int idet, std::vector<DetWithState>& result, 00031 const TrajectoryStateOnSurface& tsos, 00032 const Propagator& prop, 00033 const MeasurementEstimator& est) const; 00034 00035 private: 00036 std::vector<const GeomDet*> theDets; 00037 00038 void initialize(); 00039 00040 }; 00041 #endif 00042