ATLAS Offline Software
Tracking
TrkDetDescr
TrkGeometry
src
AlignableTrackingVolume.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// AlignableTrackingVolume.cxx, (c) ATLAS Detector software
8
9
// Trk
10
#include "
TrkGeometry/AlignableTrackingVolume.h
"
11
12
#include "
TrkGeometry/TrackingVolume.h
"
13
#include "
TrkVolumes/VolumeBounds.h
"
14
15
Trk::AlignableTrackingVolume::AlignableTrackingVolume
()
16
:
Trk
::
TrackingVolume
(),
17
m_alignedTV(nullptr),
18
m_sampleID(0),
19
m_alignment(nullptr),
20
m_binnedMaterial(nullptr) {}
21
22
Trk::AlignableTrackingVolume::AlignableTrackingVolume
(
23
Amg::Transform3D
* htrans,
Amg::Transform3D
* align,
VolumeBounds
* volbounds,
24
const
Trk::BinnedMaterial
* matprop,
int
sampleID,
25
const
std::string& volumeName)
26
:
Trk
::
TrackingVolume
(htrans, volbounds, *matprop, nullptr, nullptr,
27
volumeName),
28
m_alignedTV(nullptr),
29
m_sampleID(sampleID),
30
m_alignment(align),
31
m_binnedMaterial(matprop) {
32
if
(
m_alignment
)
m_alignedTV
= this->
cloneTV
(*
m_alignment
);
33
}
34
35
Trk::AlignableTrackingVolume::~AlignableTrackingVolume
() {
36
// the volume does not own entry/exit surfaces
37
delete
m_alignedTV;
38
delete
m_alignment;
39
delete
m_binnedMaterial;
40
}
41
42
const
Trk::TrackingVolume
*
Trk::AlignableTrackingVolume::alignedTrackingVolume
()
43
const
{
44
if
(m_alignedTV)
return
m_alignedTV;
45
return
this
;
46
}
Trk::AlignableTrackingVolume::~AlignableTrackingVolume
virtual ~AlignableTrackingVolume() override
Destructor.
Definition:
AlignableTrackingVolume.cxx:35
Trk::AlignableTrackingVolume::m_alignedTV
const TrackingVolume * m_alignedTV
Definition:
AlignableTrackingVolume.h:65
Trk::BinnedMaterial
Definition:
BinnedMaterial.h:38
VolumeBounds.h
Trk::AlignableTrackingVolume::m_alignment
Amg::Transform3D * m_alignment
Definition:
AlignableTrackingVolume.h:67
Trk::VolumeBounds
Definition:
VolumeBounds.h:45
Trk::TrackingVolume::cloneTV
TrackingVolume * cloneTV(Amg::Transform3D &transform) const
clone at new position
Definition:
TrackingVolume.cxx:1235
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition:
GeoPrimitives.h:46
Trk::AlignableTrackingVolume::alignedTrackingVolume
const TrackingVolume * alignedTrackingVolume() const
returns the alignedTrackingVolume
Definition:
AlignableTrackingVolume.cxx:42
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition:
FakeTrackBuilder.h:9
Trk::AlignableTrackingVolume::AlignableTrackingVolume
AlignableTrackingVolume()
Default Constructor.
Definition:
AlignableTrackingVolume.cxx:15
TrackingVolume.h
Trk::TrackingVolume
Definition:
TrackingVolume.h:121
AlignableTrackingVolume.h
Generated on Sun Dec 22 2024 21:06:51 for ATLAS Offline Software by
1.8.18