ATLAS Offline Software
gFexGlobalRoI_v1.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef XAODTRIGGER_VERSIONS_GFEXGLOBALROI_V1_H
8 #define XAODTRIGGER_VERSIONS_GFEXGLOBALROI_V1_H
9 
10 // System include(s):
11 extern "C" {
12 # include <stdint.h>
13 }
14 #include <vector>
15 #include <string>
16 
17 // xAOD include(s):
19 
20 namespace xAOD {
21 
24 
26 
27  public:
30 
32  // void initialize( uint32_t word, int tobEtScaleOne );
33  void initialize( uint32_t word, int tobEtScaleOne, int tobEtScaleTwo = 0 );
34 
36  enum ObjectType {
37  gNull = 0,
38  gScalar = 1,
39  gMET = 2,
40  gMHT = 3,
41  gMST = 4
42  };
43 
44 
46  uint32_t word() const;
49 
50  int tobEtScaleOne() const;
52  void setScaleOne( int value );
53 
54  int tobEtScaleTwo() const;
56  void setScaleTwo( int value );
57 
59  int16_t quantityOne() const;
62 
63  int16_t quantityTwo() const;
66 
67  float METquantityOne() const;
68  float METquantityTwo() const;
69  float SumEt() const;
70 
71 
72 
74  uint8_t statusOne() const;
76  uint8_t statusTwo() const;
78  unsigned int unpackStatusOne( ) const;
79  unsigned int unpackStatusTwo( ) const;
80  uint8_t saturated() const;
83  unsigned int unpackSaturated( ) const;
84 
85  int globalType () const;
86  void setGlobalType ( int type) ;
87  int unpackType( ) const;
89  bool isgScalar() const;
90  bool isgMET() const;
91  bool isgMHT() const;
92  bool isgMST() const;
93 
94 
95 
96 
97  private:
98 
99 
101  // static const float s_globaltobEtScale;
102 
103 
104  // Constants used in decoding TOB words
105 
106 
107  // Data locations within word
108  static const int s_saturBit = 31;
109  static const int s_tobIDBit = 26;
110  static const int s_statusOneBit = 25;
111  static const int s_statusTwoBit = 24;
112  static const int s_quantityOneBit = 12;
113  static const int s_quantityTwoBit = 0;
114 
115  // Data masks
116  static const int s_saturMask = 0x1;
117  static const int s_tobIDMask = 0x1f;
118  static const int s_statusOneMask = 0x1;
119  static const int s_statusTwoMask = 0x1;
120  static const int s_quantityOneMask = 0xfff;
121  static const int s_quantityTwoMask = 0xfff;
122 
123 
124  }; // class gFexGlobalRoI_v1
125 
126 } // namespace xAOD
127 
128 // Declare the inheritance of the type:
129 #include "xAODCore/BaseInfo.h"
131 
132 #endif // XAODTRIGGER_VERSIONS_GFEXGLOBALROI_V1_H
133 
xAOD::gFexGlobalRoI_v1::globalType
int globalType() const
retrieves the energy saturation status from the 32-bit word
xAOD::gFexGlobalRoI_v1::isgMET
bool isgMET() const
xAOD::gFexGlobalRoI_v1::s_statusTwoMask
static const int s_statusTwoMask
Definition: gFexGlobalRoI_v1.h:119
xAOD::gFexGlobalRoI_v1::unpackStatusTwo
unsigned int unpackStatusTwo() const
retrieves the Status info for Quantity 1 from the 32-bit word
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:557
xAOD::gFexGlobalRoI_v1::s_quantityOneBit
static const int s_quantityOneBit
Definition: gFexGlobalRoI_v1.h:112
xAOD::gFexGlobalRoI_v1::gScalar
@ gScalar
indicaes a null value (should be accompanied by a Status=0)
Definition: gFexGlobalRoI_v1.h:38
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:472
xAOD::gFexGlobalRoI_v1::s_quantityTwoMask
static const int s_quantityTwoMask
Definition: gFexGlobalRoI_v1.h:121
xAOD::gFexGlobalRoI_v1::setScaleOne
void setScaleOne(int value)
Set the "raw" 32-bit words describing the object candidate.
xAOD::gFexGlobalRoI_v1::unpackQuantityOne
int16_t unpackQuantityOne() const
setter for the above
xAOD::gFexGlobalRoI_v1
Class describing properties of a LVL1 gFEX global Trigger Object (TOB) in the xAOD format.
Definition: gFexGlobalRoI_v1.h:25
BaseInfo.h
xAOD::gFexGlobalRoI_v1::METquantityOne
float METquantityOne() const
retrieves the Et index from the 32-bit word
athena.value
value
Definition: athena.py:124
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::gFexGlobalRoI_v1::s_quantityTwoBit
static const int s_quantityTwoBit
Definition: gFexGlobalRoI_v1.h:113
xAOD::gFexGlobalRoI_v1::setScaleTwo
void setScaleTwo(int value)
Set the "raw" 32-bit words describing the object candidate.
xAOD::gFexGlobalRoI_v1::setSaturated
void setSaturated(uint8_t value)
xAOD::gFexGlobalRoI_v1::tobEtScaleOne
int tobEtScaleOne() const
SG_BASE
SG_BASE(xAOD::gFexGlobalRoI_v1, SG::AuxElement)
xAOD::gFexGlobalRoI_v1::setQuantityOne
void setQuantityOne(int16_t value)
getter for integer ET on TOB scale (3.2 GeV/count)
xAOD::int16_t
setScaleOne setStatusOne setSaturated int16_t
Definition: gFexGlobalRoI_v1.cxx:55
xAOD::gFexGlobalRoI_v1::saturated
uint8_t saturated() const
retrieves the Status info for Quantity 2 from the 32-bit word
xAOD::gFexGlobalRoI_v1::SumEt
float SumEt() const
floating point value (GeV, TOB scale)
xAOD::gFexGlobalRoI_v1::s_saturMask
static const int s_saturMask
Definition: gFexGlobalRoI_v1.h:116
xAOD::gFexGlobalRoI_v1::ObjectType
ObjectType
Object types.
Definition: gFexGlobalRoI_v1.h:36
xAOD::gFexGlobalRoI_v1::s_tobIDBit
static const int s_tobIDBit
Definition: gFexGlobalRoI_v1.h:109
xAOD::gFexGlobalRoI_v1::METquantityTwo
float METquantityTwo() const
floating point value (GeV, TOB scale)
xAOD::gFexGlobalRoI_v1::gMST
@ gMST
MET hard term components (MHTx, MHTy)
Definition: gFexGlobalRoI_v1.h:41
xAOD::gFexGlobalRoI_v1::s_statusTwoBit
static const int s_statusTwoBit
Definition: gFexGlobalRoI_v1.h:111
xAOD::gFexGlobalRoI_v1::isgMST
bool isgMST() const
xAOD::gFexGlobalRoI_v1::s_tobIDMask
static const int s_tobIDMask
Definition: gFexGlobalRoI_v1.h:117
xAOD::gFexGlobalRoI_v1::unpackQuantityTwo
int16_t unpackQuantityTwo() const
setter for the above
xAOD::gFexGlobalRoI_v1::isgMHT
bool isgMHT() const
xAOD::gFexGlobalRoI_v1::quantityOne
int16_t quantityOne() const
TOB ET (decoded from TOB, stored for convenience)
xAOD::gFexGlobalRoI_v1::unpackStatusOne
unsigned int unpackStatusOne() const
xAOD::gFexGlobalRoI_v1::s_statusOneMask
static const int s_statusOneMask
Definition: gFexGlobalRoI_v1.h:118
xAOD::gFexGlobalRoI_v1::tobEtScaleTwo
int tobEtScaleTwo() const
xAOD::gFexGlobalRoI_v1::s_statusOneBit
static const int s_statusOneBit
Definition: gFexGlobalRoI_v1.h:110
xAOD::gFexGlobalRoI_v1::setQuantityTwo
void setQuantityTwo(int16_t value)
getter for integer ET on TOB scale (3.2 GeV/count)
xAOD::gFexGlobalRoI_v1::gNull
@ gNull
Definition: gFexGlobalRoI_v1.h:37
xAOD::gFexGlobalRoI_v1::setWord
void setWord(uint32_t value)
Set the "raw" 32-bit words describing the object candidate.
xAOD::gFexGlobalRoI_v1::initialize
void initialize(uint32_t word, int tobEtScaleOne, int tobEtScaleTwo=0)
Initialise the object with its properties.
Definition: gFexGlobalRoI_v1.cxx:25
xAOD::gFexGlobalRoI_v1::setStatusOne
void setStatusOne(uint8_t value)
xAOD::gFexGlobalRoI_v1::gMHT
@ gMHT
MET components (METx, METy)
Definition: gFexGlobalRoI_v1.h:40
xAOD::gFexGlobalRoI_v1::statusTwo
uint8_t statusTwo() const
xAOD::gFexGlobalRoI_v1::word
uint32_t word() const
The "raw" 32-bit word describing the object candidate.
xAOD::gFexGlobalRoI_v1::s_quantityOneMask
static const int s_quantityOneMask
Definition: gFexGlobalRoI_v1.h:120
xAOD::gFexGlobalRoI_v1::unpackSaturated
unsigned int unpackSaturated() const
xAOD::gFexGlobalRoI_v1::quantityTwo
int16_t quantityTwo() const
retrieves the Et index from the 32-bit word
xAOD::gFexGlobalRoI_v1::s_saturBit
static const int s_saturBit
Constants used in converting to ATLAS units.
Definition: gFexGlobalRoI_v1.h:108
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
xAOD::gFexGlobalRoI_v1::statusOne
uint8_t statusOne() const
floating point value (GeV, TOB scale)
xAOD::gFexGlobalRoI_v1::isgScalar
bool isgScalar() const
Identification of object type with flags.
xAOD::gFexGlobalRoI_v1::setGlobalType
void setGlobalType(int type)
xAOD::gFexGlobalRoI_v1::unpackType
int unpackType() const
xAOD::gFexGlobalRoI_v1::gFexGlobalRoI_v1
gFexGlobalRoI_v1()
Default constructor.
Definition: gFexGlobalRoI_v1.cxx:20
AuxElement.h
Base class for elements of a container that can have aux data.
xAOD::gFexGlobalRoI_v1::gMET
@ gMET
scalar values (MET, SumET))
Definition: gFexGlobalRoI_v1.h:39
xAOD::gFexGlobalRoI_v1::setStatusTwo
void setStatusTwo(uint8_t value)