ATLAS Offline Software
Loading...
Searching...
No Matches
MuonHoughTransformer_xyz.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_XYZ_H
6#define MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_XYZ_H
7
9
12protected:
14 MuonHoughTransformer_xyz(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo,
15 int number_of_sectors = 1);
16
18 std::unique_ptr<MuonHoughPattern> hookAssociateHitsToMaximum(const MuonHoughHitContainer& event, std::pair<double, double> coordsmaximum,
19 double residu_mm, double residu_grad, int sector) const override final;
20
21public:
23 virtual ~MuonHoughTransformer_xyz() = default;
24
26 void fillHit(const std::shared_ptr<MuonHoughHit>& hit, double weight) override final;
28 int fillHisto(double r0, double phi, double weight, int sector) override final;
29
31 int sector(const std::shared_ptr<MuonHoughHit>& hit) const override final;
32
34 static double calculateAngle(double hitx, double hity, double r0);
35
37 virtual std::unique_ptr<MuonHoughPattern> initialiseHoughPattern() const = 0;
39 float weightHoughTransform(double r0) const override final;
40
42 virtual std::pair<double, double> getHitPos(const MuonHoughHitContainer& event, int hitid) const = 0;
43};
44
45#endif // MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_XYZ_H
Scalar phi() const
phi 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
virtual std::unique_ptr< MuonHoughPattern > initialiseHoughPattern() const =0
build new houghpattern
static double calculateAngle(double hitx, double hity, double r0)
calcalates the phi angle for a given hit and r0
float weightHoughTransform(double r0) const override final
put weight on houghtransform dependent on r0
void fillHit(const std::shared_ptr< MuonHoughHit > &hit, double weight) override final
fill hit in histogram
int fillHisto(double r0, double phi, double weight, int sector) override final
fill transformed values in histogram
virtual std::pair< double, double > getHitPos(const MuonHoughHitContainer &event, int hitid) const =0
returns the relevant 2d hit position
virtual ~MuonHoughTransformer_xyz()=default
destructor
int sector(const std::shared_ptr< MuonHoughHit > &hit) const override final
returns the rz sector
MuonHoughTransformer_xyz(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo, int number_of_sectors=1)
constructor
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