ATLAS Offline Software
Loading...
Searching...
No Matches
HoughEventData.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONR4_MUONPATTERNRECOGNITIONEVENT_MUONHOUGHEVENTDATA__H
6#define MUONR4_MUONPATTERNRECOGNITIONEVENT_MUONHOUGHEVENTDATA__H
7
10#include "Acts/Seeding/HoughTransformUtils.hpp"
13#include <unordered_map>
14#include <memory>
15
16namespace MuonR4{
17
21 template <typename peakFinder_t, typename peakFinderConfig_t>
24
29 inline static void updateSearchWindow(std::pair<double,double> & searchWindow, double value){
30 searchWindow.first = std::min(searchWindow.first, value);
31 searchWindow.second = std::max(searchWindow.second, value);
32 }
33
34 // Hough accumulator
35 std::unique_ptr<HoughPlane> houghPlane{nullptr};
36 // peak finder instance
37 std::unique_ptr<peakFinder_t> peakFinder{nullptr};
41 // Bucket containing the input space points
42 const SpacePointBucket* bucket{nullptr};
43 // placeholder boundary for the search space
44 static constexpr double dummyBoundary{1.e9};
45 // search window for the intercept, optimised for the bucket
47 // search window for the angle, optimised for the bucket
48 std::pair<double, double> searchWindowTanAngle{dummyBoundary, -dummyBoundary};
49
51 void updateHoughWindow(double interceptMeas, double TanAngleMeas) {
54 }
55 };
56 // the maxima found by the hough transform
57 std::vector<HoughMaximum> maxima{};
58 // the hough setup for each logical muon chamber
59 std::unordered_map<const MuonGMR4::SpectrometerSector*, std::vector<HoughSetupForBucket>> houghSetups{};
60 // the axis ranges currently mapped to the accumulator
61 Acts::HoughTransformUtils::HoughAxisRanges currAxisRanges;
62 // current search window for the intercept
63 std::pair<double,double> searchSpaceIntercept{10000000,-100000000.};
64 // current search window for the angle
65 std::pair<double,double> searchSpaceTanAngle{100000000.,-100000.};
66 // hit counter for phi-measurements
67 size_t phiHitsOnMax{0};
68 };
69
70 // for now, we use one common (default ACTS) peak finder for both the eta- and the phi-transforms.
72
73}
74
75#endif
: The muon space point bucket represents a collection of points that will bre processed together in t...
This header ties the generic definitions in this package.
HoughEventData_impl< ActsPeakFinderForMuon, ActsPeakFinderForMuonCfg > HoughEventData
Hough transform configuration for one bucket of the search space.
std::pair< double, double > searchWindowIntercept
void updateHoughWindow(double interceptMeas, double TanAngleMeas)
Update the hough space search window.
Templated event data class for the phase-2 muon hough transform.
static void updateSearchWindow(std::pair< double, double > &searchWindow, double value)
Updates a search space window to account for a value.
std::unordered_map< const MuonGMR4::SpectrometerSector *, std::vector< HoughSetupForBucket > > houghSetups