ATLAS Offline Software
Loading...
Searching...
No Matches
GlobalSim::IOBitwise::CommonTOB Class Reference

More...

#include <CommonTOB.h>

Inheritance diagram for GlobalSim::IOBitwise::CommonTOB:
Collaboration diagram for GlobalSim::IOBitwise::CommonTOB:

Public Member Functions

 CommonTOB (const xAOD::eFexEMRoI &eFexTOB)
 Constructor taking an eFexROITOB to initialise common bits.
 CommonTOB (const GlobalSim::IOBitwise::CommonTOB &CommonTOB)
 Constructor taking an existing CommonTOB to initialise common bits.
 CommonTOB (const std::bitset< s_et_width > &et_bits, const std::bitset< s_eta_width > &eta_bits, const std::bitset< s_phi_width > &phi_bits)
 Constructor taking raw bitsets to initialise common bits.
virtual ~CommonTOB ()
virtual std::bitset< s_et_widthet_bits () const
virtual std::bitset< s_eta_widtheta_bits () const
virtual std::bitset< s_phi_widthphi_bits () const
virtual std::string to_string () const

Static Public Attributes

static constexpr std::size_t s_et_width {13}
 Size of the eT bitset.
static constexpr std::size_t s_eta_width {10}
 Size of the eta bitset.
static constexpr std::size_t s_phi_width {9}
 Size of the phi bitset.
static constexpr std::size_t s_eFex_granularity {100}
static constexpr ulong max_et {(1UL << s_et_width)-1}

Private Attributes

std::bitset< s_et_widthm_et_bits
 Property: eT bitset within the common TOB word.
std::bitset< s_eta_widthm_eta_bits
 Property: eta bitset within the common TOB word.
std::bitset< s_phi_widthm_phi_bits
 Property: phi bitset within the common TOB word.

Detailed Description

Definition at line 22 of file CommonTOB.h.

Constructor & Destructor Documentation

◆ CommonTOB() [1/3]

GlobalSim::IOBitwise::CommonTOB::CommonTOB ( const xAOD::eFexEMRoI & eFexTOB)

Constructor taking an eFexROITOB to initialise common bits.

Parameters
[in]eFexTOBThe input eFexRoI TOB defining the common/eFex bits.

To be used to create and initialise a CommonTOB from an existing eFexTOB

Definition at line 10 of file CommonTOB.cxx.

10 :
11 m_et_bits(static_cast<ulong>(eFexTOB.et())/CommonTOB::s_eFex_granularity),
12 m_eta_bits(eFexTOB.iEtaTopo()),
13 m_phi_bits(eFexTOB.iPhiTopo()){
14 }
std::bitset< s_et_width > m_et_bits
Property: eT bitset within the common TOB word.
Definition CommonTOB.h:82
std::bitset< s_eta_width > m_eta_bits
Property: eta bitset within the common TOB word.
Definition CommonTOB.h:84
static constexpr std::size_t s_eFex_granularity
Definition CommonTOB.h:34
std::bitset< s_phi_width > m_phi_bits
Property: phi bitset within the common TOB word.
Definition CommonTOB.h:86
float et() const
TOB ET (decoded from TOB, stored for convenience)
int iEtaTopo() const
Getter for integer phi index (0-63)
int iPhiTopo() const
Return phi index in the range used by L1Topo (0->127)

◆ CommonTOB() [2/3]

GlobalSim::IOBitwise::CommonTOB::CommonTOB ( const GlobalSim::IOBitwise::CommonTOB & CommonTOB)

Constructor taking an existing CommonTOB to initialise common bits.

Parameters
[in]CommonTOBThe input Global CommonTOB defining the common bits.

To be used to create and initilaise a CommonTOB from an existing CommonTOB

Definition at line 16 of file CommonTOB.cxx.

16 :
17 m_et_bits(tob.et_bits()),
18 m_eta_bits(tob.eta_bits()),
19 m_phi_bits(tob.phi_bits()){}

◆ CommonTOB() [3/3]

GlobalSim::IOBitwise::CommonTOB::CommonTOB ( const std::bitset< s_et_width > & et_bits,
const std::bitset< s_eta_width > & eta_bits,
const std::bitset< s_phi_width > & phi_bits )

Constructor taking raw bitsets to initialise common bits.

Parameters
[in]et_bitsthe transverse energy bits
[in]eta_bitsthe eta bits
[in]phi_bitsthe phi bits

