CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
Phase2OTEndcapRing Class Referencefinal

#include <Phase2OTEndcapRing.h>

Inheritance diagram for Phase2OTEndcapRing:
GeometricSearchDet

Public Member Functions

virtual const std::vector
< const GeomDet * > & 
basicComponents () const
 
virtual std::pair< bool,
TrajectoryStateOnSurface
compatible (const TrajectoryStateOnSurface &, const Propagator &, const MeasurementEstimator &) const
 
virtual const std::vector
< const GeometricSearchDet * > & 
components () const __attribute__((cold))
 Returns basic components, if any. More...
 
void groupedCompatibleDetsV (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const __attribute__((hot))
 
 Phase2OTEndcapRing (std::vector< const GeomDet * > &innerDets, std::vector< const GeomDet * > &outerDets, std::vector< const GeomDet * > &innerDetBrothers, std::vector< const GeomDet * > &outerDetBrothers)
 
virtual const BoundDiskspecificSurface () const
 
virtual const BoundSurfacesurface () const
 The surface of the GeometricSearchDet. More...
 
 ~Phase2OTEndcapRing ()
 
- Public Member Functions inherited from GeometricSearchDet
virtual std::vector< DetWithStatecompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
 
virtual void compatibleDetsV (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetWithState > &result) const
 
 GeometricSearchDet (bool doHaveGroups)
 
virtual std::vector< DetGroupgroupedCompatibleDets (const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est) const
 
bool hasGroups () const
 
virtual const
Surface::PositionType
position () const
 Returns position of the surface. More...
 
virtual ~GeometricSearchDet ()
 

Private Types

typedef PeriodicBinFinderInPhi
< float > 
BinFinderType
 

Private Member Functions

bool addClosest (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult) const __attribute__((hot))
 
SubLayerCrossings computeCrossings (const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const __attribute__((hot))
 
void searchNeighbors (const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, std::vector< DetGroup > &brotherresult, bool checkClosest) const __attribute__((hot))
 
const std::vector< const
GeomDet * > & 
subLayer (int ind) const
 
const std::vector< const
GeomDet * > & 
subLayerBrothers (int ind) const
 

Private Attributes

BinFinderType theBackBinFinder
 
std::vector< const GeomDet * > theBackDetBrothers
 
std::vector< const GeomDet * > theBackDets
 
ReferenceCountingPointer
< BoundDisk
theBackDisk
 
std::vector< const GeomDet * > theDets
 
ReferenceCountingPointer
< BoundDisk
theDisk
 
BinFinderType theFrontBinFinder
 
std::vector< const GeomDet * > theFrontDetBrothers
 
std::vector< const GeomDet * > theFrontDets
 
ReferenceCountingPointer
< BoundDisk
theFrontDisk
 

Additional Inherited Members

- 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 GeometricSearchDet
bool haveGroups
 
GeomDetCompatibilityChecker theCompatibilityChecker
 

Detailed Description

A concrete implementation for TID rings

Definition at line 14 of file Phase2OTEndcapRing.h.

Member Typedef Documentation

Definition at line 85 of file Phase2OTEndcapRing.h.

Constructor & Destructor Documentation

Phase2OTEndcapRing::Phase2OTEndcapRing ( std::vector< const GeomDet * > &  innerDets,
std::vector< const GeomDet * > &  outerDets,
std::vector< const GeomDet * > &  innerDetBrothers,
std::vector< const GeomDet * > &  outerDetBrothers 
)

Definition at line 25 of file Phase2OTEndcapRing.cc.

Phase2OTEndcapRing::~Phase2OTEndcapRing ( )

Definition at line 77 of file Phase2OTEndcapRing.cc.

Member Function Documentation

bool Phase2OTEndcapRing::addClosest ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
const SubLayerCrossing crossing,
std::vector< DetGroup > &  result,
std::vector< DetGroup > &  brotherresult 
) const
private

Definition at line 178 of file Phase2OTEndcapRing.cc.

virtual const std::vector<const GeomDet*>& Phase2OTEndcapRing::basicComponents ( ) const
inlinevirtual

Implements GeometricSearchDet.

Definition at line 25 of file Phase2OTEndcapRing.h.

References theDets.

25 {return theDets;}
std::vector< const GeomDet * > theDets
pair< bool, TrajectoryStateOnSurface > Phase2OTEndcapRing::compatible ( const TrajectoryStateOnSurface ts,
const Propagator ,
const MeasurementEstimator  
) const
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 89 of file Phase2OTEndcapRing.cc.

const vector< const GeometricSearchDet * > & Phase2OTEndcapRing::components ( ) const
virtual

Returns basic components, if any.

Returns direct components, if any

Implements GeometricSearchDet.

Definition at line 82 of file Phase2OTEndcapRing.cc.

SubLayerCrossings Phase2OTEndcapRing::computeCrossings ( const TrajectoryStateOnSurface tsos,
PropagationDirection  propDir 
) const
private

Definition at line 138 of file Phase2OTEndcapRing.cc.

void Phase2OTEndcapRing::groupedCompatibleDetsV ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
std::vector< DetGroup > &  result 
) const
virtual

