|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKVOLUMES_VOLUMEBOUNDS_H
10 #define TRKVOLUMES_VOLUMEBOUNDS_H
16 #include "GaudiKernel/MsgStream.h"
68 bool forceInside =
false)
const = 0;
71 virtual MsgStream&
dump(MsgStream& sl)
const = 0;
74 virtual std::ostream&
dump(std::ostream& sl)
const = 0;
84 #endif // TRKVOLUMES_VOLUMEBOUNDS_H
virtual MsgStream & dump(MsgStream &sl) const =0
Output Method for MsgStream, to be overloaded by child classes.
virtual bool inside(const Amg::Vector3D &pos, double tol=0.) const =0
Checking if position given in volume frame is inside.
virtual ~VolumeBounds()
Destructor.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
virtual VolumeBounds * clone() const =0
clone() method to make deep copy in Volume copy constructor and for assigment operator of the Surface...
Ensure that the ATLAS eigen extensions are properly loaded.
virtual std::ostream & dump(std::ostream &sl) const =0
Output Method for std::ostream, to be overloaded by child classes.
Eigen::Matrix< double, 3, 1 > Vector3D
virtual const std::vector< const Trk::Surface * > * decomposeToSurfaces(const Amg::Transform3D &transform)=0
Method to decompose the Bounds into Surfaces, the Volume can turn them into BoundarySurfaces.
virtual ObjectAccessor boundarySurfaceAccessor(const Amg::Vector3D &gp, const Amg::Vector3D &dir, bool forceInside=false) const =0
Provide accessor for BoundarySurfaces.
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
Define macros for attributes used to control the static checker.
VolumeBounds()
Default Constructor.