CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ForwardDetLayer.h
Go to the documentation of this file.
1 #ifndef DetLayers_ForwardDetLayer_H
2 #define DetLayers_ForwardDetLayer_H
3 
18 
19 
20 #include <vector>
21 #include <algorithm>
22 
23 class ForwardDetLayer : public DetLayer {
24 public:
25 
26  ForwardDetLayer(bool doHaveGroups): DetLayer(doHaveGroups,false) {}
27 
28  virtual ~ForwardDetLayer();
29 
30  // GeometricSearchDet interface
31  virtual const BoundSurface& surface() const GCC11_FINAL { return *theDisk;}
32 
33  virtual std::pair<bool, TrajectoryStateOnSurface>
35  const MeasurementEstimator&) const;
36 
37  // DetLayer interface
39 
40  // Extension of the interface
41  virtual const BoundDisk& specificSurface() const GCC11_FINAL { return *theDisk;}
42 
43  bool contains( const Local3DPoint& p) const;
44 
45  protected:
46 
47  virtual void initialize();
48 
49 
50  float rmin() const { return theDisk->innerRadius();}
51  float rmax() const { return theDisk->outerRadius();}
52  float zmin() const { return (theDisk->position().z() - bounds().thickness()*0.5f);}
53  float zmax() const { return (theDisk->position().z() + bounds().thickness()*0.5f);}
54 
55  void setSurface( BoundDisk* cp);
56  virtual BoundDisk* computeSurface();
57 
58  SimpleDiskBounds const & bounds() const { return static_cast<SimpleDiskBounds const &>(theDisk->bounds());}
59 
60  private:
62 
63 
64 };
65 
66 
67 #endif
virtual BoundDisk * computeSurface()
SimpleDiskBounds const & bounds() const
void setSurface(BoundDisk *cp)
ForwardDetLayer(bool doHaveGroups)
float rmin() const
float zmin() const
virtual ~ForwardDetLayer()
virtual void initialize()
virtual const BoundSurface & surface() const GCC11_FINAL
The surface of the GeometricSearchDet.
bool contains(const Local3DPoint &p) const
ReferenceCountingPointer< BoundDisk > theDisk
float zmax() const
string const
Definition: compareJSON.py:14
virtual const BoundDisk & specificSurface() const GCC11_FINAL
virtual std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &, const Propagator &, const MeasurementEstimator &) const
virtual Location location() const GCC11_FINAL
Which part of the detector (barrel, endcap)
float rmax() const
volatile std::atomic< bool > shutdown_flag false
Unlimited (trivial) bounds.