ATLAS Offline Software
SCT_CablingXmlTags.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef SCT_CablingXmlTags_H
6 #define SCT_CablingXmlTags_H
7 
16 #include "GaudiKernel/time_r.h" // localtime_r
17 
18 #include <ctime> // std::time_t, std::tm
19 #include <iomanip> // put_time
20 #include <iostream>
21 #include <string>
22 #include <sstream>
23 
24 namespace SCT_Cabling{
25  const std::string XmlHeader("<?xml version=\"1.0\"?>");
26  const std::string OpenRootTag("<SCT_textFile>");
27  const std::string OpenRodMappingTag("<textList name=\"SCT Rod-Rob mapping\" headings=\"RodId RobId\">");
28  const std::string CloseRodMappingTag("</textList>");
29  const std::string OpenModuleMappingTag("<textList name=\"SCT cabling mapping\" headings=\"Rod Fibre Bec LayerDisk Eta Phi Side RobId Sn\">");
30  const std::string CloseModuleMappingTag("</textList>");
31  const std::string CloseRootTag("</SCT_textFile>");
32 
33  std::string intToHex(const unsigned int i){
34  std::stringstream stream;
35  stream << "0x" << std::setfill ('0') << std::setw(6) << std::hex << i;
36  return stream.str();
37  }
38 
39  std::string formatRodOutput(const unsigned int rodNum){
40  const std::string rodString(SCT_Cabling::intToHex(rodNum));
41  const std::string sep(" ");
42  return rodString+sep+rodString;
43  }
44 
45  std::string formatModuleOutput(const unsigned int rod, const unsigned int fibre,
46  const int bec,const int layerDisk, const int eta, const int phi, const int side, const int robId,
47  const std::string & fullsn){
48  const std::string sep(" ");
49  using std::to_string;
50  std::string result= to_string(rod)+sep+to_string(fibre)+sep+to_string(bec)+sep+to_string(layerDisk)+sep;
52  return result;
53  }
54 
55  std::string dateTime(){
56  std::stringstream ss;
57  std::time_t t = std::time(nullptr);
58  std::tm lt;
59  ss << std::put_time(localtime_r(&t, &lt), "%Y-%m-%d %X");
60  return ss.str();
61  }
62  std::string makeCablingFileName(){
63  const std::string prefix("SCT_");
64  const std::string suffix("Cabling_svc.dat");
65  const std::string meat(SCT_Cabling::dateTime());
66  return prefix+meat+suffix;
67  }
68 }
69 
70 #endif // SCT_CablingXmlTags_H
get_generator_info.result
result
Definition: get_generator_info.py:21
hotSpotInTAG.suffix
string suffix
Definition: hotSpotInTAG.py:186
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
SCT_Cabling::OpenRodMappingTag
const std::string OpenRodMappingTag("<textList name=\"SCT Rod-Rob mapping\" headings=\"RodId RobId\">")
ParticleGun_SamplingFraction.bec
int bec
Definition: ParticleGun_SamplingFraction.py:89
SCT_Cabling::OpenRootTag
const std::string OpenRootTag("<SCT_textFile>")
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
SCT_Cabling::CloseRootTag
const std::string CloseRootTag("</SCT_textFile>")
SCT_Cabling::makeCablingFileName
std::string makeCablingFileName()
Definition: SCT_CablingXmlTags.h:62
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SCT_Cabling
Definition: SCT_CablingUtilities.cxx:17
SCT_Cabling::intToHex
std::string intToHex(const unsigned int i)
Definition: SCT_CablingXmlTags.h:33
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
SCT_Cabling::XmlHeader
const std::string XmlHeader("<?xml version=\"1.0\"?>")
TRT::Hit::side
@ side
Definition: HitInfo.h:83
SCT_Cabling::formatModuleOutput
std::string formatModuleOutput(const unsigned int rod, const unsigned int fibre, const int bec, const int layerDisk, const int eta, const int phi, const int side, const int robId, const std::string &fullsn)
Definition: SCT_CablingXmlTags.h:45
lumiFormat.i
int i
Definition: lumiFormat.py:92
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
RunTileMonitoring.rod
rod
Definition: RunTileMonitoring.py:134
SCT_Cabling::dateTime
std::string dateTime()
Definition: SCT_CablingXmlTags.h:55
grepfile.sep
sep
Definition: grepfile.py:38
SCT_Cabling::OpenModuleMappingTag
const std::string OpenModuleMappingTag("<textList name=\"SCT cabling mapping\" headings=\"Rod Fibre Bec LayerDisk Eta Phi Side RobId Sn\">")
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
SCT_Cabling::CloseRodMappingTag
const std::string CloseRodMappingTag("</textList>")
SCT_Cabling::formatRodOutput
std::string formatRodOutput(const unsigned int rodNum)
Definition: SCT_CablingXmlTags.h:39
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
SCT_Cabling::CloseModuleMappingTag
const std::string CloseModuleMappingTag("</textList>")