ATLAS Offline Software
Loading...
Searching...
No Matches
EnergyTopoData.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4/***************************************************************************
5 EnergyTopoData.h - description
6 -------------------
7 begin : Tuesday September 02 2014
8 email : Alan.Watson@CERN.CH
9 ***************************************************************************/
10
11
12#ifndef EnergyTopoData_H
13#define EnergyTopoData_H
14
15// STL includes
16#include <vector>
17
18// Gaudi kernel stuff.
19#include "GaudiKernel/DataObject.h"
20
21namespace LVL1 {
22
26 class EnergyTopoData : public DataObject {
27 public:
28
29 enum SumTypes { Normal = 0, Restricted = 1 };
30
32 EnergyTopoData(unsigned int word0, unsigned int word1, unsigned int word2);
33
34 EnergyTopoData() = default;
35
36
37
39 void addEx(unsigned int Ex, unsigned int overflow, int type);
40 void addEy(unsigned int Ey, unsigned int overflow, int type);
41 void addEt(unsigned int Et, unsigned int overflow, int type);
42
44 void addRoI(uint32_t roiWord);
45 void addRoIs(const std::vector<uint32_t>& roiWords);
46
48 unsigned int word0() const {return m_word0;}
50 unsigned int word1() const {return m_word1;}
52 unsigned int word2() const {return m_word2;}
53
65
66private:
67 unsigned int m_word0{};
68 unsigned int m_word1{};
69 unsigned int m_word2{};
70
71 int decodeTC(unsigned int word) const;
72
73};
74
75}//end of LVL1 namespace defn
76
78
79#endif
int Ex(SumTypes type=LVL1::EnergyTopoData::Normal) const
return Ex, Ey, ET values
int Ey(SumTypes type=LVL1::EnergyTopoData::Normal) const
Ey (signed)
int EyTC(SumTypes type=LVL1::EnergyTopoData::Normal) const
Ey (twos complement)
void addEt(unsigned int Et, unsigned int overflow, int type)
void addRoIs(const std::vector< uint32_t > &roiWords)
unsigned int EtOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
int ExTC(SumTypes type=LVL1::EnergyTopoData::Normal) const
return twos-complement Ex, Ey values
int decodeTC(unsigned int word) const
Decode 15-bit twos-complement values.
void addRoI(uint32_t roiWord)
add data using RoI word
unsigned int word2() const
return word 2
EnergyTopoData()=default
unsigned int word1() const
return word 1
int Et(SumTypes type=LVL1::EnergyTopoData::Normal) const
ET Sum.
EnergyTopoData(unsigned int word0, unsigned int word1, unsigned int word2)
constructor
unsigned int ExOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
return overflow flags
unsigned int EyOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
unsigned int word0() const
return word 0
void addEy(unsigned int Ey, unsigned int overflow, int type)
void addEx(unsigned int Ex, unsigned int overflow, int type)
add data.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...