CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TIBRing.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TIBRing_h
2 #define TkDetLayers_TIBRing_h
3 
4 
8 
13  public:
14  TIBRing(std::vector<const GeomDet*>& theGeomDets);
15  ~TIBRing();
16 
17  // GeometricSearchDet interface
18  virtual const BoundSurface& surface() const {return *theCylinder;}
19 
20  virtual const std::vector<const GeomDet*>& basicComponents() const {return theDets;}
21 
22  virtual const std::vector<const GeometricSearchDet*>& components() const;
23 
24 
25  virtual std::pair<bool, TrajectoryStateOnSurface>
27  const MeasurementEstimator&) const;
28 
29 
30  virtual void
32  const Propagator& prop,
33  const MeasurementEstimator& est,
34  std::vector<DetGroup> & result) const;
35 
36 
37  //--- Extension of the interface
38 
40  virtual const BoundCylinder& specificSurface() const {return *theCylinder;}
41 
42  private:
43  //general private methods
44 
45  void checkPeriodicity(std::vector<const GeomDet*>::const_iterator first,
46  std::vector<const GeomDet*>::const_iterator last);
47 
48  void checkRadius(std::vector<const GeomDet*>::const_iterator first,
49  std::vector<const GeomDet*>::const_iterator last);
50 
51  void computeHelicity();
52 
53  // methods for groupedCompatibleDets implementation
56  SubRingCrossings( int ci, int ni, float nd) :
58 
59  bool isValid_;
61  int nextIndex;
62  float nextDistance;
63  };
64 
65 
66  void searchNeighbors( const TrajectoryStateOnSurface& tsos,
67  const Propagator& prop,
68  const MeasurementEstimator& est,
69  const SubRingCrossings& crossings,
70  float window,
71  std::vector<DetGroup>& result) const;
72 
74  computeCrossings( const TrajectoryStateOnSurface& startingState,
75  PropagationDirection propDir) const;
76 
77  float computeWindowSize( const GeomDet* det,
78  const TrajectoryStateOnSurface& tsos,
79  const MeasurementEstimator& est) const;
80 
81 
82 
83 
84  private:
87 
88  std::vector<const GeomDet*> theDets;
91 };
92 
93 
94 #endif
def window
Definition: svgfig.py:642
virtual const std::vector< const GeometricSearchDet * > & components() const
Returns basic components, if any.
Definition: TIBRing.cc:57
BinFinderType theBinFinder
Definition: TIBRing.h:86
virtual const BoundSurface & surface() const
The surface of the GeometricSearchDet.
Definition: TIBRing.h:18
PeriodicBinFinderInPhi< double > BinFinderType
Definition: TIBRing.h:85
std::vector< const GeomDet * > theDets
Definition: TIBRing.h:88
void checkRadius(std::vector< const GeomDet * >::const_iterator first, std::vector< const GeomDet * >::const_iterator last)
Definition: TIBRing.cc:62
PropagationDirection
ReferenceCountingPointer< BoundCylinder > theCylinder
Definition: TIBRing.h:89
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubRingCrossings &crossings, float window, std::vector< DetGroup > &result) const
Definition: TIBRing.cc:186
void checkPeriodicity(std::vector< const GeomDet * >::const_iterator first, std::vector< const GeomDet * >::const_iterator last)
Definition: TIBRing.cc:78
int theHelicity
Definition: TIBRing.h:90
virtual std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const
Definition: TIBRing.cc:124
SubRingCrossings(int ci, int ni, float nd)
Definition: TIBRing.h:56
tuple result
Definition: query.py:137
TIBRing(std::vector< const GeomDet * > &theGeomDets)
Definition: TIBRing.cc:21
bool first
Definition: L1TdeRCT.cc:79
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const
Definition: TIBRing.cc:267
void computeHelicity()
Definition: TIBRing.cc:101
SubRingCrossings computeCrossings(const TrajectoryStateOnSurface &startingState, PropagationDirection propDir) const
Definition: TIBRing.cc:227
~TIBRing()
Definition: TIBRing.cc:118
virtual const BoundCylinder & specificSurface() const
Return the ring surface as a.
Definition: TIBRing.h:40
virtual const std::vector< const GeomDet * > & basicComponents() const
Definition: TIBRing.h:20
virtual void groupedCompatibleDetsV(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const
Definition: TIBRing.cc:132