ATLAS Offline Software
Public Types | Public Member Functions | Protected Member Functions | List of all members
Trk::NoBounds Class Referencefinal

#include <NoBounds.h>

Inheritance diagram for Trk::NoBounds:
Collaboration diagram for Trk::NoBounds:

Public Types

enum  BoundsType {
  Cone = 0, Cylinder = 1, Diamond = 2, Disc = 3,
  Ellipse = 5, Rectangle = 6, RotatedTrapezoid = 7, Trapezoid = 8,
  Triangle = 9, DiscTrapezoidal = 10, Annulus = 11, Other = 12
}
 

Public Member Functions

 NoBounds ()=default
 Default Constructor. More...
 
 NoBounds (const NoBounds &)=default
 
NoBoundsoperator= (const NoBounds &)=default
 
 NoBounds (NoBounds &&) noexcept=default
 
NoBoundsoperator= (NoBounds &&) noexcept=default
 
 ~NoBounds ()=default
 Destructor. More...
 
virtual bool operator== (const SurfaceBounds &sbo) const override final
 Equality operator. More...
 
virtual SurfaceBounds::BoundsType type () const override
 Return SurfaceBounds for persistency. More...
 
virtual bool inside (const Amg::Vector2D &locpo, double tol1=0., double tol2=0.) const override final
 Method inside() returns true for any case. More...
 
virtual bool inside (const Amg::Vector2D &locpo, const BoundaryCheck &bchk) const override final
 
virtual bool insideLoc1 (const Amg::Vector2D &locpo, double tol1=0.) const override final
 This method checks inside bounds in loc1. More...
 
virtual bool insideLoc2 (const Amg::Vector2D &locpo, double tol2=0.) const override final
 This method checks inside bounds in loc2. More...
 
virtual double minDistance (const Amg::Vector2D &pos) const override final
 Minimal distance to boundary (=0 if inside) More...
 
virtual NoBoundsclone () const override final
 Clone method to complete inherited interface. More...
 
virtual double r () const override final
 r() method to complete inherited interface More...
 
virtual MsgStream & dump (MsgStream &sl) const override final
 Output Method for MsgStream. More...
 
virtual std::ostream & dump (std::ostream &sl) const override final
 Output Method for std::ostream. More...
 
virtual bool operator!= (const SurfaceBounds &sb) const
 Non-Equality operator. More...
 

Protected Member Functions

void swap (double &b1, double &b2)
 Swap method to be called from DiscBounds or TrapezoidalBounds. More...
 
virtual void initCache ()
 virtual initCache method for object persistency More...
 

Detailed Description

Bounds object for a boundless surface (...)

Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch

Definition at line 29 of file NoBounds.h.

Member Enumeration Documentation

◆ BoundsType

This enumerator simplifies the persistency, by saving a dynamic_cast to happen.

Other is reserved for the GeometrySurfaces implementation.

Enumerator
Cone 
Cylinder 
Diamond 
Disc 
Ellipse 
Rectangle 
RotatedTrapezoid 
Trapezoid 
Triangle 
DiscTrapezoidal 
Annulus 
Other 

Definition at line 58 of file SurfaceBounds.h.

59  {
60  Cone = 0,
61  Cylinder = 1,
62  Diamond = 2,
63  Disc = 3,
64  Ellipse = 5,
65  Rectangle = 6,
66  RotatedTrapezoid = 7,
67  Trapezoid = 8,
68  Triangle = 9,
69  DiscTrapezoidal = 10,
70  Annulus = 11,
71  Other = 12
72 
73  };

Constructor & Destructor Documentation

◆ NoBounds() [1/3]

Trk::NoBounds::NoBounds ( )
default

Default Constructor.

◆ NoBounds() [2/3]

Trk::NoBounds::NoBounds ( const NoBounds )
default

◆ NoBounds() [3/3]

Trk::NoBounds::NoBounds ( NoBounds &&  )
defaultnoexcept

◆ ~NoBounds()

Trk::NoBounds::~NoBounds ( )
default

Destructor.

Member Function Documentation

◆ clone()

virtual NoBounds* Trk::NoBounds::clone ( ) const
finaloverridevirtual

Clone method to complete inherited interface.

Implements Trk::SurfaceBounds.

◆ dump() [1/2]

virtual MsgStream& Trk::NoBounds::dump ( MsgStream &  sl) const
finaloverridevirtual

Output Method for MsgStream.

Implements Trk::SurfaceBounds.

◆ dump() [2/2]

virtual std::ostream& Trk::NoBounds::dump ( std::ostream &  sl) const
finaloverridevirtual

Output Method for std::ostream.

Implements Trk::SurfaceBounds.

◆ initCache()

virtual void Trk::SurfaceBounds::initCache ( )
inlineprotectedvirtualinherited

