File TrackingGeometry.hpp¶
-
namespace Acts
Set the Geometry Context PLUGIN.
Set the Calibration Context PLUGIN.
Convenience functions to ease creation of and Acts::InterpolatedMaterialMap and to avoid code duplication.
Set the Mangetic Field Context PLUGIN.
Convenience functions to ease creation of and Acts::InterpolatedBFieldMap and to avoid code duplication.
Currently implemented for the two most common formats: rz and xyz.
-
class TrackingGeometry
- #include <Acts/Geometry/TrackingGeometry.hpp>
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
It enables both, a global search for an asociatedVolume (respectively, if existing, a global search of an associated Layer or the next associated Layer), such as a continous navigation by BoundarySurfaces between the confined TrackingVolumes.
Public Functions
-
TrackingGeometry(const MutableTrackingVolumePtr &highestVolume, const IMaterialDecorator *materialDecorator = nullptr)
Constructor.
- Parameters
highestVolume – is the world volume
materialDecorator – is a dediated decorator that can assign surface or volume based material to the TrackingVolume
-
~TrackingGeometry()
Destructor.
-
const Layer *associatedLayer(const GeometryContext &gctx, const Vector3 &gp) const
Forward the associated Layer information.
- Parameters
gctx – is the context for this request (e.g. alignment)
gp – is the global position of the call
- Returns
plain pointer to assocaiated layer
-
const Surface *findSurface(GeometryIdentifier id) const
Search for a surface with the given identifier.
- Parameters
id – is the geometry identifier of the surface
- Returns nullptr
if no such surface exists
- Returns pointer
to the found surface otherwise.
-
const TrackingVolume *findVolume(GeometryIdentifier id) const
Search for a volume with the given identifier.
- Parameters
id – is the geometry identifier of the volume
- Returns nullptr
if no such volume exists
- Returns pointer
to the found volume otherwise.
-
const Surface *getBeamline() const
surface representing the beam pipe
Note
The ownership is not passed, e.g. do not delete the pointer
- Returns
raw pointer to surface representing the beam pipe (could be a null pointer)
-
const TrackingVolume *highestTrackingVolume() const
Access to the world volume.
- Returns
plain pointer to the world volume
-
const TrackingVolume *lowestTrackingVolume(const GeometryContext &gctx, const Vector3 &gp) const
return the lowest tracking Volume
- Parameters
gctx – The current geometry context object, e.g. alignment
gp – is the global position of the call
- Returns
plain pointer to the lowest TrackingVolume
Register the beam tube.
- Parameters
beam – is the beam line surface
Private Members
-
std::shared_ptr<const PerigeeSurface> m_beam¶
-
std::unordered_map<GeometryIdentifier, const Surface*> m_surfacesById¶
-
std::unordered_map<GeometryIdentifier, const TrackingVolume*> m_volumesById¶
-
TrackingVolumePtr m_world¶
Friends
- friend class TrackingGeometryBuilder
-
TrackingGeometry(const MutableTrackingVolumePtr &highestVolume, const IMaterialDecorator *materialDecorator = nullptr)
-
class TrackingGeometry