Struct ProtoLayer

Struct Documentation

struct Acts::ProtoLayer

Encapsulates min/max boundaries that will be turned into a layer.

The struct allows this information to be obtained in a consistent way, or be caller provided.

Public Types

using Range = std::pair<double, double>

The envelope parameters.

Public Functions

ProtoLayer(const GeometryContext &gctx, const std::vector<const Surface*> &surfaces)

Constructor.

Loops over a provided vector of surface and calculates the various min/max values in one go. Also takes into account the thickness of an associated DetectorElement, if it exists.

Parameters
  • gctx: The current geometry context object, e.g. alignment

  • surfaces: The vector of surfaces to consider

ProtoLayer(const GeometryContext &gctx, const std::vector<std::shared_ptr<const Surface>> &surfaces)

Constructor.

Loops over a provided vector of surface and calculates the various min/max values in one go. Also takes into account the thickness of an associated DetectorElement, if it exists.

Parameters
  • gctx: The current geometry context object, e.g. alignment

  • surfaces: The vector of surfaces to consider

ProtoLayer() = default
double max(BinningValue bval, bool addenv = true)

Parameters
  • bval: The accessed binning value

  • addenv: The steering if enevlope is added or not

double medium(BinningValue bval, bool addenv = true)

Parameters
  • bval: The accessed binning value

  • addenv: The steering if enevlope is added or not

double min(BinningValue bval, bool addenv = true)

Get the parameters : min.

Parameters
  • bval: The accessed binning value

  • addenv: The steering if enevlope is added or not

double range(BinningValue bval, bool addenv = true)

Parameters
  • bval: The accessed binning value

  • addenv: The steering if enevlope is added or not

std::ostream &toStream(std::ostream &sl) const

Output to ostream.

Parameters
  • sl: the input ostream

Public Members

std::vector<Range> envelope = std::vector<Range>((int)binValues, {0., 0.})
Extent extent

The extent of the ProtoLayer.