Class Acts::TrackingGeometryBuilder

class TrackingGeometryBuilder : public Acts::ITrackingGeometryBuilder

The Acts::TrackingGeometry Builder for volumes that wrap around another.

It retrieves an array of std::functions that build the TrackingGeometry sequentially in order, with the following options:

  • contained (e.g. a final insertion of a beam pipe of longer extend)

  • wrapped (e.g. an outer detector wrapping an inner one)

  • attached (e.g. a neighbor detector attaching to the previous one)

The returned volume of each step must be processable by the previous step

Public Functions

TrackingGeometryBuilder(const Config &cgbConfig, std::unique_ptr<const Logger> logger = getDefaultLogger("TrackingGeometryBuilder", Logging::INFO))


  • cgbConfig[in] is the configuration struct for this builder

  • logger[in] logging instance

~TrackingGeometryBuilder() override = default


const Config &getConfiguration() const

Get configuration method.


the current configuration

void setConfiguration(const Config &cgbConfig)

Set configuration method.


cgbConfig – is the new configuration struct

void setLogger(std::unique_ptr<const Logger> newLogger)

set logging instance


newLogger – the new logging instance

virtual std::unique_ptr<const TrackingGeometry> trackingGeometry(const GeometryContext &gctx) const final

TrackingGeometry Interface method.


gctx – geometry context of that building call


a unique pointer to a TrackingGeometry

struct Config

Nested Configuration for the CylinderVolumeBuilder.

Public Members

std::shared_ptr<const GeometryIdentifierHook> geometryIdentifierHook = std::make_shared<GeometryIdentifierHook>()

Optional geometry identifier hook to be used during closure.

std::shared_ptr<const IMaterialDecorator> materialDecorator = nullptr

The optional material decorator for this.

std::vector< std::function< std::shared_ptr< TrackingVolume > const GeometryContext &gctx, const TrackingVolumePtr &, const VolumeBoundsPtr &)> > trackingVolumeBuilders

The list of tracking volume builders.

std::shared_ptr<const ITrackingVolumeHelper> trackingVolumeHelper = nullptr

The tracking volume helper for detector construction.