Base class for all volumes inside the tracking realm, it defines the interface for inherited Volume classes regarding the geometrical information.
More...
#include <Volume.h>
Base class for all volumes inside the tracking realm, it defines the interface for inherited Volume classes regarding the geometrical information.
- Author
- Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch
-
Christos Anastopoulos (Athena MT modifications)
Definition at line 36 of file Volume.h.
◆ Volume() [1/5]
Defaults copies are special due ot unique ptr data member.
◆ Volume() [2/5]
| Trk::Volume::Volume |
( |
Volume && | | ) |
|
|
default |
◆ ~Volume()
| virtual Trk::Volume::~Volume |
( |
| ) |
|
|
virtualdefault |
◆ Volume() [3/5]
Constructor with arguments.
Definition at line 22 of file Volume.cxx.
27{}
Amg::Vector3D m_center
center position of the surface
std::unique_ptr< Amg::Transform3D > m_transform
Transform3D (optional)
std::shared_ptr< VolumeBounds > m_volumeBounds
the volumeBounds
static const Amg::Vector3D s_origin(0, 0, 0)
origin position
◆ Volume() [4/5]
| Trk::Volume::Volume |
( |
const Volume & | vol | ) |
|
Copy Constructor.
Definition at line 30 of file Volume.cxx.
32 ? std::make_unique<Amg::Transform3D>(*(vol.m_transform))
33 : nullptr),
◆ Volume() [5/5]
Copy Constructor.
Definition at line 38 of file Volume.cxx.
39 :
m_transform(vol.m_transform ? std::make_unique<Amg::Transform3D>(
40 shift * (*(vol.m_transform)))
41 : std::make_unique<Amg::Transform3D>(shift)),
◆ boundarySurfaceAccessor()
Provide accessor for BoundarySurfaces.
Definition at line 82 of file Volume.cxx.
86{
88 return Trk::ObjectAccessor(
90 }
92 transform().inverse() * gp, dir, forceInside));
93}
const Amg::Transform3D & transform() const
Return methods for geometry transform.
VolumeBounds & volumeBounds()
ObjectAccessor boundarySurfaceAccessor(const Amg::Vector3D &gp, const Amg::Vector3D &mom, bool forceInside=false) const
Provide accessor for BoundarySurfaces.
◆ center()
returns the center of the volume
Definition at line 90 of file Volume.h.
◆ clone()
polymorpic deep copy
Definition at line 60 of file Volume.cxx.
61{
62 return new Trk::Volume(*this);
63}
◆ inside()
Inside() method for checks.
Definition at line 72 of file Volume.cxx.
73{
76 }
79}
Eigen::Matrix< double, 3, 1 > Vector3D
◆ operator=() [1/2]
Assignment operator.
Definition at line 47 of file Volume.cxx.
48{
49 if (this != &vol) {
51 ? std::make_unique<Amg::Transform3D>(*vol.m_transform)
52 : nullptr;
55 }
56 return *this;
57}
◆ operator=() [2/2]
◆ transform()
Return methods for geometry transform.
Definition at line 83 of file Volume.h.
83 {
86 }
88 }
static const Amg::Transform3D s_idTransform
idendity transformation
◆ volumeBounds() [1/2]
◆ volumeBounds() [2/2]
◆ m_center
center position of the surface
Definition at line 79 of file Volume.h.
◆ m_transform
◆ m_volumeBounds
| std::shared_ptr<VolumeBounds> Trk::Volume::m_volumeBounds = nullptr |
|
protected |
the volumeBounds
Definition at line 80 of file Volume.h.
The documentation for this class was generated from the following files: