#include <CompositeTECPetal.h>
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... | |
CompositeTECPetal (std::vector< const TECWedge * > &innerWedges, std::vector< const TECWedge * > &outerWedges) | |
virtual void | groupedCompatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const |
~CompositeTECPetal () | |
Public Member Functions inherited from TECPetal | |
virtual const BoundDiskSector & | specificSurface () const |
virtual const BoundSurface & | surface () const |
The surface of the GeometricSearchDet. More... | |
Public Member Functions inherited from GeometricSearchDetWithGroups | |
void | compatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const |
bool | hasGroups () const |
Public Member Functions inherited from GeometricSearchDet | |
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 Member Functions | |
bool | addClosest (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result) const |
SubLayerCrossings | computeCrossings (const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const |
int | findBin (float R, int layer) const |
GlobalPoint | findPosition (int index, int diskSectorIndex) const |
void | searchNeighbors (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, bool checkClosest) const |
const std::vector< const GeometricSearchDet * > & | subLayer (int ind) const |
Static Private Member Functions | |
static float | computeWindowSize (const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) |
static bool | overlap (const GlobalPoint &gpos, const GeometricSearchDet &rod, float window) |
Private Attributes | |
std::vector< float > | theBackBoundaries |
std::vector< const GeometricSearchDet * > | theBackComps |
ReferenceCountingPointer < BoundDiskSector > | theBackSector |
std::vector< const GeomDet * > | theBasicComps |
std::vector< const GeometricSearchDet * > | theComps |
std::vector< float > | theFrontBoundaries |
std::vector< const GeometricSearchDet * > | theFrontComps |
ReferenceCountingPointer < BoundDiskSector > | theFrontSector |
Additional Inherited Members | |
Public Types inherited from GeometricSearchDetWithGroups | |
typedef GeometricSearchDet::DetWithState | DetWithState |
Public Types inherited from GeometricSearchDet | |
typedef std::pair< const GeomDet *, TrajectoryStateOnSurface > | DetWithState |
typedef BoundSurface::PositionType | PositionType |
typedef BoundSurface::RotationType | RotationType |
typedef TrajectoryStateOnSurface | TrajectoryState |
Protected Attributes inherited from TECPetal | |
ReferenceCountingPointer < BoundDiskSector > | theDiskSector |
Protected Attributes inherited from GeometricSearchDet | |
GeomDetCompatibilityChecker | theCompatibilityChecker |
A concrete implementation for TEC petals
Definition at line 14 of file CompositeTECPetal.h.
CompositeTECPetal::CompositeTECPetal | ( | std::vector< const TECWedge * > & | innerWedges, |
std::vector< const TECWedge * > & | outerWedges | ||
) |
Definition at line 57 of file CompositeTECPetal.cc.
References details::fillBoundaries(), LogDebug, theBackBoundaries, theBackComps, theBackSector, theBasicComps, theComps, TECPetal::theDiskSector, theFrontBoundaries, theFrontComps, and theFrontSector.
CompositeTECPetal::~CompositeTECPetal | ( | ) |
Definition at line 113 of file CompositeTECPetal.cc.
|
private |
Definition at line 225 of file CompositeTECPetal.cc.
References CompatibleDetToGroupAdder::add(), SubLayerCrossing::closestDetIndex(), LogDebug, subLayer(), and SubLayerCrossing::subLayerIndex().
Referenced by groupedCompatibleDetsV().
|
inlinevirtual |
Implements GeometricSearchDet.
Definition at line 22 of file CompositeTECPetal.h.
References theBasicComps.
|
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 122 of file CompositeTECPetal.cc.
|
inlinevirtual |
Returns basic components, if any.
Returns direct components, if any
Implements GeometricSearchDet.
Definition at line 24 of file CompositeTECPetal.h.
References theComps.
|
private |
Definition at line 172 of file CompositeTECPetal.cc.
References findBin(), findPosition(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), LogDebug, perp(), rho, theBackSector, theFrontSector, and TrajectoryStateOnSurface::transverseCurvature().
Referenced by groupedCompatibleDetsV().
|
staticprivate |
Definition at line 322 of file CompositeTECPetal.cc.
References MeasurementEstimator::maximalLocalDisplacement(), GeomDet::surface(), and detailsBasic3DVector::y.
Referenced by groupedCompatibleDetsV().
|
private |
Definition at line 330 of file CompositeTECPetal.cc.
References details::findBin(), theBackBoundaries, and theFrontBoundaries.
Referenced by computeCrossings().
|
private |
Definition at line 338 of file CompositeTECPetal.cc.
References theBackComps, and theFrontComps.
Referenced by computeCrossings().
|
virtual |
Reimplemented from GeometricSearchDet.
Definition at line 130 of file CompositeTECPetal.cc.
References addClosest(), SubLayerCrossings::closest(), SubLayerCrossings::closestIndex(), computeCrossings(), computeWindowSize(), LayerCrossingSide::endcapSide(), SubLayerCrossings::isValid(), LogDebug, DetGroupMerger::orderAndMergeTwoLevels(), SubLayerCrossings::other(), Propagator::propagationDirection(), searchNeighbors(), and svgfig::window().
|
staticprivate |
Definition at line 296 of file CompositeTECPetal.cc.
References BoundDiskSector::bounds(), BoundDiskSector::innerRadius(), max(), BoundDiskSector::outerRadius(), PV3DBase< T, PVType, FrameType >::perp(), GloballyPositioned< T >::position(), GeometricSearchDet::surface(), DiskSectorBounds::thickness(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by searchNeighbors().
|
private |
Definition at line 249 of file CompositeTECPetal.cc.
References Clusterizer1DCommons::add(), SubLayerCrossing::closestDetIndex(), overlap(), PV3DBase< T, PVType, FrameType >::perp(), SubLayerCrossing::position(), subLayer(), SubLayerCrossing::subLayerIndex(), theBackComps, and theFrontComps.
Referenced by groupedCompatibleDetsV().
|
inlineprivate |
Definition at line 70 of file CompositeTECPetal.h.
References theBackComps, and theFrontComps.
Referenced by addClosest(), and searchNeighbors().
|
private |
Definition at line 82 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), and findBin().
|
private |
Definition at line 78 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), findPosition(), searchNeighbors(), and subLayer().
|
private |
Definition at line 85 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), and computeCrossings().
|
private |
Definition at line 79 of file CompositeTECPetal.h.
Referenced by basicComponents(), and CompositeTECPetal().
|
private |
Definition at line 76 of file CompositeTECPetal.h.
Referenced by components(), CompositeTECPetal(), and ~CompositeTECPetal().
|
private |
Definition at line 81 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), and findBin().
|
private |
Definition at line 77 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), findPosition(), searchNeighbors(), and subLayer().
|
private |
Definition at line 84 of file CompositeTECPetal.h.
Referenced by CompositeTECPetal(), and computeCrossings().