Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Member Functions | Private Attributes | Friends | List of all members
GlobalSim::eEmTob Class Reference

#include <eEmTob.h>

Collaboration diagram for GlobalSim::eEmTob:

Public Member Functions

 eEmTob (const GepAlgoHypothesisPortsIn &ports_in)
 
std::bitset< 32 > as_bits () const
 
const std::bitset< AlgoConstants::eFexEtBitWidth > & Et_bits () const
 
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & REta_bits () const
 
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & RHad_bits () const
 
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & WsTot_bits () const
 
const std::bitset< AlgoConstants::eFexEtaBitWidth > & Eta_bits () const
 
const std::bitset< AlgoConstants::eFexPhiBitWidth > & Phi_bits () const
 
const std::bitset< 1 > & Overflow_bits () const
 

Private Attributes

std::bitset< AlgoConstants::eFexEtBitWidthm_Et
 
std::bitset< AlgoConstants::eFexDiscriminantBitWidthm_REta
 
std::bitset< AlgoConstants::eFexDiscriminantBitWidthm_RHad
 
std::bitset< AlgoConstants::eFexDiscriminantBitWidthm_WsTot
 
std::bitset< AlgoConstants::eFexEtaBitWidthm_Eta
 
std::bitset< AlgoConstants::eFexPhiBitWidthm_Phi
 
std::bitset< 1 > m_Overflow
 

Friends

std::ostream & operator<< (std::ostream &, const GlobalSim::eEmTob &)
 

Detailed Description

Definition at line 16 of file eEmTob.h.

Constructor & Destructor Documentation

◆ eEmTob()

GlobalSim::eEmTob::eEmTob ( const GepAlgoHypothesisPortsIn ports_in)

Definition at line 9 of file eEmTob.cxx.

9  {
10 
11  const auto& w_tob = ports_in.m_I_eEmTobs;
12 
13  std::size_t i;
14  std::size_t j;
15 
16  for (i = 0; i != AlgoConstants::eFexEtBitWidth; ++i) {
17  m_Et[i] = (*w_tob)[i];
18  }
19 
20  for (i = 16, j=0;
22  ++i, ++j) {
23  m_Phi[j] = (*w_tob)[i];
24  }
25 
26  for (i = 32, j=0;
28  ++i, ++j) {
29  m_Eta[j] = (*w_tob)[i];
30  }
31 
32 
33  for (i = 48, j=0;
35  ++i, ++j)
36  {
37  m_REta[j] = (*w_tob)[i];
38  }
39 
40 
43  ++i, ++j)
44  {
45  m_RHad[j] = (*w_tob)[i];
46  }
47 
48 
51  ++i, ++j)
52  {
53  m_WsTot[j] = (*w_tob)[i];
54  }
55 
56  m_Overflow[0] = (*w_tob)[63];
57 
58  }

Member Function Documentation

◆ as_bits()

std::bitset< 32 > GlobalSim::eEmTob::as_bits ( ) const

Definition at line 61 of file eEmTob.cxx.

61  {
62  auto result = std::bitset<32>();
63  std::size_t r_ptr{0};
64 
65  for (std::size_t s_ptr=0; s_ptr < m_Et.size(); ++s_ptr, ++r_ptr) {
66  if(m_Et.test(s_ptr)) {result.set(r_ptr);}
67  }
68 
69  for (std::size_t s_ptr=0; s_ptr < m_REta.size(); ++s_ptr, ++r_ptr) {
70  if(m_REta.test(s_ptr)) {result.set(r_ptr);}
71  }
72 
73  for (std::size_t s_ptr=0; s_ptr < m_RHad.size(); ++s_ptr, ++r_ptr) {
74  if(m_RHad.test(s_ptr)) {result.set(r_ptr);}
75  }
76 
77  for (std::size_t s_ptr=0; s_ptr < m_WsTot.size(); ++s_ptr, ++r_ptr) {
78  if(m_WsTot.test(s_ptr)) {result.set(r_ptr);}
79  }
80 
81  for (std::size_t s_ptr=0; s_ptr < m_Eta.size(); ++s_ptr, ++r_ptr) {
82  if(m_Eta.test(s_ptr)) {result.set(r_ptr);}
83  }
84 
85  for (std::size_t s_ptr=0; s_ptr < m_Phi.size(); ++s_ptr, ++r_ptr) {
86  if(m_Phi.test(s_ptr)) {result.set(r_ptr);}
87  }
88 
89 
90  return result;
91  }

◆ Et_bits()

const std::bitset< AlgoConstants::eFexEtBitWidth > & GlobalSim::eEmTob::Et_bits ( ) const
inline

Definition at line 62 of file eEmTob.h.

62 {return m_Et;}

◆ Eta_bits()

const std::bitset< AlgoConstants::eFexEtaBitWidth > & GlobalSim::eEmTob::Eta_bits ( ) const
inline

Definition at line 74 of file eEmTob.h.

74 {return m_Eta;}

◆ Overflow_bits()

const std::bitset< 1 > & GlobalSim::eEmTob::Overflow_bits ( ) const
inline

Definition at line 80 of file eEmTob.h.

80 {return m_Overflow;}

◆ Phi_bits()

const std::bitset< AlgoConstants::eFexPhiBitWidth > & GlobalSim::eEmTob::Phi_bits ( ) const
inline

Definition at line 77 of file eEmTob.h.

