ATLAS Offline Software
MuonRegionHough.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONREGIONHOUGH_H
6 #define MUONREGIONHOUGH_H
7 
8 #include <cmath>
9 #include <iostream>
10 #include <vector>
11 
15 
16 namespace MuonHough {
17 
20  public:
23 
26 
27  private:
29  void initDefaultRegions();
30 
33  };
34 
37  public:
39  MuonSectorHough(int sector, const MuonDetectorDescription& regionDescriptions);
40 
43 
46 
48  void reset();
49 
50  private:
51  std::vector<MuonLayerHough*> m_transforms;
52  // int m_sector; /// sector number
53  };
54 
57  public:
60 
63 
65  void reset();
66 
69 
71  MuonDetectorHough(const RegionDescriptionVec& regionDescriptors);
72 
75 
76  private:
77  void init();
78 
79  std::vector<MuonSectorHough*> m_sectors;
80  std::vector<MuonPhiLayerHough*> m_phiTransforms;
81  };
82 
86  return *m_transforms[index];
87  }
88 
90  return *m_phiTransforms[region];
91  }
92 
95  return m_sectors[sector - 1]->hough(region, layer);
96  }
97 
98 } // namespace MuonHough
99 #endif
index
Definition: index.py:1
Muon::MuonStationIndex::LayerIndex
LayerIndex
enum to classify the different layers in the muon spectrometer
Definition: MuonStationIndex.h:38
Muon::MuonStationIndex::sectorLayerHash
static unsigned int sectorLayerHash(DetectorRegionIndex detectorRegionIndex, LayerIndex layerIndex)
create a hash out of region and layer
Definition: MuonStationIndex.cxx:226
MuonHough::MuonSectorHough::reset
void reset()
reset histograms
Definition: MuonRegionHough.cxx:40
MuonHough::MuonLayerHough
Definition: MuonLayerHough.h:54
MuonHough::MuonDetectorDescription::initDefaultRegions
void initDefaultRegions()
initialize default geometry
Definition: MuonRegionHough.cxx:110
MuonHough::RegionDescriptor
struct containing all information to build a Hough transform for a given chamber index
Definition: MuonLayerHough.h:25
MuonHough::MuonDetectorHough::phiHough
MuonPhiLayerHough & phiHough(Muon::MuonStationIndex::DetectorRegionIndex region)
access phi transform
Definition: MuonRegionHough.h:89
MuonHough::MuonSectorHough::MuonSectorHough
MuonSectorHough(int sector, const MuonDetectorDescription &regionDescriptions)
constructor for a given sector using the default geometry
Definition: MuonRegionHough.cxx:9
MuonLayerHough.h
MuonHough::MuonDetectorHough::hough
MuonLayerHough & hough(int sector, Muon::MuonStationIndex::DetectorRegionIndex region, Muon::MuonStationIndex::LayerIndex layer)
access precision transform
Definition: MuonRegionHough.h:93
MuonHough::MuonPhiLayerHough
Definition: MuonPhiLayerHough.h:22
MuonHough::MuonDetectorHough::~MuonDetectorHough
~MuonDetectorHough()
destructor
Definition: MuonRegionHough.cxx:54
MuonHough::MuonDetectorDescription
class managing geometry of the Hough spaces
Definition: MuonRegionHough.h:19
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
MuonHough
Definition: MuonLayerHoughTool.h:41
MuonHough::MuonDetectorHough::reset
void reset()
reset histograms
Definition: MuonRegionHough.cxx:46
Muon::MuonStationIndex::DetectorRegionIndex
DetectorRegionIndex
enum to classify the different layers in the muon spectrometer
Definition: MuonStationIndex.h:47
MuonHough::MuonDetectorHough::MuonDetectorHough
MuonDetectorHough()
constructor using default region definitions
Definition: MuonRegionHough.cxx:51
MuonHough::MuonDetectorDescription::m_regionDescriptions
RegionDescriptionVec m_regionDescriptions
cached geometry
Definition: MuonRegionHough.h:32
MuonHough::MuonDetectorDescription::MuonDetectorDescription
MuonDetectorDescription()
constructor
Definition: MuonRegionHough.cxx:67
MuonHough::MuonDetectorHough
class managing all Hough transforms in the detector
Definition: MuonRegionHough.h:56
MuonPhiLayerHough.h
MuonHough::MuonSectorHough::~MuonSectorHough
~MuonSectorHough()
destructor
Definition: MuonRegionHough.cxx:36
MuonHough::MuonDetectorHough::m_sectors
std::vector< MuonSectorHough * > m_sectors
Definition: MuonRegionHough.h:79
DeMoScan.index
string index
Definition: DeMoScan.py:364
MuonHough::MuonDetectorHough::init
void init()
Definition: MuonRegionHough.cxx:59
MuonHough::MuonDetectorHough::m_phiTransforms
std::vector< MuonPhiLayerHough * > m_phiTransforms
sector transforms
Definition: MuonRegionHough.h:80
MuonHough::MuonSectorHough::hough
MuonLayerHough & hough(Muon::MuonStationIndex::DetectorRegionIndex region, Muon::MuonStationIndex::LayerIndex layer)
access the Hough transform for a given region
Definition: MuonRegionHough.h:83
MuonHough::MuonSectorHough
class managing all precision Hough transforms in a sector
Definition: MuonRegionHough.h:36
MuonStationIndex.h
MuonHough::RegionDescriptionVec
std::vector< RegionDescriptor > RegionDescriptionVec
Definition: MuonLayerHough.h:51
MuonHough::MuonSectorHough::m_transforms
std::vector< MuonLayerHough * > m_transforms
Definition: MuonRegionHough.h:51
MuonHough::MuonDetectorHough::MuonDetectorHough
MuonDetectorHough(const RegionDescriptionVec &regionDescriptors)
constructor using custom region definitions
MuonHough::MuonDetectorDescription::getDescriptor
RegionDescriptor getDescriptor(int sector, Muon::MuonStationIndex::DetectorRegionIndex region, Muon::MuonStationIndex::LayerIndex layer) const
Definition: MuonRegionHough.cxx:69