CMS 3D CMS Logo

TBPLayer.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TBPLayer_h
2 #define TkDetLayers_TBPLayer_h
3 
4 
5 #include "TBLayer.h"
6 #include "PixelRod.h"
7 #include "TOBRod.h"
8 #include "Phase2OTBarrelRod.h"
9 
11 
15 #pragma GCC visibility push(hidden)
16 class TBPLayer : public TBLayer {
17  public:
19 
20 
21  TBPLayer(std::vector<const PixelRod*>& inner,
22  std::vector<const PixelRod*>& outer) __attribute__ ((cold)):
24 
25  TBPLayer(std::vector<const TOBRod*>& inner,
26  std::vector<const TOBRod*>& outer) __attribute__ ((cold)):
28 
29  TBPLayer(std::vector<const Phase2OTBarrelRod*>& inner,
30  std::vector<const Phase2OTBarrelRod*>& outer) __attribute__ ((cold)):
32 
33 
34  ~TBPLayer() override __attribute__ ((cold));
35 
36 
37  BoundCylinder* cylinder( const std::vector<const GeometricSearchDet*>& rods) const __attribute__ ((cold));
38 
39 
40 
41  private:
42  // private methods for the implementation of groupedCompatibleDets()
43 
44  void construct() __attribute__ ((cold));
45 
46 
47  std::tuple<bool,int,int> computeIndexes(GlobalPoint gInnerPoint, GlobalPoint gOuterPoint) const override __attribute__ ((hot));
48 
49 
50 
51  float computeWindowSize( const GeomDet* det,
52  const TrajectoryStateOnSurface& tsos,
53  const MeasurementEstimator& est) const override __attribute__ ((hot));
54 
55  static float calculatePhiWindow( float Xmax, const GeomDet& det,
56  const TrajectoryStateOnSurface& state) __attribute__ ((hot));
57 
58 
59  void searchNeighbors( const TrajectoryStateOnSurface& tsos,
60  const Propagator& prop,
61  const MeasurementEstimator& est,
62  const SubLayerCrossing& crossing,
63  float window,
64  std::vector<DetGroup>& result,
65  bool checkClosest) const override __attribute__ ((hot));
66 
67 
68  BinFinderType theInnerBinFinder;
69  BinFinderType theOuterBinFinder;
70 
71 
72 
73 };
74 
75 
76 #pragma GCC visibility pop
77 #endif
BoundCylinder * cylinder(const std::vector< const GeometricSearchDet * > &rods) const __attribute__((cold))
Definition: TBPLayer.cc:87
TBPLayer(std::vector< const Phase2OTBarrelRod * > &inner, std::vector< const Phase2OTBarrelRod * > &outer) __attribute__((cold))
Definition: TBPLayer.h:29
float __attribute__((vector_size(8))) cms_float32x2_t
Definition: ExtVec.h:12
BinFinderType theOuterBinFinder
Definition: TBPLayer.h:69
TBPLayer(std::vector< const PixelRod * > &inner, std::vector< const PixelRod * > &outer) __attribute__((cold))
Definition: TBPLayer.h:21
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const override __attribute__((hot))
Definition: TBPLayer.cc:117
void construct() __attribute__((cold))
Definition: TBPLayer.cc:23
~TBPLayer() override __attribute__((cold))
Definition: TBPLayer.cc:85
TBPLayer(std::vector< const TOBRod * > &inner, std::vector< const TOBRod * > &outer) __attribute__((cold))
Definition: TBPLayer.h:25
PeriodicBinFinderInPhi< float > BinFinderType
Definition: TBPLayer.h:18
def window(xmin, xmax, ymin, ymax, x=0, y=0, width=100, height=100, xlogbase=None, ylogbase=None, minusInfinity=-1000, flipx=False, flipy=True)
Definition: svgfig.py:643
std::tuple< bool, int, int > computeIndexes(GlobalPoint gInnerPoint, GlobalPoint gOuterPoint) const override __attribute__((hot))
Definition: TBPLayer.cc:99
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, bool checkClosest) const override __attribute__((hot))
Definition: TBPLayer.cc:126
BinFinderType theInnerBinFinder
Definition: TBPLayer.h:68
static float calculatePhiWindow(float Xmax, const GeomDet &det, const TrajectoryStateOnSurface &state) __attribute__((hot))