ATLAS Offline Software
Loading...
Searching...
No Matches
ActsTrk::detail::ExpectedLayerPatternHelper Struct Reference

Helper functions to encode the expected layer patterns in separate columns. More...

#include <ExpectedHitUtils.h>

Collaboration diagram for ActsTrk::detail::ExpectedLayerPatternHelper:

Static Public Member Functions

template<typename track_container_t>
static void add (track_container_t &trackContainer)
template<typename track_container_t>
static bool exists (track_container_t &trackContainer)
template<typename track_proxy_t>
static void set (track_proxy_t &track, std::array< unsigned int, 4 > values)
template<typename track_proxy_t>
static std::array< unsigned int, 4 > get (const track_proxy_t &track)

Static Public Attributes

static const std::string_view kExpectedLayerPatternColumnName = "expectedLayerPattern"
static const std::string kPixelBarrel = std::string{kExpectedLayerPatternColumnName}+"_PixelBarrel"
static const std::string kPixelEndcap = std::string{kExpectedLayerPatternColumnName}+"_PixelEndcap"
static const std::string kStripBarrel = std::string{kExpectedLayerPatternColumnName}+"_StripBarrel"
static const std::string kStripEndcap = std::string{kExpectedLayerPatternColumnName}+"_StripEndcap"

Detailed Description

Helper functions to encode the expected layer patterns in separate columns.

The reason for this is that the xAOD backend does not currently support the native std::array that is used to store these.

Definition at line 25 of file ExpectedHitUtils.h.

Member Function Documentation

◆ add()

template<typename track_container_t>
void ActsTrk::detail::ExpectedLayerPatternHelper::add ( track_container_t & trackContainer)
inlinestatic

Definition at line 35 of file ExpectedHitUtils.h.

35 {
36 trackContainer.template addColumn<unsigned int>(kPixelBarrel);
37 trackContainer.template addColumn<unsigned int>(kPixelEndcap);
38 trackContainer.template addColumn<unsigned int>(kStripBarrel);
39 trackContainer.template addColumn<unsigned int>(kStripEndcap);
40 }

◆ exists()

template<typename track_container_t>
bool ActsTrk::detail::ExpectedLayerPatternHelper::exists ( track_container_t & trackContainer)
inlinestatic

Definition at line 43 of file ExpectedHitUtils.h.

43 {
44 return trackContainer.hasColumn(kPixelBarrel)
45 && trackContainer.hasColumn(kPixelEndcap)
46 && trackContainer.hasColumn(kStripBarrel)
47 && trackContainer.hasColumn(kStripEndcap);
48 }

◆ get()

template<typename track_proxy_t>
std::array< unsigned int, 4 > ActsTrk::detail::ExpectedLayerPatternHelper::get ( const track_proxy_t & track)
inlinestatic

Definition at line 63 of file ExpectedHitUtils.h.

63 {
64 static const Acts::ConstProxyAccessor<unsigned int> pixelBarrel{kPixelBarrel};
65 static const Acts::ConstProxyAccessor<unsigned int> pixelEndcap{kPixelEndcap};
66 static const Acts::ConstProxyAccessor<unsigned int> stripBarrel{kStripBarrel};
67 static const Acts::ConstProxyAccessor<unsigned int> stripEndcap{kStripEndcap};
68
69 return {
70 pixelBarrel(track),
71 pixelEndcap(track),
72 stripBarrel(track),
73 stripEndcap(track)
74 };
75 }
@ stripEndcap
@ stripBarrel
@ pixelEndcap

◆ set()

template<typename track_proxy_t>
void ActsTrk::detail::ExpectedLayerPatternHelper::set ( track_proxy_t & track,
std::array< unsigned int, 4 > values )
inlinestatic

Definition at line 51 of file ExpectedHitUtils.h.

51 {
52 static const Acts::ProxyAccessor<unsigned int> pixelBarrel{kPixelBarrel};
53 static const Acts::ProxyAccessor<unsigned int> pixelEndcap{kPixelEndcap};
54 static const Acts::ProxyAccessor<unsigned int> stripBarrel{kStripBarrel};
55 static const Acts::ProxyAccessor<unsigned int> stripEndcap{kStripEndcap};
56 pixelBarrel(track) = values.at(0);
57 pixelEndcap(track) = values.at(1);
58 stripBarrel(track) = values.at(2);
59 stripEndcap(track) = values.at(3);
60 }

Member Data Documentation

◆ kExpectedLayerPatternColumnName

const std::string_view ActsTrk::detail::ExpectedLayerPatternHelper::kExpectedLayerPatternColumnName = "expectedLayerPattern"
inlinestatic

Definition at line 26 of file ExpectedHitUtils.h.

◆ kPixelBarrel

const std::string ActsTrk::detail::ExpectedLayerPatternHelper::kPixelBarrel = std::string{kExpectedLayerPatternColumnName}+"_PixelBarrel"
inlinestatic

Definition at line 28 of file ExpectedHitUtils.h.

28{kExpectedLayerPatternColumnName}+"_PixelBarrel";
static const std::string_view kExpectedLayerPatternColumnName

◆ kPixelEndcap

const std::string ActsTrk::detail::ExpectedLayerPatternHelper::kPixelEndcap = std::string{kExpectedLayerPatternColumnName}+"_PixelEndcap"
inlinestatic

Definition at line 29 of file ExpectedHitUtils.h.

29{kExpectedLayerPatternColumnName}+"_PixelEndcap";

◆ kStripBarrel

const std::string ActsTrk::detail::ExpectedLayerPatternHelper::kStripBarrel = std::string{kExpectedLayerPatternColumnName}+"_StripBarrel"
inlinestatic

Definition at line 30 of file ExpectedHitUtils.h.

30{kExpectedLayerPatternColumnName}+"_StripBarrel";

◆ kStripEndcap

const std::string ActsTrk::detail::ExpectedLayerPatternHelper::kStripEndcap = std::string{kExpectedLayerPatternColumnName}+"_StripEndcap"
inlinestatic

Definition at line 31 of file ExpectedHitUtils.h.

31{kExpectedLayerPatternColumnName}+"_StripEndcap";

The documentation for this struct was generated from the following file: