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<N_STATION; i++) {
38  scales[i] = 1;
39  for(int j=0; j<N_LAYER; j++) {
40  rWidth[i][j] = 0;
41  }
42  for(int j=0; j<N_SECTOR; j++) {
43  aw[i][j] = 0;
44  bw[i][j] = 0;
45  aw_ftf[i][j] = 0;
46  bw_ftf[i][j] = 0;
47  phi_ftf[i][j] = 0;
48  eta_ftf[i][j] = 0;
49  r_ftf[i][j] = 0;
50  z_ftf[i][j] = 0;
51  phi[i][j] = 0;
52  ext_ftf_flag[i][j] = 0;
53  }
54  }
55  stationList.clear();
56  };
57 
58  double MaxWidth(int i_station)
59  {
60  double max=0;
61  for(int j=0; j<N_LAYER; j++) {
62  if (rWidth[i_station][j] > max) max = rWidth[i_station][j];
63  }
64  return max;
65  };
66 
67  void setScales(double inner, double middle, double outer)
68  {
69  scales[0] = inner;
70  scales[1] = middle;
71  scales[2] = outer;
72  };
73 
74  public:
75  bool isEndcap;
76  int side;
78  int Special;
79  double phiMiddle;
80  double phiRoI;
81  double aw[N_STATION][N_SECTOR];
82  double bw[N_STATION][N_SECTOR];
85  double scales[N_STATION];
88 
89  // FTF varibles
99 
100  std::vector<Identifier> stationList;
101 
102  };
103  // --------------------------------------------------------------------------------
104  // --------------------------------------------------------------------------------
105 }
106 
107 #endif
TrigL2MuonSA::MuonRoad::MDT_sector_overlap
int MDT_sector_overlap
Definition: MuonRoad.h:87
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:67
max
#define max(a, b)
Definition: cfImp.cxx:41
TrigL2MuonSA::MuonRoad::z_ftf
double z_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:97
TrigL2MuonSA::MuonRoad::phiMiddle
double phiMiddle
Definition: MuonRoad.h:79
TrigL2MuonSA::N_LAYER
constexpr int N_LAYER
Definition: MuonRoad.h:17
TrigL2MuonSA::MuonRoad::MuonRoad
MuonRoad()
Definition: MuonRoad.h:22
TrigL2MuonSA::MuonRoad::bw
double bw[N_STATION][N_SECTOR]
Definition: MuonRoad.h:82
TrigL2MuonSA::MuonRoad::isEndcap
bool isEndcap
Definition: MuonRoad.h:72
TrigL2MuonSA::MuonRoad::MaxWidth
double MaxWidth(int i_station)
Definition: MuonRoad.h:58
TrigL2MuonSA::MuonRoad::phi_ftf
double phi_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:94
TrigL2MuonSA::MuonRoad::aw
double aw[N_STATION][N_SECTOR]
Definition: MuonRoad.h:81
TrigL2MuonSA::MuonRoad::side
int side
Definition: MuonRoad.h:76
TrigL2MuonSA::MuonRoad::phiRoI
double phiRoI
Definition: MuonRoad.h:80
TrigL2MuonSA::MuonRoad::stationList
std::vector< Identifier > stationList
Definition: MuonRoad.h:100
lumiFormat.i
int i
Definition: lumiFormat.py:92
TrigL2MuonSA::MuonRoad
Definition: MuonRoad.h:20
TrigL2MuonSA::MuonRoad::r_ftf
double r_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:96
TrigL2MuonSA::MuonRoad::MDT_sector_trigger
int MDT_sector_trigger
Definition: MuonRoad.h:86
TrigL2MuonSA::MuonRoad::ext_ftf_flag
int ext_ftf_flag[N_STATION][N_SECTOR]
Definition: MuonRoad.h:98
TrigL2MuonSA::MuonRoad::phi
double phi[N_STATION][N_SECTOR]
Definition: MuonRoad.h:83
TrigL2MuonSA::MuonRoad::bw_ftf
double bw_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:93
TrigL2MuonSA::MuonRoad::eta_ftf
double eta_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:95
TrigL2MuonSA::N_STATION
constexpr int N_STATION
Definition: MuonRoad.h:15
TrigL2MuonSA::MuonRoad::LargeSmall
int LargeSmall
Definition: MuonRoad.h:77
TrigL2MuonSA::MuonRoad::rWidth
double rWidth[N_STATION][N_LAYER]
Definition: MuonRoad.h:84
TrigL2MuonSA::MuonRoad::extFtfMiddlePhi
double extFtfMiddlePhi
Definition: MuonRoad.h:91
TrigL2MuonSA::MuonRoad::scales
double scales[N_STATION]
Definition: MuonRoad.h:85
TrigL2MuonSA::MuonRoad::aw_ftf
double aw_ftf[N_STATION][N_SECTOR]
Definition: MuonRoad.h:92
TrigL2MuonSA::MuonRoad::Special
int Special
Definition: MuonRoad.h:78
TrigL2MuonSA::MuonRoad::extFtfMiddleEta
double extFtfMiddleEta
Definition: MuonRoad.h:90
TrigL2MuonSA::MuonRoad::Clear
void Clear()
Definition: MuonRoad.h:25
TrigL2MuonSA
Definition: AlignmentBarrelLUT.h:13