77 {return m_Phi;}

◆ REta_bits()

const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>& GlobalSim::eEmTob::REta_bits ( ) const

◆ RHad_bits()

const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & GlobalSim::eEmTob::RHad_bits ( ) const
inline

Definition at line 68 of file eEmTob.h.

68 {return m_RHad;}

◆ WsTot_bits()

const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & GlobalSim::eEmTob::WsTot_bits ( ) const
inline

Definition at line 71 of file eEmTob.h.

71 {return m_WsTot;}

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const GlobalSim::eEmTob tob 
)
friend

Definition at line 96 of file eEmTob.cxx.

96  {
97 
98  os << "GlobalSim::eEmTob\n"
99  << "Et: " << std::hex << tob.Et_bits().to_ulong() << '\n'
100  << "REta: " << std::hex << tob.REta_bits().to_ulong() << '\n'
101  << "RHad: " << std::hex<< tob.RHad_bits().to_ulong() << '\n'
102  << "WsTot: " << std::hex<< tob.WsTot_bits().to_ulong() << '\n'
103  << "Eta: " << std::hex<< tob.Eta_bits().to_ulong() << '\n'
104  << "Phi: " << std::hex<< tob.Phi_bits().to_ulong() << '\n'
105  << tob.as_bits() << ' ' << std::hex << tob.as_bits().to_ulong()
106  << '\n';
107  return os;
108  }

Member Data Documentation

◆ m_Et

std::bitset<AlgoConstants::eFexEtBitWidth> GlobalSim::eEmTob::m_Et
private

Definition at line 51 of file eEmTob.h.

◆ m_Eta

std::bitset<AlgoConstants::eFexEtaBitWidth> GlobalSim::eEmTob::m_Eta
private

Definition at line 55 of file eEmTob.h.

◆ m_Overflow

std::bitset<1> GlobalSim::eEmTob::m_Overflow
private

Definition at line 57 of file eEmTob.h.

◆ m_Phi

std::bitset<AlgoConstants::eFexPhiBitWidth> GlobalSim::eEmTob::m_Phi
private

Definition at line 56 of file eEmTob.h.

◆ m_REta

std::bitset<AlgoConstants::eFexDiscriminantBitWidth> GlobalSim::eEmTob::m_REta
private

Definition at line 52 of file eEmTob.h.

◆ m_RHad

std::bitset<AlgoConstants::eFexDiscriminantBitWidth> GlobalSim::eEmTob::m_RHad
private

Definition at line 53 of file eEmTob.h.

◆ m_WsTot

std::bitset<AlgoConstants::eFexDiscriminantBitWidth> GlobalSim::eEmTob::m_WsTot
private

Definition at line 54 of file eEmTob.h.


The documentation for this class was generated from the following files:
GlobalSim::eEmTob::m_Overflow
std::bitset< 1 > m_Overflow
Definition: eEmTob.h:57
get_generator_info.result
result
Definition: get_generator_info.py:21
GlobalSim::AlgoConstants::eFexEtBitWidth
constexpr static std::size_t eFexEtBitWidth
Definition: AlgoConstants.h:15
GlobalSim::eEmTob::m_Eta
std::bitset< AlgoConstants::eFexEtaBitWidth > m_Eta
Definition: eEmTob.h:55
GlobalSim::AlgoConstants::eFexDiscriminantBitWidth
constexpr static std::size_t eFexDiscriminantBitWidth
Definition: AlgoConstants.h:16
GlobalSim::eEmTob::m_Et
std::bitset< AlgoConstants::eFexEtBitWidth > m_Et
Definition: eEmTob.h:51
GlobalSim::eEmTob::m_WsTot
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_WsTot
Definition: eEmTob.h:54
GlobalSim::AlgoConstants::eFexPhiBitWidth
constexpr static std::size_t eFexPhiBitWidth
Definition: AlgoConstants.h:18
GlobalSim::eEmTob::m_Phi
std::bitset< AlgoConstants::eFexPhiBitWidth > m_Phi
Definition: eEmTob.h:56
GlobalSim::eEmTob::Phi_bits
const std::bitset< AlgoConstants::eFexPhiBitWidth > & Phi_bits() const
Definition: eEmTob.h:77
GlobalSim::AlgoConstants::eFexEtaBitWidth
constexpr static std::size_t eFexEtaBitWidth
Definition: AlgoConstants.h:17
lumiFormat.i
int i
Definition: lumiFormat.py:85
GlobalSim::eEmTob::as_bits
std::bitset< 32 > as_bits() const
Definition: eEmTob.cxx:61
GlobalSim::eEmTob::m_RHad
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_RHad
Definition: eEmTob.h:53
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
GlobalSim::eEmTob::RHad_bits
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & RHad_bits() const
Definition: eEmTob.h:68
GlobalSim::eEmTob::REta_bits
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & REta_bits() const
GlobalSim::eEmTob::Eta_bits
const std::bitset< AlgoConstants::eFexEtaBitWidth > & Eta_bits() const
Definition: eEmTob.h:74
GlobalSim::eEmTob::WsTot_bits
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & WsTot_bits() const
Definition: eEmTob.h:71
GlobalSim::eEmTob::m_REta
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_REta
Definition: eEmTob.h:52
GlobalSim::eEmTob::Et_bits
const std::bitset< AlgoConstants::eFexEtBitWidth > & Et_bits() const
Definition: eEmTob.h:62