ATLAS Offline Software
Loading...
Searching...
No Matches
MuonHough::MuonDetectorHough Class Reference

class managing all Hough transforms in the detector More...

#include <MuonRegionHough.h>

Collaboration diagram for MuonHough::MuonDetectorHough:

Public Types

using DetRegIdx = Muon::MuonStationIndex::DetectorRegionIndex
using LayIdx = Muon::MuonStationIndex::LayerIndex

Public Member Functions

MuonPhiLayerHough & phiHough (DetRegIdx region)
 access phi transform
MuonLayerHough & hough (int sector, DetRegIdx region, LayIdx layer)
 access precision transform
void reset ()
 reset histograms
 MuonDetectorHough ()
 constructor using default region definitions
 MuonDetectorHough (const RegionDescriptionVec &regionDescriptors)
 constructor using custom region definitions
 ~MuonDetectorHough ()
 destructor

Private Member Functions

void init ()

Private Attributes

std::vector< std::unique_ptr< MuonSectorHough > > m_sectors
std::vector< std::unique_ptr< MuonPhiLayerHough > > m_phiTransforms
 sector transforms

Detailed Description

class managing all Hough transforms in the detector

Definition at line 66 of file MuonRegionHough.h.

Member Typedef Documentation

◆ DetRegIdx

◆ LayIdx

Constructor & Destructor Documentation

◆ MuonDetectorHough() [1/2]

MuonHough::MuonDetectorHough::MuonDetectorHough ( )

constructor using default region definitions

Definition at line 45 of file MuonRegionHough.cxx.

◆ MuonDetectorHough() [2/2]

MuonHough::MuonDetectorHough::MuonDetectorHough ( const RegionDescriptionVec & regionDescriptors)

constructor using custom region definitions

◆ ~MuonDetectorHough()

MuonHough::MuonDetectorHough::~MuonDetectorHough ( )
default

destructor

Member Function Documentation

◆ hough()

MuonLayerHough & MuonHough::MuonDetectorHough::hough ( int sector,
DetRegIdx region,
LayIdx layer )
inline

access precision transform

Definition at line 76 of file MuonRegionHough.h.

76 {
77 return m_sectors.at(sector - 1)->hough(region, layer);
78 }
std::vector< std::unique_ptr< MuonSectorHough > > m_sectors

◆ init()

void MuonHough::MuonDetectorHough::init ( )
private

Definition at line 50 of file MuonRegionHough.cxx.

50 {
51 MuonDetectorDescription detectorDescription; // initialize all the regions
52 for (unsigned int i = 1; i <= 16; ++i) { m_sectors.push_back(std::make_unique<MuonSectorHough>(i, detectorDescription)); }
53 using namespace Muon::MuonStationIndex;
54 for (int i = 0; i < toInt(DetRegIdx::DetectorRegionIndexMax); ++i) {
55 m_phiTransforms.push_back(std::make_unique<MuonPhiLayerHough>(60, -M_PI, M_PI, static_cast<DetRegIdx>(i)));
56 }
57 }
#define M_PI
Muon::MuonStationIndex::DetectorRegionIndex DetRegIdx
std::vector< std::unique_ptr< MuonPhiLayerHough > > m_phiTransforms
sector transforms
constexpr int toInt(const EnumType enumVal)

◆ phiHough()

MuonPhiLayerHough & MuonHough::MuonDetectorHough::phiHough ( DetRegIdx region)
inline

access phi transform

Definition at line 71 of file MuonRegionHough.h.

71 {
72 return *m_phiTransforms[static_cast<int>(region)];
73 }

◆ reset()

void MuonHough::MuonDetectorHough::reset ( )

reset histograms

Definition at line 40 of file MuonRegionHough.cxx.

40 {
41 for (auto& sector : m_sectors) sector->reset();
42 for (auto& transform : m_phiTransforms) transform->reset();
43 }

Member Data Documentation

◆ m_phiTransforms

std::vector<std::unique_ptr<MuonPhiLayerHough> > MuonHough::MuonDetectorHough::m_phiTransforms
private

sector transforms

Definition at line 96 of file MuonRegionHough.h.

◆ m_sectors

std::vector<std::unique_ptr<MuonSectorHough> > MuonHough::MuonDetectorHough::m_sectors
private

Definition at line 95 of file MuonRegionHough.h.


The documentation for this class was generated from the following files: