ATLAS Offline Software
Loading...
Searching...
No Matches
AlignableTrackingVolume.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6// AlignableTrackingVolume.h, (c) ATLAS Detector software
8
9#ifndef TRKGEOMETRY_ALIGNABLETRACKINGVOLUME_H
10#define TRKGEOMETRY_ALIGNABLETRACKINGVOLUME_H
11
12class MsgStream;
13
17#include "TrkSurfaces/Surface.h"
18// Amg
20
21namespace Trk {
22
23class Surface;
25
35
37
38 public:
41 virtual ~AlignableTrackingVolume() override = default;
43 AlignableTrackingVolume(std::unique_ptr<Amg::Transform3D> htrans,
44 std::shared_ptr<VolumeBounds> volbounds,
45 const BinnedMaterial& matprop,
46 int sampleID,
47 const std::string& volumeName = "undefined");
48
52 int identify() const;
54 const BinnedMaterial* binnedMaterial() const;
55
56 virtual bool isAlignable() const override final;
57
58 private:
62};
63
65 return m_sampleID;
66}
67
71
73 return true;
74}
75} // namespace Trk
76
77#endif // TRKGEOMETRY_ALIGNABLETRACKINGVOLUME_H
78
Eigen::Affine3d Transform3D
virtual ~AlignableTrackingVolume() override=default
virtual bool isAlignable() const override final
std::unique_ptr< Amg::Transform3D > m_alignment
const TrackingVolume * alignedTrackingVolume() const
returns the alignedTrackingVolume
AlignableTrackingVolume()=default
Default Constructor.
int identify() const
returns the id
const BinnedMaterial * binnedMaterial() const
access to binned material
for description of non-homogenous dense volumes
Material with information about thickness of material.
Abstract Base Class for tracking surfaces.
TrackingVolume()=default
Default Constructor.
const std::string & volumeName() const
Returns the VolumeName - for debug reason, might be depreciated later.
STL class.
Definition of ATLAS Math & Geometry primitives (Amg)
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.
#define private