|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    9 #ifndef TRKSURFACES_DIAMONDDBOUNDS_H 
   10 #define TRKSURFACES_DIAMONDDBOUNDS_H 
   21 #ifdef TRKDETDESCR_USEFLOATPRECISON 
   70   DiamondBounds(
double minhalex, 
double medhalex, 
double maxhalex, 
double haley1, 
double haley2);
 
   95   virtual double r() 
const override final;
 
  125   virtual MsgStream& 
dump(MsgStream& sl) 
const override final;
 
  128   virtual std::ostream& 
dump(std::ostream& sl) 
const override final;
 
  147 #include "TrkSurfaces/DiamondBounds.icc" 
  148 #endif // TRKSURFACES_DIAMONDBOUNDS_H 
  
virtual double r() const override final
This method returns the maximal extension on the local plane.
double halflengthY2() const
bool insideFull(const Amg::Vector2D &locpo, double tol1=0., double tol2=0.) const
inside() method for a full symmetric diamond
virtual double minDistance(const Amg::Vector2D &pos) const override final
Minimal distance to boundary ( > 0 if outside and <=0 if inside)
virtual bool insideLoc1(const Amg::Vector2D &locpo, double tol1=0.) const override final
This method checks inside bounds in loc1.
double alpha2() const
This method returns the opening angle alpha in point A'
DiamondBounds(const DiamondBounds &diabo)=default
Copy constructor.
Eigen::Matrix< double, 2, 1 > Vector2D
double minHalflengthX() const
This method returns the halflength in X at minimal Y (first coordinate of local surface frame)
virtual bool operator==(const SurfaceBounds &diabo) const override
Equality operator.
virtual void initCache() override
initialize the alpha1/2 cache - needed also for object persistency
bool const RAWDATA *ch2 const
virtual bool inside(const Amg::Vector2D &locpo, double tol1=0., double tol2=0.) const override final
The orientation of the Diamond is according to the figure.
DiamondBounds & operator=(const DiamondBounds &sbo)=default
Assignment operator.
double medHalflengthX() const
This method returns the (maximal) halflength in X (first coordinate of local surface frame)
std::vector< TDD_real_t > m_boundValues
Internal parameters stored in the geometry.
virtual ~DiamondBounds()=default
Destructor.
DiamondBounds * clone() const override
Virtual constructor.
DiamondBounds & operator=(DiamondBounds &&sbo) noexcept=default
Assignment operator.
DiamondBounds()
Default Constructor, needed for persistency.
Ensure that the ATLAS eigen extensions are properly loaded.
Definition of ATLAS Math & Geometry primitives (Amg)
virtual BoundsType type() const override final
Return the bounds type.
double maxHalflengthX() const
This method returns the halflength in X at maximal Y (first coordinate of local surface frame)
BoundValues
BoundValues for better readability.
virtual MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream.
double halflengthY1() const
This method returns the halflength in Y of trapezoid at negative/positive Y (second coordinate)
DiamondBounds(DiamondBounds &&diabo) noexcept=default
Copy constructor.
double alpha1() const
This method returns the opening angle alpha in point A
virtual bool insideLoc2(const Amg::Vector2D &locpo, double tol2=0.) const override final
This method checks inside bounds in loc2.