ATLAS Offline Software
gJetTOB.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
2 
3 #ifndef GJETTOB_H
4 #define GJETTOB_H
5 
6 #include <iostream>
7 
8 #include "L1TopoEvent/BaseTOB.h"
9 #include "L1TopoEvent/Heap.h"
10 
11 
12 // TODO implement sizecheck lile in ClusterTOB
13 
14 namespace TCS {
15 
16  class GenericTOB;
17 
18  class gJetTOB : public BaseTOB {
19  public:
20 
21  // default constructor
22  gJetTOB(uint32_t roiWord = 0, const std::string& tobName = "gJetTOB");
23 
24  // copy constructor
25  gJetTOB(const gJetTOB & jet);
26 
27  // constructor with initial values
28  gJetTOB(unsigned int Et, int eta, unsigned phi, uint32_t roiWord = 0, const std::string& tobName = "gJetTOB" );
29 
30  // destructor
31  virtual ~gJetTOB();
32 
33  // accessors
34  unsigned int energy() const { return m_Et; }
35  unsigned int Et() const { return m_Et; }
36 
37  // accessors
38  int eta() const { return m_eta; }
39  unsigned phi() const { return m_phi; }
40 
41  double EtDouble() const { return m_EtDouble; }
42  double etaDouble() const { return m_etaDouble; }
43  double phiDouble() const { return m_phiDouble; }
44 
45  // setters
46  void setEt(int energy) { m_Et = energy; }
47  void setEta(int eta) { m_eta = eta; }
48  void setPhi(int phi) { m_phi = phi; }
49 
50  void setEtDouble(double et) { m_EtDouble = et; }
51  void setEtaDouble(double eta) { m_etaDouble = eta; }
52  void setPhiDouble(double phi) { m_phiDouble = phi; }
53 
54  inputTOBType_t tobType() const { return JET; }
55 
56  static gJetTOB* createOnHeap(const gJetTOB& jet);
57  static void clearHeap();
58 
59  static const Heap<TCS::gJetTOB>& heap() { return fg_heap; }
60 
61  private:
62 
63  static const unsigned int g_nBitsEt;
64  static const unsigned int g_nBitsIsolation;
65  static const unsigned int g_nBitsEta;
66  static const unsigned int g_nBitsPhi;
67 
68  unsigned int m_Et { 0 };
69  int m_eta { 0 };
70  unsigned m_phi { 0 };
71 
72  double m_EtDouble { 0 };
73  double m_etaDouble { 0 };
74  double m_phiDouble { 0 };
75 
76  virtual void print(std::ostream &o) const;
77 
78  static thread_local Heap<TCS::gJetTOB> fg_heap;
79  };
80 
81 }
82 
83 #endif
TCS::gJetTOB::phi
unsigned phi() const
Definition: gJetTOB.h:39
TCS::gJetTOB::eta
int eta() const
Definition: gJetTOB.h:38
TCS::BaseTOB::tobName
const std::string & tobName() const
Definition: BaseTOB.h:23
et
Extra patterns decribing particle interation process.
Heap.h
TCS::gJetTOB::setPhi
void setPhi(int phi)
Definition: gJetTOB.h:48
TCS::gJetTOB::m_phi
unsigned m_phi
Definition: gJetTOB.h:70
TCS::gJetTOB::setPhiDouble
void setPhiDouble(double phi)
Definition: gJetTOB.h:52
TCS::gJetTOB::etaDouble
double etaDouble() const
Definition: gJetTOB.h:42
xAOD::et
et
Definition: TrigEMCluster_v1.cxx:25
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
BaseTOB.h
TCS::gJetTOB::print
virtual void print(std::ostream &o) const
Definition: gJetTOB.cxx:40
TCS::BaseTOB::roiWord
uint32_t roiWord() const
Definition: BaseTOB.h:21
TCS::gJetTOB::m_EtDouble
double m_EtDouble
Definition: gJetTOB.h:72
TCS::gJetTOB::gJetTOB
gJetTOB(uint32_t roiWord=0, const std::string &tobName="gJetTOB")
Definition: gJetTOB.cxx:9
TCS::gJetTOB::Et
unsigned int Et() const
Definition: gJetTOB.h:35
TCS::Heap< TCS::gJetTOB >
TCS::gJetTOB::setEtDouble
void setEtDouble(double et)
Definition: gJetTOB.h:50
TCS::JET
@ JET
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Types.h:12
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
TCS::gJetTOB::energy
unsigned int energy() const
Definition: gJetTOB.h:34
TCS::gJetTOB::clearHeap
static void clearHeap()
Definition: gJetTOB.cxx:35
TCS::BaseTOB
Definition: BaseTOB.h:12
TCS::gJetTOB::tobType
inputTOBType_t tobType() const
Definition: gJetTOB.h:54
TCS::gJetTOB::setEtaDouble
void setEtaDouble(double eta)
Definition: gJetTOB.h:51
TCS::gJetTOB::g_nBitsPhi
static const unsigned int g_nBitsPhi
Definition: gJetTOB.h:66
TCS::gJetTOB::m_Et
unsigned int m_Et
Definition: gJetTOB.h:68
TCS::gJetTOB::g_nBitsEt
static const unsigned int g_nBitsEt
Definition: gJetTOB.h:63
TCS::gJetTOB::m_eta
int m_eta
Definition: gJetTOB.h:69
TCS::gJetTOB::m_phiDouble
double m_phiDouble
Definition: gJetTOB.h:74
TCS::gJetTOB::createOnHeap
static gJetTOB * createOnHeap(const gJetTOB &jet)
Definition: gJetTOB.cxx:30
TCS::gJetTOB::g_nBitsEta
static const unsigned int g_nBitsEta
Definition: gJetTOB.h:65
TCS::inputTOBType_t
inputTOBType_t
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Types.h:10
TCS::gJetTOB
Definition: gJetTOB.h:18
TCS::gJetTOB::EtDouble
double EtDouble() const
Definition: gJetTOB.h:41
TCS::gJetTOB::~gJetTOB
virtual ~gJetTOB()
TCS::gJetTOB::m_etaDouble
double m_etaDouble
Definition: gJetTOB.h:73
TCS
Definition: Global/GlobalSimulation/src/IO/Decision.h:18
TCS::gJetTOB::setEta
void setEta(int eta)
Definition: gJetTOB.h:47
TCS::gJetTOB::gJetTOB
gJetTOB(const gJetTOB &jet)
TCS::gJetTOB::g_nBitsIsolation
static const unsigned int g_nBitsIsolation
Definition: gJetTOB.h:64
TCS::gJetTOB::setEt
void setEt(int energy)
Definition: gJetTOB.h:46
TCS::gJetTOB::fg_heap
static thread_local Heap< TCS::gJetTOB > fg_heap
Definition: gJetTOB.h:78
TCS::gJetTOB::heap
static const Heap< TCS::gJetTOB > & heap()
Definition: gJetTOB.h:59
TCS::gJetTOB::phiDouble
double phiDouble() const
Definition: gJetTOB.h:43