ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
Muon
L1MuonNSW
src
Muon/L1MuonNSW/src/MMT_Road.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef L1MUONNSW_MMT_ROAD_H
6
#define L1MUONNSW_MMT_ROAD_H
7
8
#include "
MMT_Hit.h
"
9
#include "
L1MMDefinitions.h
"
10
#include <cmath>
11
#include <numeric>
12
#include <vector>
13
14
namespace
L1Muon::L1MM
{
15
20
class
MMT_Road
{
21
public
:
22
MMT_Road
(
const
char
sector,
const
int
roadSize,
const
int
UpX,
const
int
DownX,
const
int
UpUV,
const
int
DownUV,
const
int
xthr,
const
int
uvthr,
23
const
int
iroadx,
const
int
iroadu = -1,
const
int
iroadv = -1);
24
~MMT_Road
()=
default
;
25
27
void
addHits
(
const
std::vector<const MMT_Hit*>& hits);
29
double
avgSofXUV
(
const
LayerType
type
)
const
;
30
bool
checkCoincidences
(
const
int
bcwind)
const
{
31
return
horizontalCheck
() &&
stereoCheck
() &&
matureCheck
(bcwind);
32
}
33
unsigned
int
countHits
()
const
{
return
m_road_hits
.size(); }
34
unsigned
int
countUHits
()
const
;
35
unsigned
int
countXHits
()
const
;
36
bool
evaluateLowRes
()
const
;
37
bool
horizontalCheck
()
const
;
38
void
incrementAge
(
const
int
bcwind);
39
const
std::vector<MMT_Hit>&
getHitVector
()
const
{
return
m_road_hits
; }
40
char
getSector
()
const
{
return
m_sector
; }
41
int
getXthreshold
()
const
{
return
m_xthr
; }
42
int
getUVthreshold
()
const
{
return
m_uvthr
; }
43
int
iRoadx
()
const
{
return
m_iroadx
; }
44
int
iRoadu
()
const
{
return
m_iroadu
; }
45
int
iRoadv
()
const
{
return
m_iroadv
; }
46
bool
matureCheck
(
const
int
bcwind)
const
;
47
double
mxl
()
const
;
48
bool
stereoCheck
()
const
;
49
50
private
:
51
std::vector<MMT_Hit>
m_road_hits
;
52
double
m_slopeXlow
{0.};
53
double
m_slopeXhigh
{0.};
54
double
m_slopeUlow
{0.};
55
double
m_slopeUhigh
{0.};
56
double
m_slopeVlow
{0.};
57
double
m_slopeVhigh
{0.};
58
int
m_iroadx
{-1};
59
int
m_iroadu
{-1};
60
int
m_iroadv
{-1};
61
int
m_xthr
{0};
62
int
m_uvthr
{0};
63
char
m_sector
{
'-'
};
64
};
65
66
}
// namespace L1Muon::L1MM
67
68
#endif
// L1MUONNSW_MMT_ROAD_H
L1MMDefinitions.h
MMT_Hit.h
L1Muon::L1MM::MMT_Road::m_slopeUlow
double m_slopeUlow
Definition
Muon/L1MuonNSW/src/MMT_Road.h:54
L1Muon::L1MM::MMT_Road::~MMT_Road
~MMT_Road()=default
L1Muon::L1MM::MMT_Road::m_slopeVhigh
double m_slopeVhigh
Definition
Muon/L1MuonNSW/src/MMT_Road.h:57
L1Muon::L1MM::MMT_Road::m_iroadv
int m_iroadv
Definition
Muon/L1MuonNSW/src/MMT_Road.h:60
L1Muon::L1MM::MMT_Road::m_slopeXlow
double m_slopeXlow
Definition
Muon/L1MuonNSW/src/MMT_Road.h:52
L1Muon::L1MM::MMT_Road::checkCoincidences
bool checkCoincidences(const int bcwind) const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:30
L1Muon::L1MM::MMT_Road::m_iroadx
int m_iroadx
Definition
Muon/L1MuonNSW/src/MMT_Road.h:58
L1Muon::L1MM::MMT_Road::getXthreshold
int getXthreshold() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:41
L1Muon::L1MM::MMT_Road::mxl
double mxl() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:125
L1Muon::L1MM::MMT_Road::iRoadv
int iRoadv() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:45
L1Muon::L1MM::MMT_Road::m_road_hits
std::vector< MMT_Hit > m_road_hits
Definition
Muon/L1MuonNSW/src/MMT_Road.h:51
L1Muon::L1MM::MMT_Road::m_sector
char m_sector
Definition
Muon/L1MuonNSW/src/MMT_Road.h:63
L1Muon::L1MM::MMT_Road::incrementAge
void incrementAge(const int bcwind)
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:109
L1Muon::L1MM::MMT_Road::stereoCheck
bool stereoCheck() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:143
L1Muon::L1MM::MMT_Road::countHits
unsigned int countHits() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:33
L1Muon::L1MM::MMT_Road::avgSofXUV
double avgSofXUV(const LayerType type) const
Average R/Z slope of the hits of one layer type.
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:67
L1Muon::L1MM::MMT_Road::getHitVector
const std::vector< MMT_Hit > & getHitVector() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:39
L1Muon::L1MM::MMT_Road::getUVthreshold
int getUVthreshold() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:42
L1Muon::L1MM::MMT_Road::iRoadx
int iRoadx() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:43
L1Muon::L1MM::MMT_Road::getSector
char getSector() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:40
L1Muon::L1MM::MMT_Road::m_uvthr
int m_uvthr
Definition
Muon/L1MuonNSW/src/MMT_Road.h:62
L1Muon::L1MM::MMT_Road::m_slopeVlow
double m_slopeVlow
Definition
Muon/L1MuonNSW/src/MMT_Road.h:56
L1Muon::L1MM::MMT_Road::evaluateLowRes
bool evaluateLowRes() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:89
L1Muon::L1MM::MMT_Road::m_xthr
int m_xthr
Definition
Muon/L1MuonNSW/src/MMT_Road.h:61
L1Muon::L1MM::MMT_Road::matureCheck
bool matureCheck(const int bcwind) const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:118
L1Muon::L1MM::MMT_Road::horizontalCheck
bool horizontalCheck() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:98
L1Muon::L1MM::MMT_Road::countXHits
unsigned int countXHits() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:85
L1Muon::L1MM::MMT_Road::addHits
void addHits(const std::vector< const MMT_Hit * > &hits)
Offer the hits of the current bunch crossing to the road (accepted hits are copied).
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:33
L1Muon::L1MM::MMT_Road::iRoadu
int iRoadu() const
Definition
Muon/L1MuonNSW/src/MMT_Road.h:44
L1Muon::L1MM::MMT_Road::m_slopeUhigh
double m_slopeUhigh
Definition
Muon/L1MuonNSW/src/MMT_Road.h:55
L1Muon::L1MM::MMT_Road::m_iroadu
int m_iroadu
Definition
Muon/L1MuonNSW/src/MMT_Road.h:59
L1Muon::L1MM::MMT_Road::m_slopeXhigh
double m_slopeXhigh
Definition
Muon/L1MuonNSW/src/MMT_Road.h:53
L1Muon::L1MM::MMT_Road::countUHits
unsigned int countUHits() const
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:81
L1Muon::L1MM::MMT_Road::MMT_Road
MMT_Road(const char sector, const int roadSize, const int UpX, const int DownX, const int UpUV, const int DownUV, const int xthr, const int uvthr, const int iroadx, const int iroadu=-1, const int iroadv=-1)
Definition
Muon/L1MuonNSW/src/MMT_Road.cxx:11
L1Muon::L1MM
Definitions shared by the classes of the MM trigger processor emulation.
Definition
IL1MMTriggerTool.h:16
L1Muon::L1MM::LayerType
LayerType
Type of an MM layer: X (eta strips), U (stereo +1.5 deg) or V (stereo -1.5 deg).
Definition
L1MMDefinitions.h:28
type
Generated on
for ATLAS Offline Software by
1.17.0