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  virtual ~eEmTOB(){};
48 
50  virtual const std::bitset<s_RHad_width>& RHad_bits() const override;
52  virtual const std::bitset<s_WsTot_width>& WsTot_bits() const override;
54  virtual const std::bitset<s_REta_width>& REta_bits() const override;
56  virtual const std::bitset<s_Seed_width>& Seed_bits() const override;
58  virtual const std::bitset<s_UpNotDown_width>& UpNotDown_bit() const override;
60  virtual const std::bitset<s_SeedIsMax_width>& SeedIsMax_bit() const override;
61 
62  private:
63 
65  std::bitset<s_RHad_width> m_RHad_bits;
67  std::bitset<s_WsTot_width> m_WsTot_bits;
69  std::bitset<s_REta_width> m_REta_bits;
71  std::bitset<s_Seed_width> m_Seed_bits;
73  std::bitset<s_UpNotDown_width> m_UpNotDown_bit;
75  std::bitset<s_SeedIsMax_width> m_SeedIsMax_bit;
76  };
77 } //End of namespace
78 
80 
81 #endif //GLOBALSIM_EEMTOB_H
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:37
GlobalSim::IOBitwise::eEmTOB::eEmTOB
eEmTOB(const xAOD::eFexEMRoI &eFexTOB)
Constructor taking an eFexROITOB to inisialise bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.cxx:9
GlobalSim::IOBitwise::eEmTOB
Class to hold eFexROI TOB bits.
Definition: Global/GlobalSimulation/src/IO/eEmTOB.h:23
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:25
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:45
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:67
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:71
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:73
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:47
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:69
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:41
GlobalSim::IOBitwise
Definition: eEmMultAlgTool.h:17
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:75
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:65
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:27
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:33
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:29
IeEmTOB.h
CLASS_DEF.h
macros to associate a CLID to a type