File ILayerArrayCreator.hpp

namespace Acts


This file is foreseen for the Geometry module to replace Extent


typedef BinnedArray<LayerPtr> LayerArray

A BinnedArray to a std::shared_ptr of a layer.

Layers are constructed with shared_ptr factories, hence the layer array is describes as:

typedef std::shared_ptr<const Layer> LayerPtr

A std::shared_ptr to a Layer.

typedef std::vector<LayerPtr> LayerVector

A vector of std::shared_ptr to layers.

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

Interface class ILayerArrayCreators, it inherits from IAlgTool.

It receives the LayerVector and creaets an array with NaivgationLayer objects filled in between.

Subclassed by Acts::LayerArrayCreator

Public Functions

virtual ~ILayerArrayCreator() = default

Virtual destructor.

virtual std::unique_ptr<const LayerArray> layerArray(const GeometryContext &gctx, const LayerVector &layers, double min, double max, BinningType btype = arbitrary, BinningValue bvalue = binX) const = 0

LayerArrayCreator interface method.

  • gctx – is the geometry context for witch the volume is built

  • layers – are the layers to be moved into an array

  • min – is the minimul value for binning

  • max – is the maximum value for binning

  • btype – is the binning type

  • bvalue – is the value in which the binning should be done


unqiue pointer to a new LayerArray