ATLAS Offline Software
NoBounds.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // CylinderBounds.h, (c) ATLAS Detector software
8 
9 #ifndef TRKSURFACES_NOBOUNDS_H
10 #define TRKSURFACES_NOBOUNDS_H
11 
14 
15 // Eigen
17 
18 class MsgStream;
19 
20 namespace Trk {
21 
29 class NoBounds final : public SurfaceBounds
30 {
31 public:
33  NoBounds() = default;
34  NoBounds(const NoBounds&) = default;
35  NoBounds& operator=(const NoBounds&) = default;
36  NoBounds(NoBounds&&) noexcept = default;
37  NoBounds& operator=(NoBounds&&) noexcept = default;
40 
42  virtual bool operator==(const SurfaceBounds& sbo) const override final;
43 
45  virtual SurfaceBounds::BoundsType type() const override { return SurfaceBounds::Other; }
46 
48  virtual bool inside(const Amg::Vector2D& locpo, double tol1 = 0., double tol2 = 0.) const override final;
49  virtual bool inside(const Amg::Vector2D& locpo, const BoundaryCheck& bchk) const override final;
52  virtual bool insideLoc1(const Amg::Vector2D& locpo, double tol1 = 0.) const override final;
53 
56  virtual bool insideLoc2(const Amg::Vector2D& locpo, double tol2 = 0.) const override final;
57 
59  virtual double minDistance(const Amg::Vector2D& pos) const override final;
60 
62  virtual NoBounds* clone() const override final;
63 
65  virtual double r() const override final;
66 
68  virtual MsgStream& dump(MsgStream& sl) const override final;
69 
71  virtual std::ostream& dump(std::ostream& sl) const override final;
72 
73 };
74 } // end of namespace
75 
76 #include "TrkSurfaces/NoBounds.icc"
77 #endif // TRKSURFACES_NOBOUNDS_H
Trk::NoBounds::r
virtual double r() const override final
r() method to complete inherited interface
Trk::SurfaceBounds::BoundsType
BoundsType
Definition: SurfaceBounds.h:59
Trk::NoBounds::operator=
NoBounds & operator=(const NoBounds &)=default
Trk::NoBounds::NoBounds
NoBounds()=default
Default Constructor.
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
Trk::SurfaceBounds
Definition: SurfaceBounds.h:47
Trk::NoBounds::NoBounds
NoBounds(const NoBounds &)=default
Trk::NoBounds::type
virtual SurfaceBounds::BoundsType type() const override
Return SurfaceBounds for persistency.
Definition: NoBounds.h:45
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
Trk::NoBounds::clone
virtual NoBounds * clone() const override final
Clone method to complete inherited interface.
ParamDefs.h
GeoPrimitives.h
SurfaceBounds.h
Trk::NoBounds::inside
virtual bool inside(const Amg::Vector2D &locpo, double tol1=0., double tol2=0.) const override final
Method inside() returns true for any case.
Trk::NoBounds::insideLoc1
virtual bool insideLoc1(const Amg::Vector2D &locpo, double tol1=0.) const override final
This method checks inside bounds in loc1.
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
Trk::NoBounds::dump
virtual MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream.
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
Trk::NoBounds
Definition: NoBounds.h:30
Trk::BoundaryCheck
Definition: BoundaryCheck.h:51
Trk::NoBounds::insideLoc2
virtual bool insideLoc2(const Amg::Vector2D &locpo, double tol2=0.) const override final
This method checks inside bounds in loc2.
Trk::SurfaceBounds::Other
@ Other
Definition: SurfaceBounds.h:71
python.CaloScaleNoiseConfig.default
default
Definition: CaloScaleNoiseConfig.py:79
Trk::NoBounds::NoBounds
NoBounds(NoBounds &&) noexcept=default
Trk::NoBounds::minDistance
virtual double minDistance(const Amg::Vector2D &pos) const override final
Minimal distance to boundary (=0 if inside)