![]() |
![]() |
#include <TIBRing.h>
Classes | |
struct | SubRingCrossings |
Public Member Functions | |
virtual const std::vector < const GeomDet * > & | basicComponents () const |
virtual std::pair< bool, TrajectoryStateOnSurface > | compatible (const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const |
virtual const std::vector < const GeometricSearchDet * > & | components () const |
Returns basic components, if any. More... | |
virtual void | groupedCompatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const |
virtual const BoundCylinder & | specificSurface () const |
Return the ring surface as a. More... | |
virtual const BoundSurface & | surface () const |
The surface of the GeometricSearchDet. More... | |
TIBRing (std::vector< const GeomDet * > &theGeomDets) | |
~TIBRing () | |
![]() | |
void | compatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const |
bool | hasGroups () const |
![]() | |
virtual std::vector< DetWithState > | compatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const |
GeometricSearchDet () | |
virtual std::vector< DetGroup > | groupedCompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const |
virtual const Surface::PositionType & | position () const |
Returns position of the surface. More... | |
virtual | ~GeometricSearchDet () |
Private Types | |
typedef PeriodicBinFinderInPhi < double > | BinFinderType |
Private Member Functions | |
void | checkPeriodicity (std::vector< const GeomDet * >::const_iterator first, std::vector< const GeomDet * >::const_iterator last) |
void | checkRadius (std::vector< const GeomDet * >::const_iterator first, std::vector< const GeomDet * >::const_iterator last) |
SubRingCrossings | computeCrossings (const TrajectoryStateOnSurface &startingState, PropagationDirection propDir) const |
void | computeHelicity () |
float | computeWindowSize (const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const |
void | searchNeighbors (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubRingCrossings &crossings, float window, std::vector< DetGroup > &result) const |
Private Attributes | |
BinFinderType | theBinFinder |
ReferenceCountingPointer < BoundCylinder > | theCylinder |
std::vector< const GeomDet * > | theDets |
int | theHelicity |
Additional Inherited Members | |
![]() | |
typedef GeometricSearchDet::DetWithState | DetWithState |
![]() | |
typedef std::pair< const GeomDet *, TrajectoryStateOnSurface > | DetWithState |
typedef BoundSurface::PositionType | PositionType |
typedef BoundSurface::RotationType | RotationType |
typedef TrajectoryStateOnSurface | TrajectoryState |
![]() | |
GeomDetCompatibilityChecker | theCompatibilityChecker |
|
private |
TIBRing::TIBRing | ( | std::vector< const GeomDet * > & | theGeomDets | ) |
Definition at line 21 of file TIBRing.cc.
References computeHelicity(), i, LogDebug, theBinFinder, theCylinder, and theDets.
TIBRing::~TIBRing | ( | ) |
Definition at line 118 of file TIBRing.cc.
|
inlinevirtual |
|
private |
Definition at line 78 of file TIBRing.cc.
References first, i, j, Geom::pi(), stat_mean(), launcher::step, and theDets.
|
private |
|
virtual |
tests the geometrical compatibility of the Det with the predicted state. The FreeTrajectoryState argument is propagated to the Det surface using the Propagator argument. The resulting TrajectoryStateOnSurface is tested for compatibility with the surface bounds. If compatible, a std::pair< true, propagatedState> is returned. If the propagation fails, or if the state is not compatible, a std::pair< false, propagatedState> is returned.
Implements GeometricSearchDet.
Definition at line 124 of file TIBRing.cc.
|
virtual |
Returns basic components, if any.
Returns direct components, if any
Implements GeometricSearchDet.
Definition at line 57 of file TIBRing.cc.
|
private |
Definition at line 227 of file TIBRing.cc.
References PeriodicBinFinderInPhi< T >::binIndex(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), PV3DBase< T, PVType, FrameType >::phi(), GloballyPositioned< T >::position(), rho, specificSurface(), surface(), theBinFinder, theDets, TrajectoryStateOnSurface::transverseCurvature(), and PV3DBase< T, PVType, FrameType >::x().
Referenced by groupedCompatibleDetsV().
|
private |
Definition at line 101 of file TIBRing.cc.
References Vector3DBase< T, FrameTag >::dot(), PV3DBase< T, PVType, FrameType >::phi(), GloballyPositioned< T >::position(), GeomDet::surface(), theDets, theHelicity, and Surface::toGlobal().
Referenced by TIBRing().
|
private |
Definition at line 267 of file TIBRing.cc.
References MeasurementEstimator::maximalLocalDisplacement(), GeomDet::surface(), and vdt::x.
Referenced by groupedCompatibleDetsV().
|
virtual |
Reimplemented from GeometricSearchDet.
Definition at line 132 of file TIBRing.cc.
References Clusterizer1DCommons::add(), LayerCrossingSide::barrelSide(), PeriodicBinFinderInPhi< T >::binIndex(), TIBRing::SubRingCrossings::closestIndex, computeCrossings(), computeWindowSize(), TIBRing::SubRingCrossings::isValid_, TIBRing::SubRingCrossings::nextDistance, TIBRing::SubRingCrossings::nextIndex, DetGroupMerger::orderAndMergeTwoLevels(), Propagator::propagationDirection(), query::result, searchNeighbors(), theBinFinder, theDets, theHelicity, and svgfig::window().
|
private |
Definition at line 186 of file TIBRing.cc.
References Clusterizer1DCommons::add(), LayerCrossingSide::barrelSide(), PeriodicBinFinderInPhi< T >::binIndex(), TIBRing::SubRingCrossings::closestIndex, max(), min, TIBRing::SubRingCrossings::nextIndex, theBinFinder, theDets, theHelicity, and tmp.
Referenced by groupedCompatibleDetsV().
|
inlinevirtual |
Return the ring surface as a.
Definition at line 41 of file TIBRing.h.
References theCylinder.
Referenced by computeCrossings().
|
inlinevirtual |
The surface of the GeometricSearchDet.
Implements GeometricSearchDet.
Definition at line 19 of file TIBRing.h.
References theCylinder.
Referenced by computeCrossings().
|
private |
Definition at line 87 of file TIBRing.h.
Referenced by computeCrossings(), groupedCompatibleDetsV(), searchNeighbors(), and TIBRing().
|
private |
Definition at line 90 of file TIBRing.h.
Referenced by specificSurface(), surface(), and TIBRing().
|
private |
Definition at line 89 of file TIBRing.h.
Referenced by basicComponents(), checkPeriodicity(), computeCrossings(), computeHelicity(), groupedCompatibleDetsV(), searchNeighbors(), and TIBRing().
|
private |
Definition at line 91 of file TIBRing.h.
Referenced by computeHelicity(), groupedCompatibleDetsV(), and searchNeighbors().