Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
eEmTob.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GLOBALSIM_EEMTOB_H
6 #define GLOBALSIM_EEMTOB_H
7 
8 #include "AlgoConstants.h"
10 #include <bitset>
11 #include <ostream>
12 #include <memory>
13 
14 namespace GlobalSim {
15 
16  class eEmTob {
17 
18  public:
19  friend std::ostream& operator << (std::ostream&, const GlobalSim::eEmTob&);
20 
21  eEmTob(const GepAlgoHypothesisPortsIn& ports_in);
22 
23  std::bitset<32> asBits() const;
24 
25 
26  const std::bitset<AlgoConstants::eFexEtBitWidth>&
27  Et_bits() const;
28 
29  const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
30  REta_bits() const;
31 
32  const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
33  RHad_bits() const;
34 
35  const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
36  WsTot_bits() const;
37 
38  const std::bitset<AlgoConstants::eFexEtaBitWidth>&
39  Eta_bits() const;
40 
41  const std::bitset<AlgoConstants::eFexPhiBitWidth>&
42  Phi_bits() const;
43 
44  const std::bitset<1>&
45  Overflow_bits () const;
46 
47  private:
48  // vhdl type: record
49 
50  std::bitset<AlgoConstants::eFexEtBitWidth> m_Et;
51  std::bitset<AlgoConstants::eFexDiscriminantBitWidth> m_REta;
52  std::bitset<AlgoConstants::eFexDiscriminantBitWidth> m_RHad;
53  std::bitset<AlgoConstants::eFexDiscriminantBitWidth> m_WsTot;
54  std::bitset<AlgoConstants::eFexEtaBitWidth> m_Eta;
55  std::bitset<AlgoConstants::eFexPhiBitWidth> m_Phi;
56  std::bitset<1> m_Overflow;
57  };
58 
59 
60  inline const std::bitset<AlgoConstants::eFexEtBitWidth>&
61  eEmTob::Et_bits() const {return m_Et;}
62 
63  inline const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
64  eEmTob::eEmTob::REta_bits() const {return m_REta;}
65 
66  inline const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
67  eEmTob::RHad_bits() const {return m_RHad;}
68 
69  inline const std::bitset<AlgoConstants::eFexDiscriminantBitWidth>&
70  eEmTob::WsTot_bits() const {return m_WsTot;}
71 
72  inline const std::bitset<AlgoConstants::eFexEtaBitWidth>&
73  eEmTob::Eta_bits() const {return m_Eta;}
74 
75  inline const std::bitset<AlgoConstants::eFexPhiBitWidth>&
76  eEmTob::Phi_bits() const {return m_Phi;}
77 
78  inline const std::bitset<1>&
79  eEmTob::Overflow_bits () const {return m_Overflow;}
80 
81  using eEmTobPtr = std::shared_ptr<eEmTob>;
82 }
83 
84 #endif
GlobalSim::eEmTob::m_Overflow
std::bitset< 1 > m_Overflow
Definition: eEmTob.h:56
GlobalSim::eEmTob::m_Eta
std::bitset< AlgoConstants::eFexEtaBitWidth > m_Eta
Definition: eEmTob.h:54
GlobalSim::eEmTob::eEmTob
eEmTob(const GepAlgoHypothesisPortsIn &ports_in)
Definition: eEmTob.cxx:9
GlobalSim::eEmTob::Overflow_bits
const std::bitset< 1 > & Overflow_bits() const
Definition: eEmTob.h:79
GlobalSim::eEmTob::m_Et
std::bitset< AlgoConstants::eFexEtBitWidth > m_Et
Definition: eEmTob.h:50
GlobalSim::eEmTob::m_WsTot
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_WsTot
Definition: eEmTob.h:53
GlobalSim::eEmTob::m_Phi
std::bitset< AlgoConstants::eFexPhiBitWidth > m_Phi
Definition: eEmTob.h:55
GlobalSim::eEmTob::Phi_bits
const std::bitset< AlgoConstants::eFexPhiBitWidth > & Phi_bits() const
Definition: eEmTob.h:76
GlobalSim::eEmTob::operator<<
friend std::ostream & operator<<(std::ostream &, const GlobalSim::eEmTob &)
Definition: eEmTob.cxx:94
GlobalSim
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Definition: dump.h:8
GlobalSim::GepAlgoHypothesisPortsIn
Definition: GepAlgoHypothesisPortsIn.h:18
GepAlgoHypothesisPortsIn.h
GlobalSim::eEmTob::m_RHad
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_RHad
Definition: eEmTob.h:52
AlgoConstants.h
GlobalSim::eEmTob::RHad_bits
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & RHad_bits() const
Definition: eEmTob.h:67
GlobalSim::eEmTobPtr
std::shared_ptr< eEmTob > eEmTobPtr
Definition: eEmTob.cxx:91
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:73
GlobalSim::eEmTob::asBits
std::bitset< 32 > asBits() const
Definition: eEmTob.cxx:61
GlobalSim::eEmTob::WsTot_bits
const std::bitset< AlgoConstants::eFexDiscriminantBitWidth > & WsTot_bits() const
Definition: eEmTob.h:70
GlobalSim::eEmTob::m_REta
std::bitset< AlgoConstants::eFexDiscriminantBitWidth > m_REta
Definition: eEmTob.h:51
GlobalSim::eEmTob
Definition: eEmTob.h:16
GlobalSim::eEmTob::Et_bits
const std::bitset< AlgoConstants::eFexEtBitWidth > & Et_bits() const
Definition: eEmTob.h:61