|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    9 #ifndef TRKVOLUMES_VOLUME_H 
   10 #define TRKVOLUMES_VOLUME_H 
   45         Volume(std::unique_ptr<Amg::Transform3D> htrans,
 
   46                std::shared_ptr<VolumeBounds> volBounds);
 
   76                                                 bool forceInside=
false) 
const;
 
   87       return Trk::s_idTransform;
 
  118 #endif // TRKVOLUMES_VOLUME_H 
  
virtual ~Volume()=default
bool inside(const Amg::Vector3D &gp, double tol=0.) const
Inside() method for checks.
std::shared_ptr< VolumeBounds > m_volumeBounds
the volumeBounds
Volume()=default
Defaults copies are special due ot unique ptr data member
Eigen::Affine3d Transform3D
virtual Volume * clone() const
polymorpic deep copy
const Amg::Vector3D & center() const
returns the center of the volume
ObjectAccessor boundarySurfaceAccessor(const Amg::Vector3D &gp, const Amg::Vector3D &mom, bool forceInside=false) const
Provide accessor for BoundarySurfaces.
Ensure that the ATLAS eigen extensions are properly loaded.
const Amg::Transform3D & transform() const
Return methods for geometry transform.
Eigen::Matrix< double, 3, 1 > Vector3D
Volume & operator=(Volume &&)=default
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
const VolumeBounds & volumeBounds() const
returns the volumeBounds()
std::unique_ptr< Amg::Transform3D > m_transform
Transform3D (optional)
Volume(Volume &&)=default
macros to associate a CLID to a type
Amg::Vector3D m_center
center position of the surface