virtual initCache method for object persistency

Reimplemented in Trk::RotatedTrapezoidBounds, Trk::ConeBounds, Trk::RotatedDiamondBounds, and Trk::DiamondBounds.

Definition at line 129 of file SurfaceBounds.h.

129 {}

◆ inside() [1/2]

virtual bool Trk::NoBounds::inside ( const Amg::Vector2D locpo,
const BoundaryCheck bchk 
) const
finaloverridevirtual

Implements Trk::SurfaceBounds.

◆ inside() [2/2]

virtual bool Trk::NoBounds::inside ( const Amg::Vector2D locpo,
double  tol1 = 0.,
double  tol2 = 0. 
) const
finaloverridevirtual

Method inside() returns true for any case.

Implements Trk::SurfaceBounds.

◆ insideLoc1()

virtual bool Trk::NoBounds::insideLoc1 ( const Amg::Vector2D locpo,
double  tol1 = 0. 
) const
finaloverridevirtual

This method checks inside bounds in loc1.

  • loc1/loc2 correspond to the natural coordinates of the surface

Implements Trk::SurfaceBounds.

◆ insideLoc2()

virtual bool Trk::NoBounds::insideLoc2 ( const Amg::Vector2D locpo,
double  tol2 = 0. 
) const
finaloverridevirtual

This method checks inside bounds in loc2.

  • loc1/loc2 correspond to the natural coordinates of the surface

Implements Trk::SurfaceBounds.

◆ minDistance()

virtual double Trk::NoBounds::minDistance ( const Amg::Vector2D pos) const
finaloverridevirtual

Minimal distance to boundary (=0 if inside)

Implements Trk::SurfaceBounds.

◆ operator!=()

bool Trk::SurfaceBounds::operator!= ( const SurfaceBounds sb) const
inlinevirtualinherited

Non-Equality operator.

Reimplemented in Trk::InvalidBounds.

Definition at line 141 of file SurfaceBounds.h.

142 {
143  return !((*this) == sb);
144 }

◆ operator=() [1/2]

NoBounds& Trk::NoBounds::operator= ( const NoBounds )
default

◆ operator=() [2/2]

NoBounds& Trk::NoBounds::operator= ( NoBounds &&  )
defaultnoexcept

◆ operator==()

virtual bool Trk::NoBounds::operator== ( const SurfaceBounds sbo) const
finaloverridevirtual

Equality operator.

Implements Trk::SurfaceBounds.

◆ r()

virtual double Trk::NoBounds::r ( ) const
finaloverridevirtual

r() method to complete inherited interface

Implements Trk::SurfaceBounds.

◆ swap()

void Trk::SurfaceBounds::swap ( double &  b1,
double &  b2 
)
inlineprotectedinherited

Swap method to be called from DiscBounds or TrapezoidalBounds.

Definition at line 133 of file SurfaceBounds.h.

134 {
135  double tmp = b1;
136  b1 = b2;
137  b2 = tmp;
138 }

◆ type()

virtual SurfaceBounds::BoundsType Trk::NoBounds::type ( ) const
inlineoverridevirtual

Return SurfaceBounds for persistency.

Implements Trk::SurfaceBounds.

Definition at line 45 of file NoBounds.h.

45 { return SurfaceBounds::Other; }

The documentation for this class was generated from the following file:
Trk::SurfaceBounds::DiscTrapezoidal
@ DiscTrapezoidal
Definition: SurfaceBounds.h:69
Trk::SurfaceBounds::Cone
@ Cone
Definition: SurfaceBounds.h:60
Trk::SurfaceBounds::Rectangle
@ Rectangle
Definition: SurfaceBounds.h:65
Trk::SurfaceBounds::Annulus
@ Annulus
Definition: SurfaceBounds.h:70
Trk::SurfaceBounds::Diamond
@ Diamond
Definition: SurfaceBounds.h:62
DeMoUpdate.tmp
string tmp
Definition: DeMoUpdate.py:1167
keylayer_zslicemap.sb
sb
Definition: keylayer_zslicemap.py:192
Trk::SurfaceBounds::Trapezoid
@ Trapezoid
Definition: SurfaceBounds.h:67
Trk::SurfaceBounds::Disc
@ Disc
Definition: SurfaceBounds.h:63
Trk::SurfaceBounds::RotatedTrapezoid
@ RotatedTrapezoid
Definition: SurfaceBounds.h:66
Trk::SurfaceBounds::Other
@ Other
Definition: SurfaceBounds.h:71
Trk::SurfaceBounds::Triangle
@ Triangle
Definition: SurfaceBounds.h:68
Trk::SurfaceBounds::Ellipse
@ Ellipse
Definition: SurfaceBounds.h:64
Trk::SurfaceBounds::Cylinder
@ Cylinder
Definition: SurfaceBounds.h:61