ATLAS Offline Software
Functions
MuonDQA/MuonDQAUtils/src/MuonChambersRange.cxx File Reference
#include "MuonDQAUtils/MuonChambersRange.h"
Include dependency graph for MuonDQA/MuonDQAUtils/src/MuonChambersRange.cxx:

Go to the source code of this file.

Functions

bool selectChambersRange (const std::string &f_hardware_name, const std::string &f_chamberName, int f_stationEta, int f_StationEta, int f_stationPhi, int f_StationPhi, const std::string &f_StationSize)
 

Function Documentation

◆ selectChambersRange()

bool selectChambersRange ( const std::string &  f_hardware_name,
const std::string &  f_chamberName,
int  f_stationEta,
int  f_StationEta,
int  f_stationPhi,
int  f_StationPhi,
const std::string &  f_StationSize 
)

Definition at line 7 of file MuonDQA/MuonDQAUtils/src/MuonChambersRange.cxx.

11 {
12  bool pass=false;
13  std::string size="XXX";
14  int f_StationPhi_check=f_StationPhi;
15  int f_StationEta_check=f_StationEta;
16  std::string::size_type small_chamber = f_hardware_name.find( 'S', 0 );
17  std::string::size_type feet_chamber = f_hardware_name.find( 'F', 0 );
18  std::string::size_type ground_chamber = f_hardware_name.find( 'G', 0 );
19  std::string::size_type large_chamber = f_hardware_name.find( 'L', 0 );
20  //BIM and BIR still not in!!!!
21 
22  if (small_chamber != std::string::npos) {
23  size="S";
24  if (f_StationPhi!=-100 && f_StationPhi!=1 && (f_StationPhi%2)==0) {f_StationPhi_check=(f_StationPhi/2);}
25  else if (f_StationPhi==-100) {f_StationPhi_check=-100;}
26  else {f_StationPhi_check=-99;}
27  }
28  if (feet_chamber != std::string::npos) {
29  size="S";
30  if (f_StationPhi!=-100 && f_StationPhi!=1 && (f_StationPhi%2)==0) {f_StationPhi_check=(f_StationPhi/2);}
31  else if (f_StationPhi==-100) {f_StationPhi_check=-100;}
32  else {f_StationPhi_check=-99;}
33  if (f_StationEta!=-100 && (f_StationEta%2)!=0) {f_StationEta_check=(f_StationEta/2)+1;}
34  else if (f_StationEta==-100) {f_StationEta_check=-100;}
35  else {f_StationEta_check=-99;}
36  }
37  if (ground_chamber != std::string::npos) {
38  size="S";
39  if (f_StationPhi!=-100 && f_StationPhi!=1 && (f_StationPhi%2)==0) {f_StationPhi_check=(f_StationPhi/2);}
40  else if (f_StationPhi==-100) {f_StationPhi_check=-100;}
41  else {f_StationPhi_check=-99;}
42  if (f_StationEta!=-100 && (f_StationEta%2)==0) {f_StationEta_check=(f_StationEta/2);}
43  else if (f_StationEta==-100) {f_StationEta_check=-100;}
44  else {f_StationEta_check=-99;}
45  }
46  if (large_chamber != std::string::npos) {
47  size="L";
48  if (f_StationPhi==1) {f_StationPhi_check=1;}
49  else if (f_StationPhi!=-100 && f_StationPhi!=1 && (f_StationPhi%2)!=0) {f_StationPhi_check=(f_StationPhi/2)+1;}
50  else if (f_StationPhi==-100) {f_StationPhi_check=-100;}
51  else {f_StationPhi_check=-99;}
52  }
53  if ((f_chamberName=="XXX" || f_chamberName==f_hardware_name)
54  && (f_StationEta_check==f_stationEta || f_StationEta_check==-100)
55  && (f_StationPhi_check==f_stationPhi || f_StationPhi_check==-100)
56  && (f_StationSize=="XXX" || f_StationSize==size) ){pass=true;}
57 
58  return pass;
59 }
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39