Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
hexStrToBinStr.h
Go to the documentation of this file.
1 
2 /*
3  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4 */
5 
6 #ifndef GLOBALSIM_HEXSTRTOBINSTR_H
7 #define GLOBALSIM_HEXSTRTOBINSTR_H
8 
9 #include <string>
10 
11 namespace GlobalSim {
12 
13  std::string hexStrToBinStr(std::string s) {
14  if (s[0] == '0' and std::tolower(s[1]) == 'x' and s.size()>2) {
15  s.assign(std::begin(s)+2, std::end(s));
16  }
17  std::string alpha{"abcdef"};
18  std::string result;
19  for (auto c : s){
20  c = std::tolower(c);
21  int num;
22  if (std::isdigit(c)) {
23  num = int(c) - int('0');
24  } else if (alpha.find(c) != std::string::npos){
25  num = int(c) - int('a') + 10;
26  } else {
27  throw std::out_of_range("not hex character");
28  }
29 
30  short mask{8};
31  for (int j = 3; j != -1; --j) {
32  result += (mask & num) ? '1' : '0';
33  mask = mask >> 1;
34  }
35  }
36 
37  return result;
38  }
39 }
40 #endif
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
add-xsec-uncert-quadrature-N.alpha
alpha
Definition: add-xsec-uncert-quadrature-N.py:110
get_generator_info.result
result
Definition: get_generator_info.py:21
GlobalSim::hexStrToBinStr
std::string hexStrToBinStr(std::string s)
Definition: hexStrToBinStr.h:13
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:460
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
GlobalSim
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Definition: dump.h:8
tolower
void tolower(std::string &s)
Definition: AthenaSummarySvc.cxx:111
python.LArMinBiasAlgConfig.int
int
Definition: LArMinBiasAlgConfig.py:59
trigbs_pickEvents.num
num
Definition: trigbs_pickEvents.py:76
python.compressB64.c
def c
Definition: compressB64.py:93