ATLAS Offline Software
LArStrHelper.cxx
Go to the documentation of this file.
1 
2 /*
3  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
4 */
5 
7 
8 
9 
10 
11 std::string LArStrHelper::febNameString(bool isBarrel,int pos_neg ,int feedthrough,int slot) const {
12  std::string eb=isBarrel ? "Barrel" : "Endcap";
13  std::string ac=(pos_neg==1) ? "A" : "C";
14  return eb+ac+Form("ft%02d",feedthrough)+Form("slot%02d",slot);
15 }
16 
17 
19 std::string LArStrHelper::fixFEBname(TString nm) const {
20  TString res=nm;
21  res.ToLower();
22  res.ReplaceAll("barrela","BarrelA");
23  res.ReplaceAll("barrelc","BarrelC");
24  res.ReplaceAll("endcapa","EndcapA");
25  res.ReplaceAll("endcapc","EndcapC");
26  res.ReplaceAll("endcapa","EndcapA");
27  //check for single digit slots of feedthrough and try to correct them
28  int pos = res.Index("ft")+2;
29  TString num=res(pos,2);
30  if(!num.IsDec()) {
31  num=num(0,1);
32  if(num.IsDec()) res.Replace(pos,1,"0"+num,2);
33  }
34  pos = res.Index("slot")+4;
35  num = res(pos,2);
36  if(num.Length()<2) {
37  if(num.IsDec()) res.Replace(pos,1,"0"+num,2);
38  }
39  return (std::string)res;
40 }
LArStrHelper.h
LArStrHelper::fixFEBname
std::string fixFEBname(TString) const
fix custom strings to avoid errors due to uppr-lower cases
Definition: LArStrHelper.cxx:19
LArStrHelper::febNameString
std::string febNameString(bool, int, int, int) const
FEB names.
Definition: LArStrHelper.cxx:11
res
std::pair< std::vector< unsigned int >, bool > res
Definition: JetGroupProductTest.cxx:14
trigbs_pickEvents.num
num
Definition: trigbs_pickEvents.py:76
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
CalibCoolCompareRT.nm
nm
Definition: CalibCoolCompareRT.py:110
python.LArCondContChannels.isBarrel
isBarrel
Definition: LArCondContChannels.py:659