ATLAS Offline Software
Loading...
Searching...
No Matches
jFexFwdElRoI_v1.h
Go to the documentation of this file.
1//create
2/*
3 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4*/
5#ifndef XAODTRIGGER_VERSIONS_JFEXFWDELROI_V1_H
6#define XAODTRIGGER_VERSIONS_JFEXFWDELROI_V1_H
7
8// System include(s):
9extern "C" {
10# include <stdint.h>
11# include <math.h>
12}
13#include <vector>
14#include <string>
15
16// xAOD include(s):
18namespace xAOD {
19
22
24
25 public:
28
30 void initialize(uint8_t jFexNumber,uint8_t fpgaNumber, uint32_t tobWord, char istob, int resolution, float_t eta, float_t phi );
31
33 uint32_t tobWord() const; //need 27/32 bits
35 uint16_t tobEt() const; //need 11 bits
36 uint8_t tobEMIso() const; //need 2 bits
37 uint8_t tobEMf1() const; //need 2 bits
38 uint8_t tobEMf2() const; //need 2 bits
39 uint8_t tobLocalEta() const; //need 5 bits
40 uint8_t tobLocalPhi() const; //need 4 bits
41 uint8_t tobSat() const; //need 1 bits
43 int globalEta() const;
44 uint globalPhi() const;
48 float eta() const;
49 float phi() const;
50 int tobEtScale() const;
51 char isTOB() const;
55 uint16_t EtEMiso() const;
56 uint16_t EtEM() const;
59
61 int menuEta() const;
62
64 void setIsTOB( char value);
65
70
72 unsigned int unpackEtTOB() const;
73 void setTobEt( uint16_t value);
74 unsigned int et() const;
75
77 unsigned int unpackEMIsoTOB() const;
78 void setTobEMIso( uint8_t value);
79
81 unsigned int unpackEMf1TOB() const;
82 void setTobEMf1( uint8_t value);
83 unsigned int unpackEMf2TOB() const;
84 void setTobEMf2( uint8_t value);
85
87 unsigned int unpackEtaIndex() const;
89
91 unsigned int unpackPhiIndex() const;
93
94 //Saturation flag
95 unsigned int unpackSaturationIndex() const;
96 void setTobSat(uint8_t value);
97
98 //Global coords
99 int getGlobalEta() const;
100 void setGlobalEta(int value);
101 void setEta(float value);
102
103 uint getGlobalPhi() const;
104 void setGlobalPhi(uint value);
105 void setPhi(float value);
106
107 //Et resolution
108 void setResolution(int value);
109
110 // additional variables (not available yet)
111 unsigned int getEtEMiso() const;
112 void setEtEMiso(uint16_t value);
113 unsigned int getEtEM() const;
114 void setEtEM(uint16_t value);
115 unsigned int getEtHad1() const;
116 void setEtHad1(uint16_t value);
117 unsigned int getEtHad2() const;
118 void setEtHad2(uint16_t value);
119
120
121
122 private:
123 //Constants used in converting to ATLAS units (see SR jets)
124 static const std::vector<int> s_FWD_EtaPosition;
125 static const std::vector<int> s_FCAL_EtaPosition;
126
127 // Data locations within word
128 static const int s_resBit = 27;
129 static const int s_emf2Bit = 25;
130 static const int s_emf1Bit = 23;
131 static const int s_isoBit = 21;
132 static const int s_etBit = 10;
133 static const int s_etaBit = 5;
134 static const int s_phiBit = 1;
135 static const int s_satBit = 0;
136
137 //Data masks
138 static const int s_resMask = 0x1f;
139 static const int s_emf2Mask = 0x3;
140 static const int s_emf1Mask = 0x3;
141 static const int s_isoMask = 0x3;
142 static const int s_etMask = 0x7ff;
143 static const int s_etaMask = 0x1f;
144 static const int s_phiMask = 0xf;
145 static const int s_satMask = 0x1;
146
147 }; // class jFexFwdElRoI_v1
148
149} // namespace xAOD
150// Declare the inheritance of the type:
151#include "xAODCore/BaseInfo.h"
153
154#endif //XAODTRIGGER_VERSIONS_JFEXFWDELROI_V1_H
Base class for elements of a container that can have aux data.
#define SG_BASE(D, B)
Declare that class D derives from class B.
unsigned int uint
Base class for elements of a container that can have aux data.
Definition AuxElement.h:483
Class describing properties of a LVL1 jFEX global Trigger Object (TOB) in the xAOD format.
void setGlobalPhi(uint value)
static const int s_etMask
unsigned int getEtEM() const
void setGlobalEta(int value)
void setResolution(int value)
void setTobEt(uint16_t value)
void setjFexNumber(uint8_t jFexNumber)
unsigned int getEtHad1() const
static const int s_satMask
uint16_t EtHad1() const
uint32_t tobWord() const
The "raw" 32-bit word describing the object candidate, 27 bit-word used at hardware level.
static const int s_emf2Mask
unsigned int unpackEtaIndex() const
Eta coordinates.
static const int s_satBit
void setTobLocalPhi(uint8_t value)
static const int s_emf1Bit
static const int s_isoMask
int globalEta() const
Calculated from Tob.
uint8_t tobLocalPhi() const
void setTobLocalEta(uint8_t value)
static const std::vector< int > s_FCAL_EtaPosition
uint8_t tobEMIso() const
void setEtHad2(uint16_t value)
unsigned int unpackEMf2TOB() const
static const std::vector< int > s_FWD_EtaPosition
void setEtEMiso(uint16_t value)
void setEtHad1(uint16_t value)
void setIsTOB(char value)
Set the isTOB variable (TOB or xTOB)
unsigned int et() const
Methods that require combining results or applying scales.
unsigned int getEtEMiso() const
uint16_t EtEM() const
uint8_t tobEMf2() const
uint16_t EtHad2() const
jFexFwdElRoI_v1()
Default constructor.
unsigned int unpackPhiIndex() const
Phi coordinates.
static const int s_isoBit
int menuEta() const
the eta index to use for looking up thresholds in the menu
uint16_t EtEMiso() const
Isolation and emfraction variables (not available yet) Bitwise: EtEMiso, EtEM, EtHad1,...
uint globalPhi() const
unsigned int unpackEMIsoTOB() const
TOB Isolation bits (decoded from TOB, stored for convenience)
void setTobEMIso(uint8_t value)
void setfpgaNumber(uint8_t fpgaNumber)
void setEta(float value)
static const int s_etaBit
unsigned int unpackEMf1TOB() const
TOB EM fraction bits (decoded from TOB, stored for convenience)
int tobEtScale() const
uint8_t tobSat() const
unsigned int getEtHad2() const
static const int s_phiMask
void setPhi(float value)
void setTobEMf1(uint8_t value)
void setTobSat(uint8_t value)
uint16_t tobEt() const
Decoded from Tob (for convenience)
unsigned int unpackEtTOB() const
TOB ET (decoded from TOB, stored for convenience)
uint8_t tobEMf1() const
static const int s_emf2Bit
void setEtEM(uint16_t value)
unsigned int unpackSaturationIndex() const
uint8_t fpgaNumber() const
static const int s_resMask
static const int s_phiBit
static const int s_resBit
static const int s_emf1Mask
int getGlobalEta() const
could add iso, emf1 and emf2 calculated from EtEMiso, EtEM, ETHad1 and EtHad2
void setTobWord(uint32_t tobWord)
Set the "raw" words describing the object candidate, need 27/32 bits.
static const int s_etaMask
void setTobEMf2(uint8_t value)
uint8_t tobLocalEta() const
uint8_t jFexNumber() const
Additional info (initialization)
static const int s_etBit
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setWord1 uint16_t
setEventNumber uint32_t
void initialize()