ATLAS Offline Software
MuonRoad.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 TRIGL2MUONSA_MUONROAD_H
6 #define TRIGL2MUONSA_MUONROAD_H
7 
8 #include "Identifier/Identifier.h"
9 
10 namespace TrigL2MuonSA {
11 
12  // --------------------------------------------------------------------------------
13  // --------------------------------------------------------------------------------
14 
15  constexpr int N_STATION = 11; //barrel 0: inner, 1: middle, 2: outer, endcap 3: inner, 4: middle, 5: outer, 6: ee, 7: csc 8: BEE 9: BME 10:BMG
16  constexpr int N_SECTOR = 2; // 0: normal, 1:overlap
17  constexpr int N_LAYER = 8;
18 
19  class MuonRoad
20  {
21  public:
22  MuonRoad() { Clear(); };
23 
24  public:
25  void Clear()
26  {
27  isEndcap = true;
28  side = 0;
29  LargeSmall = 0;
30  Special = 0;
31  phiMiddle = 0;
32  phiRoI = 0;
35  extFtfMiddleEta = 0;
36  extFtfMiddlePhi = 0;
37  for (int i=0;i<3;i++){
38  scales[i]=1;
39  }
40  for(int i=0; i<N_STATION; i++) {
41  for(int j=0; j<N_LAYER; j++) {
42  rWidth[i][j] = 0;
43  }
44  for(int j=0; j<N_SECTOR; j++) {
45  aw[i][j] = 0;
46  bw[i][j] = 0;
47  aw_ftf[i][j] = 0;
48  bw_ftf[i][j] = 0;
49  phi_ftf[i][j] = 0;
50  eta_ftf[i][j] = 0;
51  r_ftf[i][j] = 0;
52  z_ftf[i][j] = 0;
53  phi[i][j] = 0;
54  ext_ftf_flag[i][j] = 0;
55  }
56  }
57  stationList.clear();
58  };
59 
60  double MaxWidth(int i_station)
61  {
62  double max=0;
63  for(int j=0; j<N_LAYER; j++) {
64  if (rWidth[i_station][j] > max) max = rWidth[i_station][j];
65  }
66  return max;
67  };
68 
69  void setScales(double inner, double middle, double outer)
70  {
71  scales[0] = inner;
72  scales[1] = middle;
73  scales[2] = outer;
74  };
75 
76  public:
77  bool isEndcap;
78  int side;
80  int Special;
81  double phiMiddle;
82  double phiRoI;
83  double aw[N_STATION][N_SECTOR];
84  double bw[N_STATION][N_SECTOR];
87  double scales[3];
90 
91  // FTF varibles
101 
102  std::vector<Identifier> stationList;
103 
104  };
105  // --------------------------------------------------------------------------------
106  // --------------------------------------------------------------------------------
107 }
108 
109 #endif
TrigL2MuonSA::MuonRoad::MDT_sector_overlap
int MDT_sector_overlap
Definition: MuonRoad.h:89
TrigL2MuonSA::N_SECTOR
constexpr int N_SECTOR
Definition: MuonRoad.h:16
TrigL2MuonSA::MuonRoad::setScales
void setScales(double inner, double middle, double outer)
Definition: MuonRoad.h:69
TrigL2MuonSA::MuonRoad::z_ftf
double z_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:99
TrigL2MuonSA::MuonRoad::phiMiddle
double phiMiddle
Definition: MuonRoad.h:81
TrigL2MuonSA::N_LAYER
constexpr int N_LAYER
Definition: MuonRoad.h:17
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
TrigL2MuonSA::MuonRoad::MuonRoad
MuonRoad()
Definition: MuonRoad.h:22
TrigL2MuonSA::MuonRoad::bw
double bw[N_STATION][N_SECTOR]
Definition: MuonRoad.h:84
TrigL2MuonSA::MuonRoad::isEndcap
bool isEndcap
Definition: MuonRoad.h:74
TrigL2MuonSA::MuonRoad::MaxWidth
double MaxWidth(int i_station)
Definition: MuonRoad.h:60
TrigL2MuonSA::MuonRoad::phi_ftf
double phi_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:96
TrigL2MuonSA::MuonRoad::aw
double aw[N_STATION][N_SECTOR]
Definition: MuonRoad.h:83
TrigL2MuonSA::MuonRoad::side
int side
Definition: MuonRoad.h:78
TrigL2MuonSA::MuonRoad::phiRoI
double phiRoI
Definition: MuonRoad.h:82
TrigL2MuonSA::MuonRoad::stationList
std::vector< Identifier > stationList
Definition: MuonRoad.h:102
lumiFormat.i
int i
Definition: lumiFormat.py:85
TrigL2MuonSA::MuonRoad
Definition: MuonRoad.h:20
TrigL2MuonSA::MuonRoad::r_ftf
double r_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:98
TrigL2MuonSA::MuonRoad::MDT_sector_trigger
int MDT_sector_trigger
Definition: MuonRoad.h:88
TrigL2MuonSA::MuonRoad::ext_ftf_flag
int ext_ftf_flag[N_STATION][N_SECTOR]
Definition: MuonRoad.h:100
TrigL2MuonSA::MuonRoad::phi
double phi[N_STATION][N_SECTOR]
Definition: MuonRoad.h:85
TrigL2MuonSA::MuonRoad::bw_ftf
double bw_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:95
TrigL2MuonSA::MuonRoad::eta_ftf
double eta_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:97
TrigL2MuonSA::N_STATION
constexpr int N_STATION
Definition: MuonRoad.h:15
TrigL2MuonSA::MuonRoad::LargeSmall
int LargeSmall
Definition: MuonRoad.h:79
TrigL2MuonSA::MuonRoad::rWidth
double rWidth[N_STATION][N_LAYER]
Definition: MuonRoad.h:86
TrigL2MuonSA::MuonRoad::scales
double scales[3]
Definition: MuonRoad.h:87
TrigL2MuonSA::MuonRoad::extFtfMiddlePhi
double extFtfMiddlePhi
Definition: MuonRoad.h:93
TrigL2MuonSA::MuonRoad::aw_ftf
double aw_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:94
TrigL2MuonSA::MuonRoad::Special
int Special
Definition: MuonRoad.h:80
TrigL2MuonSA::MuonRoad::extFtfMiddleEta
double extFtfMiddleEta
Definition: MuonRoad.h:92
TrigL2MuonSA::MuonRoad::Clear
void Clear()
Definition: MuonRoad.h:25
TrigL2MuonSA
Definition: AlignmentBarrelLUT.h:13