CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TOBLayer.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TOBLayer_h
2 #define TkDetLayers_TOBLayer_h
3 
4 
6 #include "TOBRod.h"
8 #include "SubLayerCrossings.h"
9 
14 #pragma GCC visibility push(hidden)
16  public:
18 
19 
20  TOBLayer(std::vector<const TOBRod*>& innerRods,
21  std::vector<const TOBRod*>& outerRods);
22  ~TOBLayer();
23 
24  // GeometricSearchDet interface
25 
26  virtual const std::vector<const GeomDet*>& basicComponents() const {return theBasicComps;}
27 
28  virtual const std::vector<const GeometricSearchDet*>& components() const {return theComps;}
29 
31  const Propagator& prop,
32  const MeasurementEstimator& est,
33  std::vector<DetGroup> & result) const;
34 
35 
36  // DetLayer interface
38 
39 
40  private:
41  // private methods for the implementation of groupedCompatibleDets()
42 
43  SubLayerCrossings computeCrossings( const TrajectoryStateOnSurface& tsos,
44  PropagationDirection propDir) const;
45 
46  bool addClosest( const TrajectoryStateOnSurface& tsos,
47  const Propagator& prop,
48  const MeasurementEstimator& est,
49  const SubLayerCrossing& crossing,
50  std::vector<DetGroup>& result) const;
51 
52  float computeWindowSize( const GeomDet* det,
53  const TrajectoryStateOnSurface& tsos,
54  const MeasurementEstimator& est) const;
55 
56  double calculatePhiWindow( double Xmax, const GeomDet& det,
57  const TrajectoryStateOnSurface& state) const;
58 
59  bool overlap( const GlobalPoint& gpos, const GeometricSearchDet& rod, float phiWin) const;
60 
61 
62  void searchNeighbors( const TrajectoryStateOnSurface& tsos,
63  const Propagator& prop,
64  const MeasurementEstimator& est,
65  const SubLayerCrossing& crossing,
66  float window,
67  std::vector<DetGroup>& result,
68  bool checkClosest) const;
69 
70  const std::vector<const GeometricSearchDet*>& subLayer( int ind) const {
71  return (ind==0 ? theInnerComps : theOuterComps);}
72 
73  BoundCylinder* cylinder( const std::vector<const GeometricSearchDet*>& rods) const ;
74 
75 
76  private:
77  std::vector<const GeometricSearchDet*> theComps;
78  std::vector<const GeometricSearchDet*> theInnerComps;
79  std::vector<const GeometricSearchDet*> theOuterComps;
80  std::vector<const GeomDet*> theBasicComps;
81 
82  BinFinderType theInnerBinFinder;
83  BinFinderType theOuterBinFinder;
84 
87 
88 };
89 
90 
91 #pragma GCC visibility pop
92 #endif
def window
Definition: svgfig.py:642
const std::vector< const GeometricSearchDet * > & subLayer(int ind) const
Definition: TOBLayer.h:70
virtual void groupedCompatibleDetsV(const TrajectoryStateOnSurface &startingState, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const
PropagationDirection
virtual const std::vector< const GeomDet * > & basicComponents() const
Definition: TOBLayer.h:26
bool overlap(const reco::Muon &muon1, const reco::Muon &muon2, double pullX=1.0, double pullY=1.0, bool checkAdjacentChambers=false)
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
Definition: TkDetUtil.cc:31
PeriodicBinFinderInPhi< double > BinFinderType
Definition: TOBLayer.h:17
virtual SubDetector subDetector() const
The type of detector (PixelBarrel, PixelEndcap, TIB, TOB, TID, TEC, CSC, DT, RPCBarrel, RPCEndcap)
Definition: TOBLayer.h:37
tuple result
Definition: query.py:137
virtual const std::vector< const GeometricSearchDet * > & components() const
Definition: TOBLayer.h:28
float calculatePhiWindow(const MeasurementEstimator::Local2DVector &maxDistance, const TrajectoryStateOnSurface &ts, const Plane &plane)
Definition: TkDetUtil.cc:44
Unlimited (trivial) bounds.