File SpacePointBuilder.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

template<typename spacepoint_t>
class SpacePointBuilder
#include <Acts/SpacePointFormation/SpacePointBuilder.hpp>

After the particle interaction with surfaces are recorded and digitized measurements on the pixel or strip detectors need further treatment.

This class takes the SouceLinks and provides the corresponding space points.

Public Functions

SpacePointBuilder(const SpacePointBuilderConfig &cfg, std::function<spacepoint_t(Acts::Vector3, Acts::Vector2, boost::container::static_vector<SourceLink, 2>)> func, std::unique_ptr<const Logger> logger = getDefaultLogger("SpamcePointBuilder", Logging::INFO))
Parameters
  • cfg – The configuration for the space point builder

  • func – The function that provides user’s SP constructor with global pos, global cov, and sourceLinks.

  • logger – The logging instance

SpacePointBuilder() = default
template<template<typename...> typename container_t>
void buildSpacePoint(const GeometryContext &gctx, const std::vector<SourceLink> &sourceLinks, const SpacePointBuilderOptions &opt, std::back_insert_iterator<container_t<spacepoint_t>> spacePointIt) const

Calculates the space points out of a given collection of SourceLinks and stores the results.

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

  • sourceLinks – vector of Sourcelink

  • opt – option for the space point bulding. It contains the ends of the strips for strip SP building

  • spacePointIt – Output iterator for the space point

void makeSourceLinkPairs(const GeometryContext &gctx, const std::vector<SourceLink> &slinksFront, const std::vector<SourceLink> &slinksBack, std::vector<std::pair<SourceLink, SourceLink>> &slinkPairs, const StripPairOptions &pairOpt) const

Searches possible combinations of two SourceLinks on different surfaces that may come from the same particles.

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

  • slinksFront – vector of Sourcelinks on a surface

  • slinksBack – vector of SoruceLinks on another surface

  • slinkPairs – storage of the SouceLink pairs

  • pairOpt – pair maker option with paramCovAccessor

Protected Functions

inline const Logger &logger() const

Protected Attributes

SpacePointBuilderConfig m_config
std::unique_ptr<const Acts::Logger> m_logger

the logging instance

std::function<spacepoint_t(Acts::Vector3, Acts::Vector2, boost::container::static_vector<SourceLink, 2>)> m_spConstructor

Function to create external space point The constructor of spacepoint_t with Vector3 global pos, Vector2 global cov, and vector of source link pointers.

std::shared_ptr<const SpacePointUtility> m_spUtility