CMS 3D CMS Logo

ForwardDetLayer.h
Go to the documentation of this file.
1 #ifndef DetLayers_ForwardDetLayer_H
2 #define DetLayers_ForwardDetLayer_H
3 
18 
19 #include <vector>
20 #include <algorithm>
21 
22 class ForwardDetLayer : public DetLayer {
23 public:
24  ForwardDetLayer(bool doHaveGroups) : DetLayer(doHaveGroups, false) {}
25 
26  ~ForwardDetLayer() override;
27 
28  // GeometricSearchDet interface
29  const BoundSurface& surface() const final { return *theDisk; }
30 
31  std::pair<bool, TrajectoryStateOnSurface> compatible(const TrajectoryStateOnSurface&,
32  const Propagator&,
33  const MeasurementEstimator&) const override;
34 
35  // DetLayer interface
37 
38  // Extension of the interface
39  virtual const BoundDisk& specificSurface() const final { return *theDisk; }
40 
41  bool contains(const Local3DPoint& p) const;
42 
43 protected:
44  virtual void initialize();
45 
46  float rmin() const { return theDisk->innerRadius(); }
47  float rmax() const { return theDisk->outerRadius(); }
48  float zmin() const { return (theDisk->position().z() - bounds().thickness() * 0.5f); }
49  float zmax() const { return (theDisk->position().z() + bounds().thickness() * 0.5f); }
50 
51  void setSurface(BoundDisk* cp);
52  virtual BoundDisk* computeSurface();
53 
54  SimpleDiskBounds const& bounds() const { return static_cast<SimpleDiskBounds const&>(theDisk->bounds()); }
55 
56 private:
58 };
59 
60 #endif
MeasurementEstimator
Definition: MeasurementEstimator.h:19
ForwardDetLayer::theDisk
ReferenceCountingPointer< BoundDisk > theDisk
Definition: ForwardDetLayer.h:57
funct::false
false
Definition: Factorize.h:29
DetLayer
Definition: DetLayer.h:21
BoundDisk.h
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
ForwardDetLayer::~ForwardDetLayer
~ForwardDetLayer() override
Definition: ForwardDetLayer.cc:10
ForwardDetLayer::location
Location location() const final
Which part of the detector (barrel, endcap)
Definition: ForwardDetLayer.h:36
ForwardDetLayer::surface
const BoundSurface & surface() const final
The surface of the GeometricSearchDet.
Definition: ForwardDetLayer.h:29
SimpleCylinderBounds.h
ForwardDetLayer::zmin
float zmin() const
Definition: ForwardDetLayer.h:48
Surface
Definition: Surface.h:36
ForwardDetLayer::setSurface
void setSurface(BoundDisk *cp)
Definition: ForwardDetLayer.cc:13
hgcal_conditions::parameters
Definition: HGCConditions.h:86
ReferenceCountingPointer< BoundDisk >
watchdog.const
const
Definition: watchdog.py:83
BoundDisk
SimpleDiskBounds
Definition: SimpleDiskBounds.h:11
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
Surface.h
Point3DBase< float, LocalTag >
ForwardDetLayer::initialize
virtual void initialize()
Definition: ForwardDetLayer.cc:17
ForwardDetLayer::rmax
float rmax() const
Definition: ForwardDetLayer.h:47
GeomDetEnumerators::endcap
Definition: GeomDetEnumerators.h:9
SimpleDiskBounds::thickness
float thickness() const override
Definition: SimpleDiskBounds.h:18
ForwardDetLayer::ForwardDetLayer
ForwardDetLayer(bool doHaveGroups)
Definition: ForwardDetLayer.h:24
ForwardDetLayer::zmax
float zmax() const
Definition: ForwardDetLayer.h:49
ForwardDetLayer::bounds
SimpleDiskBounds const & bounds() const
Definition: ForwardDetLayer.h:54
ReferenceCounted.h
GeomDetEnumerators::Location
Location
Definition: GeomDetEnumerators.h:9
ForwardDetLayer::computeSurface
virtual BoundDisk * computeSurface()
Definition: ForwardDetLayer.cc:19
ForwardDetLayer
Definition: ForwardDetLayer.h:22
DetLayer.h
ForwardDetLayer::contains
bool contains(const Local3DPoint &p) const
Definition: ForwardDetLayer.cc:15
SimpleDiskBounds.h
ForwardDetLayer::compatible
std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &, const Propagator &, const MeasurementEstimator &) const override
Definition: ForwardDetLayer.cc:84
ForwardDetLayer::specificSurface
virtual const BoundDisk & specificSurface() const final
Definition: ForwardDetLayer.h:39
ForwardDetLayer::rmin
float rmin() const
Definition: ForwardDetLayer.h:46