ATLAS Offline Software
Global/GlobalSimulation/src/IO/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 
12 #ifndef GLOBALSIM_EEMTOB_H
13 #define GLOBALSIM_EEMTOB_H
14 
15 #include "IeEmTOB.h"
16 #include "CommonTOB.h"
17 #include "AthenaKernel/CLASS_DEF.h"
18 
19 #include <bitset>
20 
21 namespace GlobalSim::IOBitwise {
23  class eEmTOB : virtual public IeEmTOB, private CommonTOB {
24 
25  public:
34  eEmTOB(const xAOD::eFexEMRoI& eFexTOB);
45 
47  const std::bitset<s_RHad_width>&,
48  const std::bitset<s_REta_width>&,
49  const std::bitset<s_WsTot_width>&,
50  const std::bitset<s_Seed_width>&,
51  const std::bitset<s_UpNotDown_width>&,
52  const std::bitset<s_SeedIsMax_width>&
53  );
54 
56  virtual ~eEmTOB(){};
57 
59  virtual const std::bitset<s_RHad_width>& RHad_bits() const override;
61  virtual const std::bitset<s_WsTot_width>& WsTot_bits() const override;
63  virtual const std::bitset<s_REta_width>& REta_bits() const override;
65  virtual const std::bitset<s_Seed_width>& Seed_bits() const override;
67  virtual const std::bitset<s_UpNotDown_width>& UpNotDown_bit() const override;
69  virtual const std::bitset<s_SeedIsMax_width>& SeedIsMax_bit() const override;
70 
71  virtual std::string to_string() const override;
72 
73  private:
74 
76  std::bitset<s_RHad_width> m_RHad_bits;
78  std::bitset<s_WsTot_width> m_WsTot_bits;
80  std::bitset<s_REta_width> m_REta_bits;
82  std::bitset<s_Seed_width> m_Seed_bits;
84  std::bitset<s_UpNotDown_width> m_UpNotDown_bit;
86  std::bitset<s_SeedIsMax_width> m_SeedIsMax_bit;
87  };
88 } //End of namespace
89 
91 
92 #endif //GLOBALSIM_EEMTOB_H
GlobalSim::IOBitwise::eEmTOB::eEmTOB
eEmTOB(const GlobalSim::IOBitwise::ICommonTOB &, const std::bitset< s_RHad_width > &, const std::bitset< s_REta_width > &, const std::bitset< s_WsTot_width > &, const std::bitset< s_Seed_width > &, const std::bitset< s_UpNotDown_width > &, const std::bitset< s_SeedIsMax_width > &)
GlobalSim::IOBitwise::eEmTOB::Seed_bits
virtual const std::bitset< s_Seed_width > & Seed_bits() const override
Returns the eFexRoI seed eta position bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:58
GlobalSim::IOBitwise::eEmTOB::eEmTOB
eEmTOB(const xAOD::eFexEMRoI &eFexTOB)
Constructor taking an eFexROITOB to inisialise bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:10
GlobalSim::IOBitwise::eEmTOB
Class to hold eFexROI TOB bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:23
GlobalSim::IOBitwise::ICommonTOB
Class to hold common (eta/eta/phi) TOB bits.
Definition: ICommonTOB.h:27
GlobalSim::IOBitwise::eEmTOB::RHad_bits
virtual const std::bitset< s_RHad_width > & RHad_bits() const override
Returns the eFexRoI Rhad threshold bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:46
GlobalSim::IOBitwise::eEmTOB::SeedIsMax_bit
virtual const std::bitset< s_SeedIsMax_width > & SeedIsMax_bit() const override
Returns the eFexRoI seed is a local maxima bit.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:66
GlobalSim::IOBitwise::eEmTOB::m_WsTot_bits
std::bitset< s_WsTot_width > m_WsTot_bits
Property: Wstot threshold bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:78
xAOD::eFexEMRoI_v1
Class describing a LVL1 eFEX EM region of interest.
Definition: eFexEMRoI_v1.h:33
GlobalSim::IOBitwise::eEmTOB::m_Seed_bits
std::bitset< s_Seed_width > m_Seed_bits
Property: Seed eta position bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:82
GlobalSim::IOBitwise::eEmTOB::m_UpNotDown_bit
std::bitset< s_UpNotDown_width > m_UpNotDown_bit
Property: Up not down bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:84
GlobalSim::IOBitwise::CommonTOB
Class to hold common (eta/eta/phi) TOB bits.
Definition: CommonTOB.h:23
GlobalSim::IOBitwise::eEmTOB::~eEmTOB
virtual ~eEmTOB()
Destructor.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:56
GlobalSim::IOBitwise::eEmTOB::m_REta_bits
std::bitset< s_REta_width > m_REta_bits
Property: REta threshold bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:80
GlobalSim::IOBitwise::eEmTOB::UpNotDown_bit
virtual const std::bitset< s_UpNotDown_width > & UpNotDown_bit() const override
Returns the eFexRoI up not down bit.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:62
GlobalSim::IOBitwise
Definition: eEmMultAlgTool.h:19
CommonTOB.h
GlobalSim::IOBitwise::eEmTOB::m_SeedIsMax_bit
std::bitset< s_SeedIsMax_width > m_SeedIsMax_bit
Property: Seed is a maximum bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:86
GlobalSim::IOBitwise::eEmTOB::m_RHad_bits
std::bitset< s_RHad_width > m_RHad_bits
Property: RHad threshold bitset within the eEmTOB word.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:76
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
GlobalSim::IOBitwise::IeEmTOB
Class to hold eFexROI TOB bits.
Definition: IeEmTOB.h:29
GlobalSim::IOBitwise::eEmTOB::REta_bits
virtual const std::bitset< s_REta_width > & REta_bits() const override
Returns the eFexRoI REta threshold bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:54
GlobalSim::IOBitwise::eEmTOB::to_string
virtual std::string to_string() const override
print out contents to string
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:70
GlobalSim::IOBitwise::eEmTOB::WsTot_bits
virtual const std::bitset< s_WsTot_width > & WsTot_bits() const override
Returns the eFexRoI Wstot threshold bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:50
IeEmTOB.h
CLASS_DEF.h
macros to associate a CLID to a type