1 #ifndef DetLayers_GeometricSearchDet_h 2 #define DetLayers_GeometricSearchDet_h 19 typedef std::pair<const GeomDet*, TrajectoryStateOnSurface>
DetWithState;
37 virtual const std::vector<const GeometricSearchDet*>&
components()
const = 0;
69 std::vector<DetWithState>&
result)
const;
97 std::vector<DetGroup>&
result)
const;
virtual std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const =0
BoundSurface::RotationType RotationType
virtual const BoundSurface & surface() const =0
The surface of the GeometricSearchDet.
virtual const Surface::PositionType & position() const
Returns position of the surface.
BoundSurface::PositionType PositionType
virtual std::vector< DetWithState > compatibleDets(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
virtual std::vector< DetGroup > groupedCompatibleDets(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
virtual const std::vector< const GeometricSearchDet * > & components() const =0
Returns basic components, if any.
GeometricSearchDet(bool doHaveGroups)
GeomDetCompatibilityChecker theCompatibilityChecker
TrajectoryStateOnSurface TrajectoryState
const PositionType & position() const
virtual void groupedCompatibleDetsV(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const
virtual const std::vector< const GeomDet * > & basicComponents() const =0
virtual void compatibleDetsV(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const
std::pair< const GeomDet *, TrajectoryStateOnSurface > DetWithState
virtual ~GeometricSearchDet()