Class PassiveLayerBuilder

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class Acts::PassiveLayerBuilder : public Acts::ILayerBuilder

The PassiveLayerBuilder is able to build cylinder & disc layers with given dimensions and material.

The specifications of the the layers have to be given by the configuration struct.

Public Functions

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

Constructor.

Parameters
  • plConfig: is the ocnfiguration struct that steers behavior

  • logger: logging instance

~PassiveLayerBuilder() override = default

Destructor.

const LayerVector centralLayers(const GeometryContext &gctx) const override

LayerBuilder interface method.

Return

the layers at the central sector

Parameters
  • gctx: ist the geometry context under which the geometry is built

Config getConfiguration() const

Get configuration method.

const std::string &identification() const override

Name identification.

Return

the string based identification

const LayerVector negativeLayers(const GeometryContext &gctx) const override

LayerBuilder interface method.

Return

the layers at negative side

Parameters
  • gctx: ist the geometry context under which the geometry is built

const LayerVector positiveLayers(const GeometryContext &gctx) const override

LayerBuilder interface method.

Return

the layers at positive side

Parameters
  • gctx: ist the geometry context under which the geometry is built

void setConfiguration(const Config &plConfig)

Set configuration method.

Parameters
  • plConfig: is a configuration struct it overwrites the current configuration

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

Set logging instance.

Parameters
  • newLogger: the logger instance

Protected Attributes

Config m_cfg

configuration

struct Config

Configuration struct for the passive layer builder This nested struct is used to configure the layer building.

Public Members

std::vector<double> centralLayerHalflengthZ

central layer specs

std::vector<std::shared_ptr<const ISurfaceMaterial>> centralLayerMaterial

central layer specs

std::vector<double> centralLayerRadii

central layer specs

std::vector<double> centralLayerThickness

central layer specs

std::string layerIdentification

string based identification

std::vector<std::shared_ptr<const ISurfaceMaterial>> posnegLayerMaterial

p/n layer specs

std::vector<double> posnegLayerPositionZ

p/n layer specs

std::vector<double> posnegLayerRmax

p/n layer specs

std::vector<double> posnegLayerRmin

p/n layer specs

std::vector<double> posnegLayerThickness

p/n layer specs