Reimplemented from GeometricSearchDet.

Definition at line 98 of file Phase2OTEndcapRing.cc.

void Phase2OTEndcapRing::searchNeighbors ( const TrajectoryStateOnSurface tsos,
const Propagator prop,
const MeasurementEstimator est,
const SubLayerCrossing crossing,
float  window,
std::vector< DetGroup > &  result,
std::vector< DetGroup > &  brotherresult,
bool  checkClosest 
) const
private

Definition at line 197 of file Phase2OTEndcapRing.cc.

virtual const BoundDisk& Phase2OTEndcapRing::specificSurface ( ) const
inlinevirtual

Definition at line 40 of file Phase2OTEndcapRing.h.

References theDisk.

40 {return *theDisk;}
ReferenceCountingPointer< BoundDisk > theDisk
const std::vector<const GeomDet*>& Phase2OTEndcapRing::subLayer ( int  ind) const
inlineprivate

Definition at line 65 of file Phase2OTEndcapRing.h.

References theBackDets, and theFrontDets.

65  {
66  return (ind==0 ? theFrontDets : theBackDets);
67  }
std::vector< const GeomDet * > theBackDets
std::vector< const GeomDet * > theFrontDets
const std::vector<const GeomDet*>& Phase2OTEndcapRing::subLayerBrothers ( int  ind) const
inlineprivate

Definition at line 69 of file Phase2OTEndcapRing.h.

References theBackDetBrothers, and theFrontDetBrothers.

69  {
70  return (ind==0 ? theFrontDetBrothers : theBackDetBrothers);
71  }
std::vector< const GeomDet * > theFrontDetBrothers
std::vector< const GeomDet * > theBackDetBrothers
virtual const BoundSurface& Phase2OTEndcapRing::surface ( ) const
inlinevirtual

The surface of the GeometricSearchDet.

Implements GeometricSearchDet.

Definition at line 23 of file Phase2OTEndcapRing.h.

References theDisk.

23 {return *theDisk;}
ReferenceCountingPointer< BoundDisk > theDisk

Member Data Documentation

BinFinderType Phase2OTEndcapRing::theBackBinFinder
private

Definition at line 88 of file Phase2OTEndcapRing.h.

std::vector<const GeomDet*> Phase2OTEndcapRing::theBackDetBrothers
private

Definition at line 79 of file Phase2OTEndcapRing.h.

Referenced by subLayerBrothers().

std::vector<const GeomDet*> Phase2OTEndcapRing::theBackDets
private

Definition at line 77 of file Phase2OTEndcapRing.h.

Referenced by subLayer().

ReferenceCountingPointer<BoundDisk> Phase2OTEndcapRing::theBackDisk
private

Definition at line 83 of file Phase2OTEndcapRing.h.

std::vector<const GeomDet*> Phase2OTEndcapRing::theDets
private

Definition at line 75 of file Phase2OTEndcapRing.h.

Referenced by basicComponents().

ReferenceCountingPointer<BoundDisk> Phase2OTEndcapRing::theDisk
private

Definition at line 81 of file Phase2OTEndcapRing.h.

Referenced by specificSurface(), and surface().

BinFinderType Phase2OTEndcapRing::theFrontBinFinder
private

Definition at line 87 of file Phase2OTEndcapRing.h.

std::vector<const GeomDet*> Phase2OTEndcapRing::theFrontDetBrothers
private

Definition at line 78 of file Phase2OTEndcapRing.h.

Referenced by subLayerBrothers().

std::vector<const GeomDet*> Phase2OTEndcapRing::theFrontDets
private

Definition at line 76 of file Phase2OTEndcapRing.h.

Referenced by subLayer().

ReferenceCountingPointer<BoundDisk> Phase2OTEndcapRing::theFrontDisk
private

Definition at line 82 of file Phase2OTEndcapRing.h.