ATLAS Offline Software
Loading...
Searching...
No Matches
MuonHoughTransformer_CurvedAtACylinder.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_CURVEDATACYLINDER_H
6#define MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_CURVEDATACYLINDER_H
7
9
11public:
13 MuonHoughTransformer_CurvedAtACylinder(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle,
14 double threshold_histo, int number_of_sectors = 1);
17
19 void fillHit(const std::shared_ptr<MuonHoughHit>& hit, double weight) override final;
21 int fillHisto(double xbin, double theta, double weight, int sector) override final;
22
24 std::unique_ptr<MuonHoughPattern> hookAssociateHitsToMaximum(const MuonHoughHitContainer& event, std::pair<double, double> coordsmaximum,
25 double residu_mm, double residu_grad, int sector) const override final;
26
28 int sector(const std::shared_ptr<MuonHoughHit>& hit) const override final;
30 float weightHoughTransform(double r0) const override final;
31
32private:
34 std::unique_ptr<double[]> m_invcurvature;
35 std::unique_ptr<double[]> m_weightcurvature;
36
37};
38
39inline int MuonHoughTransformer_CurvedAtACylinder::sector(const std::shared_ptr<MuonHoughHit>& hit) const { return hit->phiSector(); }
40
41#endif // MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_CURVEDATACYLINDER_H
Scalar theta() const
theta method
std::unique_ptr< MuonHoughPattern > hookAssociateHitsToMaximum(const MuonHoughHitContainer &event, std::pair< double, double > coordsmaximum, double residu_mm, double residu_grad, int sector) const override final
associate hits to maximum found
std::unique_ptr< double[]> m_invcurvature
array that stores the inverse curvatures that are scanned
~MuonHoughTransformer_CurvedAtACylinder()=default
destructor
MuonHoughTransformer_CurvedAtACylinder(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo, int number_of_sectors=1)
constructor
float weightHoughTransform(double r0) const override final
not implemented for this transform
int sector(const std::shared_ptr< MuonHoughHit > &hit) const override final
returns the phi sector
int fillHisto(double xbin, double theta, double weight, int sector) override final
fill transformed values in histogram
void fillHit(const std::shared_ptr< MuonHoughHit > &hit, double weight) override final
fill hit in histogram
MuonHoughTransformer(const std::string &tr_name, int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo, int number_of_sectors=1)
constructor, input values are those of histograms