ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigEMCluster.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGEMCLUSTER_H
6#define TRIGEMCLUSTER_H
7
8
9/*******************************************************
10
11NAME: TrigEMCluster.h
12PACKAGE: Trigger/TrigEvent/TrigCaloEvent
13AUTHORS: Denis O. Damazio, Carlos Osuna, Xin Wu
14
15PURPOSE: Keep the important output variables
16 from the Calorimeter LVL2 egamma Trigger.
17 Optionally seed ID Trigger and EF.
18 Variables here should be corrected variables
19 not raw (in mother class).
20INHERITSFROM: TrigCaloCluster
21DATE: October 17th, 2005
22
23******************************************************/
24// includes section
26#include "AthLinks/ElementLink.h"
28
32
33public:
35 TrigEMCluster (float energy = 0.0, float eta = -10.0,
36 float phi = -10.0, long roi_word = 0);
40 TrigEMCluster ( const TrigEMCluster* trigemcluster ) ;
42 TrigEMCluster ( const TrigEMCluster& trigemcluster ) ;
43
44 TrigEMCluster& operator= ( const TrigEMCluster& trigemcluster ) = delete;
45
47 void print ( void ) const;
49 void print ( MsgStream& log ) const;
50
51 // set internal variables methods
53 inline void setEnergy ( float energy ) { m_Energy = energy; };
56 inline void setEt ( float et ) { m_Et = et; };
58 inline void setEnergy( CaloSampling::CaloSample sample, float
59 energy ) { m_EnergyS[sample] = energy; };
60
61 inline void setEta ( float eta ) { m_Eta = eta; };
63 inline void setPhi ( float phi ) { m_Phi = phi; };
65 inline void set_e237 ( float e237 ) { m_e237 = e237; };
67 inline void set_e277 ( float e277 ) { m_e277 = e277; };
70 inline void set_fracs1 ( float fracs1 ) { m_fracs1 = fracs1; };
72 inline void set_weta2 ( float weta2 ) { m_weta2 = weta2; };
74 inline void set_ehad1 ( float ehad1 ) { m_ehad1 = ehad1; };
76 inline void set_Eta1 ( float eta1 ) { m_Eta1 = eta1; };
78 inline void set_emaxs1 ( float emaxs1 ) { m_emaxs1 = emaxs1; };
80 inline void set_e2tsts1 ( float e2tsts1 ) { m_e2tsts1 = e2tsts1; };
82 inline void set_e233 ( float e233 ) { m_e233 = e233; };
84 inline void set_wstot ( float wstot ) { m_wstot = wstot; };
85
86 // get internal variables methods
88 inline float energy ( ) const { return m_Energy ; };
90 inline float e ( ) const { return m_Energy ; };
92 inline float et ( ) const { return m_Et ; };
94 inline float energy( CaloSampling::CaloSample sample ) const
95 { return m_EnergyS[sample]; };
96
97 inline float energyInSample( CaloSampling::CaloSample sample ) const
98 { return m_EnergyS[sample]; };
99
100 inline float eta ( ) const { return m_Eta ; };
102 inline float phi ( ) const { return m_Phi ; };
104 inline float e237 ( ) const { return m_e237 ; };
106 inline float e277 ( ) const { return m_e277 ; };
109 inline float fracs1 ( ) const { return m_fracs1 ; };
111 inline float weta2 ( ) const { return m_weta2 ; };
113 inline float ehad1 ( ) const { return m_ehad1 ; };
115 inline float Eta1 ( ) const { return m_Eta1 ; };
117 inline float emaxs1 ( ) const { return m_emaxs1 ; };
119 inline float e2tsts1 ( ) const { return m_e2tsts1 ; };
121 inline float e233 ( ) const { return m_e233 ; };
123 inline float wstot ( ) const { return m_wstot ; };
124
125 bool isValid() const;
126 void setRings(const RingerRingsContainer &ring_con, unsigned int ring_idx);
127 const RingerRings *rings() const;
130
131
132// internal variables must be private
133private:
135 float m_Energy;
137 float m_Et;
141 float m_Eta;
143 float m_Phi;
145 float m_e237;
147 float m_e277;
150 float m_fracs1;
152 float m_weta2;
154 float m_ehad1;
156 float m_Eta1;
158 float m_emaxs1;
162 float m_e233;
164 float m_wstot;
165
167
168 template <class T>
170};
171
172// stream output
173std::string str( const TrigEMCluster& d );
174MsgStream& operator<< ( MsgStream& m, const TrigEMCluster& d );
175
176//comparison
177bool operator== (const TrigEMCluster& a, const TrigEMCluster& b);
178inline bool operator!= ( const TrigEMCluster& a,
179 const TrigEMCluster& b ) { return !(a==b); }
180
181// CLIDSvc is already loaded in base class
182CLASS_DEF ( TrigEMCluster, 31349851, 1)
183#endif
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
static Double_t a
Athena::TPCnvVers::Old TrigEMCluster
bool operator==(const TrigEMCluster &a, const TrigEMCluster &b)
MsgStream & operator<<(MsgStream &m, const TrigEMCluster &d)
bool operator!=(const TrigEMCluster &a, const TrigEMCluster &b)
This class carries the generated Rings.
Definition RingerRings.h:18
TrigCaloCluster(float energy=0.0, float eta=-10.0, float phi=-10.0, long roi_word=0)
Constructor, please note the default values.
Class with calibrated variables for egamma clustering.
float ehad1() const
get hadronic Energy (first hadronic layer)
void set_Eta1(float eta1)
set Eta sampling 1 (strip layer)
float m_e237
Energy in a 3x7 cluster (no calibration) around hottest cell.
float m_e233
Energy in a 3x3 cluster (no calibration) around hottest cell.
float emaxs1() const
get maximum energy in sampling 1 (strip layer)
bool isValid() const
void set_e237(float e237)
set Energy in a 3x7 cluster (no calibration) around hottest cell
void set_weta2(float weta2)
set cluster width (based on a 3x5 cluster - 2nd layer)
const ElementLink< RingerRingsContainer > & ringsLink() const
float e2tsts1() const
get second maximum energy in sampling 1 (strip layer)
float e233() const
get Energy in a 3x3 cluster (no calibration) around hottest cell
const RingerRings * rings() const
void setEt(float et)
set Et (calibrated) - note that setting Energy this is not set by default
float m_e277
Energy in a 7x7 cluster (no calibration) around hottest cell.
TrigEMCluster(float energy=0.0, float eta=-10.0, float phi=-10.0, long roi_word=0)
Constructor, please note the default values.
float m_emaxs1
maximum energy in sampling 1 (strip layer)
float weta2() const
get cluster width (based on a 3x5 cluster - 2nd layer)
float energy(CaloSampling::CaloSample sample) const
get Energy (calibrated) per sampling layer
void set_wstot(float wstot)
set width in first layer
void set_e2tsts1(float e2tsts1)
set second maximum energy in sampling 1 (strip layer)
void set_ehad1(float ehad1)
set hadronic Energy (first hadronic layer)
float m_EnergyS[MAXSIZE]
Energy (calibrated) per sampling layer.
float m_e2tsts1
get second maximum energy in sampling 1 (strip layer)
void print(void) const
Prints out cluster variables to std::cout.
float energyInSample(CaloSampling::CaloSample sample) const
get Energy (calibrated) per sampling layer
float e277() const
get Energy in a 7x7 cluster (no calibration) around hottest cell
float m_ehad1
hadronic Energy (first hadronic layer)
void setRings(const RingerRingsContainer &ring_con, unsigned int ring_idx)
void set_emaxs1(float emaxs1)
set maximum energy in sampling 1 (strip layer)
float m_weta2
cluster width (based on a 3x5 cluster - 2nd layer)
~TrigEMCluster()
Destructor.
void set_e233(float e233)
set Energy in a 3x3 cluster (no calibration) around hottest cell
void setEnergy(float energy)
set Energy (calibrated)
float fracs1() const
get Energy in a 7 strips (around hottest strip) minus energy in 3 strips divided by energy in 3 strip...
float m_fracs1
Energy in a 7 strips (around hottest strip) minus energy in 3 strips divided by energy in 3 strips.
void set_e277(float e277)
set Energy in a 7x7 cluster (no calibration) around hottest cell
TrigEMCluster & operator=(const TrigEMCluster &trigemcluster)=delete
float Eta1() const
get Eta sampling 1 (strip layer)
void set_fracs1(float fracs1)
set Energy in a 7 strips (around hottest strip) minus energy in 3 strips divided by energy in 3 strip...
void setEnergy(CaloSampling::CaloSample sample, float energy)
set Energy (calibrated) per sampling layer
float e237() const
get Energy in a 3x7 cluster (no calibration) around hottest cell