Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
GenericTob.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 #include "GenericTob.h"
7 #include "AlgoDataTypes.h"
8 
9 namespace GlobalSim {
10 
12 
13  {
14  const auto& in = in_tob->Et_bits();
15  auto sz = in.size();
16  for (auto i = 0U; i != sz; ++i) {m_Et_bits[i] = in[i];}
17  }
18 
19 
20  {
21  const auto& in = in_tob->Eta_bits();
22 
23  // vhdl etaL to_signed(unsigned(-100 + in, GenericEtaBitWidth)
24  m_Eta_bits = (-0x64 + bitSetToInt(in)+ 0xff + 0x01);
25  }
26 
27  {
28  const auto& in = in_tob->Phi_bits();
29  m_Phi_bits = 2*(bitSetToInt(in)+2);
30  }
31 
32  }
33 
34  std::bitset<32> GenericTob::as_bits() const {
35 
36  auto result = std::bitset<32>();
37 
38  std::size_t begin = 0;
39  std::size_t end = GenericEtBitWidth;;
40 
41 
42  for(std::size_t i = begin; i != end; ++i) {
43  result[i] = m_Et_bits[i];
44  }
45 
46  begin = end;
48 
49  for(std::size_t i = 0; i != GenericEtaBitWidth; ++i) {
51  }
52 
53  begin = end;
55 
56  for(std::size_t i = 0; i != GenericPhiBitWidth; ++i) {
58  }
59 
60 
61 
62  return result;
63 
64  }
65 
66 }
67 
68 std::ostream& operator << (std::ostream& os, const GlobalSim::GenericTob& tob) {
69 
70 
71  os << "GlobalSim::GenericTob\n"
72  << "Et: " << tob.Et_bits() << '\n'
73  << "Eta: " << tob.Eta_bits() << '\n'
74  << "Phi: " << tob.Phi_bits() << '\n'
75  << "Charge: " << tob.Charge_bits() << '\n'
76  << "overflow: " << tob.overflow_bits() << '\n'
77  << "bits: " << tob.as_bits() << '\n';
78  return os;
79 }
GlobalSim::GenericTob::GenericEtBitWidth
constexpr static std::size_t GenericEtBitWidth
Definition: GenericTob.h:22
GlobalSim::GenericTob::m_Phi_bits
std::bitset< GenericPhiBitWidth > m_Phi_bits
Definition: GenericTob.h:54
fitman.sz
sz
Definition: fitman.py:527
get_generator_info.result
result
Definition: get_generator_info.py:21
GlobalSim::GenericTob::m_Eta_bits
std::bitset< GenericEtaBitWidth > m_Eta_bits
Definition: GenericTob.h:53
AlgoDataTypes.h
GlobalSim::GenericTob::Et_bits
const std::bitset< 13 > & Et_bits() const
Definition: GenericTob.h:35
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
GlobalSim::bitSetToInt
int bitSetToInt(BITSET bitset)
Definition: AlgoDataTypes.h:19
GenericTob.h
GlobalSim::GenericTob::Phi_bits
const std::bitset< 7 > & Phi_bits() const
Definition: GenericTob.h:37
GlobalSim::GenericTob
Definition: GenericTob.h:18
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
GlobalSim::GenericTob::overflow_bits
const std::bitset< 1 > & overflow_bits() const
Definition: GenericTob.h:39
GlobalSim
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Definition: dump.h:8
lumiFormat.i
int i
Definition: lumiFormat.py:85
GlobalSim::GenericTob::Charge_bits
const std::bitset< 2 > & Charge_bits() const
Definition: GenericTob.h:38
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
operator<<
std::ostream & operator<<(std::ostream &os, const GlobalSim::GenericTob &tob)
Definition: GenericTob.cxx:68
GlobalSim::GenericTob::GenericTob
GenericTob()
Definition: GenericTob.h:32
GlobalSim::eEmTobPtr
std::shared_ptr< eEmTob > eEmTobPtr
Definition: eEmTob.cxx:91
GlobalSim::GenericTob::GenericEtaBitWidth
constexpr static std::size_t GenericEtaBitWidth
Definition: GenericTob.h:23
GlobalSim::GenericTob::as_bits
std::bitset< 32 > as_bits() const
Definition: GenericTob.cxx:34
GlobalSim::GenericTob::Eta_bits
const std::bitset< 9 > & Eta_bits() const
Definition: GenericTob.h:36
GlobalSim::GenericTob::m_Et_bits
std::bitset< GenericEtBitWidth > m_Et_bits
Definition: GenericTob.h:52
GlobalSim::GenericTob::GenericPhiBitWidth
constexpr static std::size_t GenericPhiBitWidth
Definition: GenericTob.h:28