File ProtoLayerHelper.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

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

This class is designed to parse a vector of Surfaces and sort them into corresponding proto layers.

Public Types

using SortingConfig = std::pair<BinningValue, double>

Public Functions

inline ProtoLayerHelper(const Config &config, std::unique_ptr<const Logger> logger = getDefaultLogger("ProtoLayerHelper", Logging::INFO))

Constructor with explicit config.

Parameters
  • config – Explicit config struct

  • logger – logging instance

~ProtoLayerHelper() = default
std::vector<ProtoLayer> protoLayers(const GeometryContext &gctx, const std::vector<const Surface*> &surfaces, const SortingConfig &sorting) const

Sort the surfaces into ProtoLayers.

Parameters
  • gctx – The geometry context (usually building context at this stage)

  • surfaces – The surfaces to be sorted into arrays

  • sorting – The sorting setup, one single sorting

Returns

A vector of ProtoLayers

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

Sort the surfaces into ProtoLayers, sequential sorting.

Parameters
  • gctx – The geometry context (usually building context at this stage)

  • surfaces – The surfaces to be sorted into arrays

  • sortings – The sequential sorting setup

Returns

A vector of ProtoLayers

Private Functions

inline const Logger &logger() const

Private access to logger.

Private Members

std::unique_ptr<const Logger> m_logger

Logging instance.

struct Config
#include <Acts/Geometry/ProtoLayerHelper.hpp>