Loading [MathJax]/jax/input/TeX/config.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
SharedHitCounter.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSTRACKRECONSTRUCTION_SHAREDHITCOUNTER_H
6 #define ACTSTRACKRECONSTRUCTION_SHAREDHITCOUNTER_H
7 
9 
10 #include "Acts/EventData/TrackContainerFrontendConcept.hpp"
11 
12 #include <utility>
13 #include <vector>
14 
15 namespace ActsTrk {
16  struct MutableTrackContainer;
17 }
18 
19 namespace ActsTrk::detail {
20 
21  // Helper class to keep track of measurement indices, used for shared hits and debug printing
23  public:
24  SharedHitCounter() = default;
25  SharedHitCounter(const SharedHitCounter &) = default;
28  SharedHitCounter &operator=(SharedHitCounter &&) noexcept = default;
30 
31  using ReturnSharedAndBad = std::pair<std::size_t, std::size_t>;
32 
33  template <Acts::TrackContainerFrontend track_container_t>
34  inline auto computeSharedHitsDynamic(typename track_container_t::TrackProxy &track,
35  track_container_t &tracks,
36  MeasurementIndex &measurementIndex)
38 
39  template <Acts::TrackContainerFrontend track_container_t>
40  inline auto computeSharedHits(typename track_container_t::TrackProxy &track,
41  track_container_t &tracks,
42  const MeasurementIndex &measurementIndex)
44 
45  template <Acts::TrackContainerFrontend track_container_t, typename IndexFun>
46  inline auto computeSharedHits(typename track_container_t::TrackProxy &track,
47  track_container_t &tracks,
48  std::size_t indexSize,
49  IndexFun &&indexFun)
51 
52  private:
53  struct TrackStateIndex {
54  std::size_t trackIndex;
55  std::size_t stateIndex;
56  };
58  std::vector<TrackStateIndex> m_firstTrackStateOnTheHit;
59  };
60 
61 } // namespace ActsTrk::detail
62 
64 
65 #endif
ActsTrk::detail::SharedHitCounter::SharedHitCounter
SharedHitCounter()=default
ActsTrk::detail::SharedHitCounter::m_firstTrackStateOnTheHit
std::vector< TrackStateIndex > m_firstTrackStateOnTheHit
Definition: SharedHitCounter.h:58
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
ActsTrk::detail::SharedHitCounter::TrackStateIndex::stateIndex
std::size_t stateIndex
Definition: SharedHitCounter.h:55
taskman.template
dictionary template
Definition: taskman.py:317
ActsTrk::detail::SharedHitCounter::ReturnSharedAndBad
std::pair< std::size_t, std::size_t > ReturnSharedAndBad
Definition: SharedHitCounter.h:31
SharedHitCounter.icc
ActsTrk::detail::SharedHitCounter
Definition: SharedHitCounter.h:22
ActsTrk::detail::SharedHitCounter::TrackStateIndex::trackIndex
std::size_t trackIndex
Definition: SharedHitCounter.h:54
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
ActsTrk::detail::MeasurementIndex
Definition: MeasurementIndex.h:16
MeasurementIndex.h
ActsTrk::detail::SharedHitCounter::s_noTrackState
static constexpr TrackStateIndex s_noTrackState
Definition: SharedHitCounter.h:57
Acts
Definition: ChamberAssembleTool.h:18
ActsTrk::detail::SharedHitCounter::SharedHitCounter
SharedHitCounter(const SharedHitCounter &)=default
ActsTrk::detail::SharedHitCounter::computeSharedHitsDynamic
auto computeSharedHitsDynamic(typename track_container_t::TrackProxy &track, track_container_t &tracks, MeasurementIndex &measurementIndex) -> ReturnSharedAndBad
ActsTrk::detail::SharedHitCounter::SharedHitCounter
SharedHitCounter(SharedHitCounter &&) noexcept=default
ActsTrk::detail::SharedHitCounter::TrackStateIndex
Definition: SharedHitCounter.h:53
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
ActsTrk::detail::SharedHitCounter::computeSharedHits
auto computeSharedHits(typename track_container_t::TrackProxy &track, track_container_t &tracks, const MeasurementIndex &measurementIndex) -> ReturnSharedAndBad
python.Dumpers.typename
def typename(t)
Definition: Dumpers.py:194
python.CaloAddPedShiftConfig.default
default
Definition: CaloAddPedShiftConfig.py:43
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:55
ActsTrk::detail
Definition: Decoration.h:15
ActsTrk::detail::SharedHitCounter::operator=
SharedHitCounter & operator=(const SharedHitCounter &)=default