ATLAS Offline Software
jTETOB.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
2 
3 #ifndef L1TopoEvent_jTETOB
4 #define L1TopoEvent_jTETOB
5 
6 #include <iostream>
7 
8 #include "L1TopoEvent/BaseTOB.h"
9 #include "L1TopoEvent/Heap.h"
10 
11 namespace TCS {
12 
13  class jTETOB : public BaseTOB {
14  public:
15 
16  // default constructor
17  jTETOB();
18 
19  // constructor with initial values
20  // input TOB type can be jTE, jTEC, jTEFWD, jTEFWDA, jTEFWDC
21  jTETOB(unsigned int sumEt, inputTOBType_t tobType = NONE);
22 
23  // copy constructor
24  jTETOB(const jTETOB & jte);
25 
26  // destructor
27  virtual ~jTETOB();
28 
29  // accessors
30  unsigned int sumEt() const { return m_sumEt; }
31 
32  double sumEtDouble() const { return m_sumEtDouble; }
33 
34  bool saturationFlag() const { return m_saturationFlag; }
35 
36  // setters
37  void setSumEt(unsigned int sumEt) { m_sumEt = sumEt; }
38 
40 
42 
43  // memory management
44  static jTETOB* createOnHeap(const jTETOB& jte);
45  static void clearHeap();
46  static const Heap<TCS::jTETOB>& heap() { return fg_heap; }
47 
48  virtual void print(std::ostream &o) const;
49 
51 
52  inputTOBType_t tobType() const { return m_tobType; }
53 
54  private:
55 
56  unsigned int m_sumEt {0};
57 
58  double m_sumEtDouble {0};
59 
60  bool m_saturationFlag {false};
61 
63 
64  static thread_local Heap<TCS::jTETOB> fg_heap;
65  };
66 }
67 
68 #endif
TCS::jTETOB::m_sumEtDouble
double m_sumEtDouble
Definition: jTETOB.h:58
Heap.h
TCS::jTETOB::m_tobType
inputTOBType_t m_tobType
Definition: jTETOB.h:62
TCS::jTETOB::~jTETOB
virtual ~jTETOB()
BaseTOB.h
TCS::jTETOB::print
virtual void print(std::ostream &o) const
Definition: jTETOB.cxx:35
TCS::jTETOB::tobType
inputTOBType_t tobType() const
Definition: jTETOB.h:52
TCS::jTETOB::createOnHeap
static jTETOB * createOnHeap(const jTETOB &jte)
Definition: jTETOB.cxx:26
TCS::jTETOB::heap
static const Heap< TCS::jTETOB > & heap()
Definition: jTETOB.h:46
TCS::Heap< TCS::jTETOB >
TCS::jTETOB::jTETOB
jTETOB()
Definition: jTETOB.cxx:8
TCS::jTETOB::sumEt
unsigned int sumEt() const
Definition: jTETOB.h:30
TCS::jTETOB::clearHeap
static void clearHeap()
Definition: jTETOB.cxx:31
TCS::jTETOB::setSumEt
void setSumEt(unsigned int sumEt)
Definition: jTETOB.h:37
TCS::BaseTOB
Definition: BaseTOB.h:12
TCS::jTETOB::fg_heap
static thread_local Heap< TCS::jTETOB > fg_heap
Definition: jTETOB.h:64
TCS::jTETOB::setSumEtDouble
void setSumEtDouble(double sumEt)
Definition: jTETOB.h:39
TCS::jTETOB::sumEtDouble
double sumEtDouble() const
Definition: jTETOB.h:32
TCS::jTETOB
Definition: jTETOB.h:13
TCS::jTETOB::m_sumEt
unsigned int m_sumEt
Definition: jTETOB.h:56
TCS::inputTOBType_t
inputTOBType_t
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Types.h:10
TCS::jTETOB::jTETOB
jTETOB(const jTETOB &jte)
TCS
Definition: Global/GlobalSimulation/src/IO/Decision.h:18
TCS::NONE
@ NONE
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Types.h:10
TCS::jTETOB::saturationFlag
bool saturationFlag() const
Definition: jTETOB.h:34
TCS::jTETOB::setTobType
void setTobType(inputTOBType_t tobType)
Definition: jTETOB.h:50
TCS::jTETOB::m_saturationFlag
bool m_saturationFlag
Definition: jTETOB.h:60
TCS::jTETOB::setSaturationFlag
void setSaturationFlag(bool saturationFlag)
Definition: jTETOB.h:41