CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TIDLayer.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TIDLayer_h
2 #define TkDetLayers_TIDLayer_h
3 
4 
6 #include "TIDRing.h"
7 #include<array>
8 
9 
14 #pragma GCC visibility push(hidden)
15 class TIDLayer GCC11_FINAL : public RingedForwardLayer {
16  public:
17  TIDLayer(std::vector<const TIDRing*>& rings) __attribute__ ((cold));
18  ~TIDLayer() __attribute__ ((cold));
19 
20  // GeometricSearchDet interface
21 
22  virtual const std::vector<const GeomDet*>& basicComponents() const {return theBasicComps;}
23 
24  virtual const std::vector<const GeometricSearchDet*>& components() const __attribute__ ((cold));
25 
26  void groupedCompatibleDetsV( const TrajectoryStateOnSurface& tsos,
27  const Propagator& prop,
29  std::vector<DetGroup> & result) const __attribute__ ((hot));
30 
31  // DetLayer interface
32  virtual SubDetector subDetector() const {return GeomDetEnumerators::TID;}
33 
34 
35  private:
36  // private methods for the implementation of groupedCompatibleDets()
37  BoundDisk* computeDisk( const std::vector<const TIDRing*>& rings) const __attribute__ ((cold));
38 
39  std::array<int,3> ringIndicesByCrossingProximity(const TrajectoryStateOnSurface& startingState,
40  const Propagator& prop ) const;
41 
42  // bool isCompatible( const TrajectoryStateOnSurface& ms,
43  // const MeasurementEstimator& est) const;
44 
45  int findClosest( const GlobalPoint[3] ) const __attribute__ ((hot));
46 
47  int findNextIndex( const GlobalPoint[3] , int ) const __attribute__ ((hot));
48 
49  bool overlapInR( const TrajectoryStateOnSurface& tsos, int i, double ymax) const __attribute__ ((hot));
50 
51 
52  float computeWindowSize( const GeomDet* det,
55 
56  void fillRingPars(int i) __attribute__ ((cold));
57 
58  private:
59  std::vector<GeomDet const*> theBasicComps;
60  const TIDRing* theComps[3];
61  struct RingPar { float theRingR, thetaRingMin, thetaRingMax;};
62  RingPar ringPars[3];
63 
64 };
65 
66 
67 #pragma GCC visibility pop
68 #endif
int i
Definition: DBlmapReader.cc:9
tuple result
Definition: query.py:137
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
Definition: BarrelUtil.h:35
float __attribute__((vector_size(8))) float32x2_t
Definition: ExtVec.h:6
string const
Definition: compareJSON.py:14
#define private
Definition: FWFileEntry.h:17
Unlimited (trivial) bounds.