File ITrackingVolumeArrayCreator.hpp

namespace Acts


This file is foreseen for the Geometry module to replace Extent


this is foreseen for the ‘Geometry’ module


typedef std::vector<TrackingVolumePtr> TrackingVolumeVector

A std::vector of a std::shared_ptr to a TrackingVolume.

class ITrackingVolumeArrayCreator
#include <Acts/Geometry/ITrackingVolumeArrayCreator.hpp>

Interface class ITrackingVolumeArrayCreators It inherits from IAlgTool.

It is designed to centralize the code to create Arrays of Tracking Volumes for both:

  • confinement in another TrackingVolume

  • navigation and glueing

Arrays for glueing and confinement are often the same, therefore the newly created TrackingVolumeArray is done by a shared_ptr

Subclassed by Acts::TrackingVolumeArrayCreator

Public Functions

virtual ~ITrackingVolumeArrayCreator() = default

Virtual destructor.

virtual std::shared_ptr<const TrackingVolumeArray> trackingVolumeArray(const GeometryContext &gctx, const TrackingVolumeVector &vols, BinningValue bVal) const = 0

TrackingVolumeArrayCreator interface method - creates array depending on the binning type.

  • gctx[in] the geometry context for this building

  • vols – are the TrackingVolumes ordered in a tracker

  • bVal – is the binning value for the volume binning


sahred pointer to a new TrackingVolumeArray