1 #ifndef TkDetLayers_TIBRing_h
2 #define TkDetLayers_TIBRing_h
12 #pragma GCC visibility push(hidden)
15 TIBRing(std::vector<const GeomDet*>& theGeomDets);
21 virtual const std::vector<const GeomDet*>&
basicComponents()
const {
return theDets;}
23 virtual const std::vector<const GeometricSearchDet*>&
components()
const;
26 virtual std::pair<bool, TrajectoryStateOnSurface>
35 std::vector<DetGroup> &
result)
const;
46 void checkPeriodicity(std::vector<const GeomDet*>::const_iterator
first,
47 std::vector<const GeomDet*>::const_iterator
last);
49 void checkRadius(std::vector<const GeomDet*>::const_iterator
first,
50 std::vector<const GeomDet*>::const_iterator
last);
52 void computeHelicity();
58 isValid_(
true),closestIndex(ci), nextIndex(ni), nextDistance(nd) {}
72 std::vector<DetGroup>&
result)
const;
89 std::vector<const GeomDet*> theDets;
95 #pragma GCC visibility pop
virtual std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const =0
virtual const BoundCylinder & specificSurface() const
Return the ring surface as a.
bool isValid_(value_type const &hash)
ReferenceCountingPointer< BoundCylinder > theCylinder
virtual const std::vector< const GeometricSearchDet * > & components() const =0
Returns basic components, if any.
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
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
PeriodicBinFinderInPhi< double > BinFinderType
virtual const BoundSurface & surface() const
The surface of the GeometricSearchDet.
volatile std::atomic< bool > shutdown_flag false
SubRingCrossings(int ci, int ni, float nd)
Unlimited (trivial) bounds.