To be used to create and initialise a CommonTOB from individual 4-vector bitsets.

◆ ~CommonTOB()

virtual GlobalSim::IOBitwise::CommonTOB::~CommonTOB ( )
inlinevirtual

Definition at line 70 of file CommonTOB.h.

70{};

Member Function Documentation

◆ et_bits()

std::bitset< CommonTOB::s_et_width > GlobalSim::IOBitwise::CommonTOB::et_bits ( ) const
virtual

Definition at line 28 of file CommonTOB.cxx.

28 {
29 return m_et_bits;
30 }

◆ eta_bits()

std::bitset< CommonTOB::s_eta_width > GlobalSim::IOBitwise::CommonTOB::eta_bits ( ) const
virtual

Definition at line 32 of file CommonTOB.cxx.

32 {
33 return m_eta_bits;
34 }

◆ phi_bits()

std::bitset< CommonTOB::s_phi_width > GlobalSim::IOBitwise::CommonTOB::phi_bits ( ) const
virtual

Definition at line 36 of file CommonTOB.cxx.

36 {
37 return m_phi_bits;
38 }

◆ to_string()

std::string GlobalSim::IOBitwise::CommonTOB::to_string ( ) const
virtual

Reimplemented in GlobalSim::eEmTOB, GlobalSim::IOBitwise::eEmEg1BDTTOB, GlobalSim::IOBitwise::eEmEg1eRatioTOB, GlobalSim::IOBitwise::eEmNbhoodTOB, and GlobalSim::IOBitwise::eEmTOB.

Definition at line 40 of file CommonTOB.cxx.

40 {
41 std::stringstream ss;
42
43 auto et = et_bits();
44 auto eta = eta_bits();
45 auto phi = phi_bits();
46
47 ss << "Et: " << et << " (" << et.to_ulong() << ") "
48 << "Eta: " << eta << " (" << eta.to_ulong() << ") "
49 << "Phi: " << phi << " (" << phi.to_ulong() << ") ";
50
51 return ss.str();
52 }
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
float et(const xAOD::jFexSRJetRoI *j)
static Double_t ss
virtual std::bitset< s_et_width > et_bits() const
Definition CommonTOB.cxx:28
virtual std::bitset< s_eta_width > eta_bits() const
Definition CommonTOB.cxx:32
virtual std::bitset< s_phi_width > phi_bits() const
Definition CommonTOB.cxx:36

Member Data Documentation

◆ m_et_bits

std::bitset<s_et_width> GlobalSim::IOBitwise::CommonTOB::m_et_bits
private

Property: eT bitset within the common TOB word.

Definition at line 82 of file CommonTOB.h.

◆ m_eta_bits

std::bitset<s_eta_width> GlobalSim::IOBitwise::CommonTOB::m_eta_bits
private

Property: eta bitset within the common TOB word.

Definition at line 84 of file CommonTOB.h.

◆ m_phi_bits

std::bitset<s_phi_width> GlobalSim::IOBitwise::CommonTOB::m_phi_bits
private

Property: phi bitset within the common TOB word.

Definition at line 86 of file CommonTOB.h.

◆ max_et

ulong GlobalSim::IOBitwise::CommonTOB::max_et {(1UL << s_et_width)-1}
staticconstexpr

Definition at line 36 of file CommonTOB.h.

36{(1UL << s_et_width)-1};
static constexpr std::size_t s_et_width
Size of the eT bitset.
Definition CommonTOB.h:28

◆ s_eFex_granularity

std::size_t GlobalSim::IOBitwise::CommonTOB::s_eFex_granularity {100}
staticconstexpr

Definition at line 34 of file CommonTOB.h.

34{100}; // MeV

◆ s_et_width

std::size_t GlobalSim::IOBitwise::CommonTOB::s_et_width {13}
staticconstexpr

Size of the eT bitset.

Definition at line 28 of file CommonTOB.h.

28{13};

◆ s_eta_width

std::size_t GlobalSim::IOBitwise::CommonTOB::s_eta_width {10}
staticconstexpr

Size of the eta bitset.

Definition at line 30 of file CommonTOB.h.

30{10};

◆ s_phi_width

std::size_t GlobalSim::IOBitwise::CommonTOB::s_phi_width {9}
staticconstexpr

Size of the phi bitset.

Definition at line 32 of file CommonTOB.h.

32{9};

The documentation for this class was generated from the following files: