ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
Global
GlobalSimulation
src
Utilities
hexStrToBinStr.cxx
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
#include "
hexStrToBinStr.h
"
7
#include <string>
8
#include <stdexcept>
9
10
namespace
GlobalSim
{
11
12
std::string
hexStrToBinStr
(std::string s) {
13
if
(s[0] ==
'0'
and std::tolower(s[1]) ==
'x'
and s.size()>2) {
14
s.assign(std::begin(s)+2, std::end(s));
15
}
16
std::string alpha{
"abcdef"
};
17
std::string result;
18
for
(
auto
c : s){
19
c = std::tolower(c);
20
int
num;
21
if
(std::isdigit(c)) {
22
num = int(c) - int(
'0'
);
23
}
else
if
(alpha.find(c) != std::string::npos){
24
num = int(c) - int(
'a'
) + 10;
25
}
else
{
26
throw
std::out_of_range(
"not hex character"
);
27
}
28
29
short
mask{8};
30
for
(
int
j = 3; j != -1; --j) {
31
result += (mask & num) ?
'1'
:
'0'
;
32
mask = mask >> 1;
33
}
34
}
35
36
return
result;
37
}
38
}
hexStrToBinStr.h
GlobalSim
AlgTool to read in LArStripNeighborhoods, and run the BDT Algorithm.
Definition
Trigger/TrigT1/Global/GlobalSimulation/src/Egamma1BDT/Egamma1BDT/BDT.h:11
GlobalSim::hexStrToBinStr
std::string hexStrToBinStr(std::string s)
Definition
hexStrToBinStr.cxx:12
Generated on
for ATLAS Offline Software by
1.17.0