ATLAS Offline Software
JEMJetAlgorithm.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 /***************************************************************************
5  JEMJetAlgorithm.h - description
6  -------------------
7  begin : Thurs Mar 13 2014
8  email : Alan.Watson@cern.ch
9  ***************************************************************************/
10 
11 
12 #ifndef JETALGORITHM_H
13 #define JETALGORITHM_H
14 
15 #include <map>
16 #include <vector>
17 
18 #include "GaudiKernel/ServiceHandle.h"
19 
22 
23 #include "TrigConfData/L1Menu.h"
24 
28 namespace LVL1 {
29 
40 class JEMJetAlgorithm {
41 public:
42 
43  JEMJetAlgorithm( double eta, double phi, const std::map<int, JetInput *>* jiContainer,
44  const TrigConf::L1Menu * l1menu);
45 
47 
49  double eta();
50  double phi();
51  int Core();
52  int ET4x4();
53  int ET6x6();
54  int ET8x8();
55  int ETLarge();
56  int ETSmall();
57  bool isEtMax();
58  bool isRoI();
59 
64 
65 private: //atribs
66  double m_refEta;
67  double m_refPhi;
68  const TrigConf::L1Menu * m_l1menu{nullptr};
69 
71  double m_eta;
72  double m_phi;
73  int m_ET4x4;
74  int m_ET6x6;
75  int m_ET8x8;
76  int m_ETLarge;
77  int m_ETSmall;
78  bool m_EtMax;
79 
80  //bool m_debug;
81 
83  static const int m_satLarge;
84  static const int m_satSmall;
85 
86 private: // methods
87  void setRoICoord(double eta, double phi);
88  void testEtMax(const std::vector<int>& cores);
89  void passesTrigger();
90 
91 };
92 
93 }
94 #endif
95 
LVL1::JEMJetAlgorithm::passesTrigger
void passesTrigger()
Check trigger condition and set ET values if TOB created.
Definition: JEMJetAlgorithm.cxx:212
LVL1::JEMJetAlgorithm::m_ETLarge
int m_ETLarge
Definition: JEMJetAlgorithm.h:86
LVL1::JEMJetAlgorithm::ET6x6
int ET6x6()
Returns 6x6 TT cluster ET.
Definition: JEMJetAlgorithm.cxx:261
LVL1::JEMJetAlgorithm::eta
double eta()
Accessors.
Definition: JEMJetAlgorithm.cxx:291
JetInput.h
LVL1::JEMJetAlgorithm::ET4x4
int ET4x4()
Returns 4x4 TT cluster ET.
Definition: JEMJetAlgorithm.cxx:256
LVL1::JEMJetAlgorithm::m_satSmall
static const int m_satSmall
Definition: JEMJetAlgorithm.h:94
LVL1::JEMJetAlgorithm::isRoI
bool isRoI()
Does this window pass the local ET maximum condition.
Definition: JEMJetAlgorithm.cxx:286
TrigConf::L1Menu
L1 menu configuration.
Definition: L1Menu.h:28
LVL1::JEMJetAlgorithm::m_ET8x8
int m_ET8x8
Definition: JEMJetAlgorithm.h:85
LVL1::JEMJetAlgorithm::m_refEta
double m_refEta
Definition: JEMJetAlgorithm.h:76
LVL1::JEMJetAlgorithm::m_EtMax
bool m_EtMax
Definition: JEMJetAlgorithm.h:88
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::JEMJetAlgorithm::ETSmall
int ETSmall()
Returns Small cluster ET.
Definition: JEMJetAlgorithm.cxx:276
LVL1::JEMJetAlgorithm::setRoICoord
void setRoICoord(double eta, double phi)
Compute RoI coordinate.
Definition: JEMJetAlgorithm.cxx:159
LVL1::JEMJetAlgorithm::m_refPhi
double m_refPhi
Definition: JEMJetAlgorithm.h:77
LVL1::JEMJetAlgorithm::isEtMax
bool isEtMax()
Does this window pass the local ET maximum condition.
Definition: JEMJetAlgorithm.cxx:281
LVL1::JEMJetAlgorithm::Core
int Core()
Returns RoI Core ET.
Definition: JEMJetAlgorithm.cxx:251
LVL1::JEMJetAlgorithm::m_l1menu
const TrigConf::L1Menu * m_l1menu
Definition: JEMJetAlgorithm.h:78
LVL1::JEMJetAlgorithm::JEMJetAlgorithm
JEMJetAlgorithm(double eta, double phi, const std::map< int, JetInput * > *jiContainer, const TrigConf::L1Menu *l1menu)
Definition: JEMJetAlgorithm.cxx:35
LVL1::JEMJetAlgorithm::m_ETSmall
int m_ETSmall
Definition: JEMJetAlgorithm.h:87
LVL1::JEMJetAlgorithm::testEtMax
void testEtMax(const std::vector< int > &cores)
Form all 2x2 clusters within window and test centre is a local ET maximum.
Definition: JEMJetAlgorithm.cxx:194
LVL1::JEMJetAlgorithm::ET8x8
int ET8x8()
Returns 8x8 TT cluster ET.
Definition: JEMJetAlgorithm.cxx:266
LVL1::JEMJetAlgorithm::m_ET4x4
int m_ET4x4
Definition: JEMJetAlgorithm.h:83
LVL1::JEMJetAlgorithm::m_eta
double m_eta
Algorithm results.
Definition: JEMJetAlgorithm.h:81
LVL1::JEMJetAlgorithm::m_ET6x6
int m_ET6x6
Definition: JEMJetAlgorithm.h:84
LVL1::JEMJetAlgorithm::~JEMJetAlgorithm
~JEMJetAlgorithm()
Definition: JEMJetAlgorithm.cxx:154
xAOD::JEMTobRoI_v1
Description of JEMTobRoI_v1.
Definition: JEMTobRoI_v1.h:25
LVL1::JEMJetAlgorithm::phi
double phi()
Returns phi coordinate of RoI, using standard ATLAS convention.
Definition: JEMJetAlgorithm.cxx:296
python.XMLReader.l1menu
l1menu
Definition: XMLReader.py:73
LVL1::JEMJetAlgorithm::m_satLarge
static const int m_satLarge
Algorithm parameters.
Definition: JEMJetAlgorithm.h:93
LVL1::JEMJetAlgorithm::jemTobRoI
xAOD::JEMTobRoI * jemTobRoI()
Create JEMTobRoI and return pointers to it.
Definition: JEMJetAlgorithm.cxx:303
LVL1::JEMJetAlgorithm::ETLarge
int ETLarge()
Returns Large cluster ET.
Definition: JEMJetAlgorithm.cxx:271
L1Menu.h
JEMTobRoI.h
LVL1::JEMJetAlgorithm::m_phi
double m_phi
Definition: JEMJetAlgorithm.h:82