ATLAS Offline Software
Loading...
Searching...
No Matches
gFEXSysSim.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// gFEXSysSim - Overall gFEX simulation
6// -------------------
7// begin : 01 04 2021
8// email : cecilia.tosciri@cern.ch
9//***************************************************************************
10
11#ifndef gFEXSysSim_H
12#define gFEXSysSim_H
16#include "gFEXSim.h"
17#include "L1CaloFEXSim/gTower.h"
18
22
27#include "TrigConfData/L1Menu.h"
28
29namespace LVL1 {
30
31 //Doxygen class description below:
38
39 class gFEXSysSim : public AthAlgTool, virtual public IgFEXSysSim {
40
41 public:
42
44
45 gFEXSysSim(const std::string& type,const std::string& name,const IInterface* parent);
47 gFEXSysSim&& operator= (const gFEXSysSim& ) = delete;
48
50 virtual StatusCode initialize() override;
51
52 virtual StatusCode execute(gFEXOutputCollection* gFEXOutputs) override ;
53
54 virtual void cleanup() override;
55
56 virtual int calcTowerID(int eta, int phi, int nphi, int mod) const override ;
57
59 virtual StatusCode fillgRhoEDM(uint32_t tobWord, int scale) override ;
60
61 virtual StatusCode fillgBlockEDM(uint32_t tobWord, int scale) override ;
62
63 virtual StatusCode fillgJetEDM(uint32_t tobWord, int scale) override ;
64
65 virtual StatusCode fillgScalarEJwojEDM(uint32_t tobWord, int scale1, int scale2) override ;
66
67 virtual StatusCode fillgMETComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override ;
68
69 virtual StatusCode fillgMHTComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override ;
70
71 virtual StatusCode fillgMSTComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override ;
72
73 virtual StatusCode fillgMETComponentsNoiseCutEDM(uint32_t tobWord, int scale1, int scale2) override ;
74
75 virtual StatusCode fillgMETComponentsRmsEDM(uint32_t tobWord, int scale1, int scale2) override ;
76
77 virtual StatusCode fillgScalarENoiseCutEDM(uint32_t tobWord, int scale1, int scale2) override ;
78
79 virtual StatusCode fillgScalarERmsEDM(uint32_t tobWord, int scale1, int scale2) override ;
80
81
83 private:
84 std::unique_ptr< xAOD::gFexJetRoIContainer > m_gRhoContainer;
85 std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gRhoAuxContainer;
86
87 std::unique_ptr< xAOD::gFexJetRoIContainer > m_gBlockContainer;
88 std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gBlockAuxContainer;
89
90 std::unique_ptr< xAOD::gFexJetRoIContainer > m_gJetContainer;
91 std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gJetAuxContainer;
92
93 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarEJwojContainer;
94 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarEJwojAuxContainer;
95
96 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsJwojContainer;
97 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsJwojAuxContainer;
98
99 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMHTComponentsJwojContainer;
100 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMHTComponentsJwojAuxContainer;
101
102 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMSTComponentsJwojContainer;
103 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMSTComponentsJwojAuxContainer;
104
105 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsNoiseCutContainer;
106 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsNoiseCutAuxContainer;
107
108 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsRmsContainer;
109 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsRmsAuxContainer;
110
111 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarENoiseCutContainer;
112 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarENoiseCutAuxContainer;
113
114 std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarERmsContainer;
115 std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarERmsAuxContainer;
116
117
118 std::vector<gFEXSim*> m_gFEXCollection;
119
120 ToolHandle<IgFEXSim> m_gFEXSimTool {this, "gFEXSimTool", "LVL1::gFEXSim", "Tool that creates the gFEX Simulation"};
121
122 SG::ReadHandleKey<LVL1::gTowerContainer> m_gTowerContainerSGKey {this, "MyGTowers", "gTowerContainer", "Input container for gTowers"};
123
124 SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexRhoOutKey {this,"Key_gFexRhoOutputContainer","L1_gFexRhoRoI","Output gFexRho (energy density) container"};
125 SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexBlockOutKey {this,"Key_gFexSRJetOutputContainer","L1_gFexSRJetRoI","Output gFexBlock (small-R jet) container"};
126 SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexJetOutKey {this,"Key_gFexLRJetOutputContainer","L1_gFexLRJetRoI","Output gFexJet (large-R jet) container"};
127
128 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarEJwojOutKey {this,"Key_gScalarEJwojOutputContainer","L1_gScalarEJwoj","Output Scalar MET and SumET (from Jets without Jets algo) container"};
129 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsJwojOutKey {this,"Key_gMETComponentsJwojOutputContainer","L1_gMETComponentsJwoj","Output total MET components (from Jets without Jets algo) container"};
130 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMHTComponentsJwojOutKey {this,"Key_gMHTComponentsJwojOutputContainer","L1_gMHTComponentsJwoj","Output hard MET components (from Jets without Jets algo) container"};
131 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMSTComponentsJwojOutKey {this,"Key_gMSTComponentsJwojOutputContainer","L1_gMSTComponentsJwoj","Output soft MET components (from Jets without Jets algo) container"};
132
133 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsNoiseCutOutKey {this,"Key_gMETComponentsNoiseCutOutputContainer","L1_gMETComponentsNoiseCut","Output total MET components (from Noise Cut algo) container"};
134 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsRmsOutKey {this,"Key_gMETComponentsRmsOutputContainer","L1_gMETComponentsRms","Output total MET components (from RMS algo) container"};
135 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarENoiseCutOutKey {this,"Key_gScalarENoiseCutOutputContainer","L1_gScalarENoiseCut","Output Scalar MET and SumET (from Noise Cut algo) container"};
136 SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarERmsOutKey {this,"Key_gScalarERmsOutputContainer","L1_gScalarERms","Output Scalar MET and SumET (from RMS algo) container"};
137
138 SG::ReadHandleKey<TrigConf::L1Menu> m_l1MenuKey{this, "L1TriggerMenu", "DetectorStore+L1TriggerMenu","Name of the L1Menu object to read configuration from"};
139
140 std::vector<uint32_t> m_allgRhoTobs;
141 std::vector<uint32_t> m_allgBlockTobs;
142 std::vector<uint32_t> m_allgJetTobs;
143
144 std::vector<int32_t> m_allgScalarEJwojTobs;
145 std::vector<uint32_t> m_allgMETComponentsJwojTobs;
146 std::vector<uint32_t> m_allgMHTComponentsJwojTobs;
147 std::vector<uint32_t> m_allgMSTComponentsJwojTobs;
148
149 std::vector<uint32_t> m_allgMETComponentsNoiseCutTobs;
150 std::vector<uint32_t> m_allgMETComponentsRmsTobs;
151 std::vector<uint32_t> m_allgScalarENoiseCutTobs;
152 std::vector<uint32_t> m_allgScalarERmsTobs;
153
154
155 };
156
157} // end of namespace
158
159
160#endif
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
macros to associate a CLID to a type
#define scale2
#define scale1
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
std::vector< uint32_t > m_allgRhoTobs
Definition gFEXSysSim.h:140
virtual StatusCode fillgMETComponentsRmsEDM(uint32_t tobWord, int scale1, int scale2) override
std::vector< uint32_t > m_allgMETComponentsNoiseCutTobs
Definition gFEXSysSim.h:149
std::vector< uint32_t > m_allgMSTComponentsJwojTobs
Definition gFEXSysSim.h:147
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsNoiseCutContainer
Definition gFEXSysSim.h:105
SG::ReadHandleKey< TrigConf::L1Menu > m_l1MenuKey
Definition gFEXSysSim.h:138
SG::ReadHandleKey< LVL1::gTowerContainer > m_gTowerContainerSGKey
Definition gFEXSysSim.h:122
SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexJetOutKey
Definition gFEXSysSim.h:126
virtual StatusCode initialize() override
standard Athena-Algorithm method
gFEXSysSim && operator=(const gFEXSysSim &)=delete
Destructor.
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsJwojOutKey
Definition gFEXSysSim.h:129
std::vector< uint32_t > m_allgScalarENoiseCutTobs
Definition gFEXSysSim.h:151
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsNoiseCutOutKey
Definition gFEXSysSim.h:133
virtual StatusCode fillgMHTComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsJwojAuxContainer
Definition gFEXSysSim.h:97
std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gJetAuxContainer
Definition gFEXSysSim.h:91
virtual void cleanup() override
SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexRhoOutKey
Definition gFEXSysSim.h:124
std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gRhoAuxContainer
Definition gFEXSysSim.h:85
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMHTComponentsJwojOutKey
Definition gFEXSysSim.h:130
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarENoiseCutContainer
Definition gFEXSysSim.h:111
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsRmsContainer
Definition gFEXSysSim.h:108
std::vector< uint32_t > m_allgMHTComponentsJwojTobs
Definition gFEXSysSim.h:146
std::vector< uint32_t > m_allgMETComponentsRmsTobs
Definition gFEXSysSim.h:150
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMSTComponentsJwojContainer
Definition gFEXSysSim.h:102
virtual StatusCode fillgRhoEDM(uint32_t tobWord, int scale) override
Create and fill a new gFexJetRoI object, and return a pointer to it.
std::vector< uint32_t > m_allgBlockTobs
Definition gFEXSysSim.h:141
std::vector< uint32_t > m_allgMETComponentsJwojTobs
Definition gFEXSysSim.h:145
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarEJwojOutKey
Definition gFEXSysSim.h:128
virtual StatusCode fillgScalarEJwojEDM(uint32_t tobWord, int scale1, int scale2) override
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarERmsOutKey
Definition gFEXSysSim.h:136
virtual StatusCode fillgScalarERmsEDM(uint32_t tobWord, int scale1, int scale2) override
virtual StatusCode execute(gFEXOutputCollection *gFEXOutputs) override
std::vector< gFEXSim * > m_gFEXCollection
Definition gFEXSysSim.h:118
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMETComponentsRmsOutKey
Definition gFEXSysSim.h:134
gFEXSysSim(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
std::vector< uint32_t > m_allgJetTobs
Definition gFEXSysSim.h:142
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gScalarENoiseCutOutKey
Definition gFEXSysSim.h:135
virtual StatusCode fillgScalarENoiseCutEDM(uint32_t tobWord, int scale1, int scale2) override
std::unique_ptr< xAOD::gFexJetRoIContainer > m_gJetContainer
Definition gFEXSysSim.h:90
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarEJwojContainer
Definition gFEXSysSim.h:93
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarEJwojAuxContainer
Definition gFEXSysSim.h:94
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMHTComponentsJwojContainer
Definition gFEXSysSim.h:99
std::unique_ptr< xAOD::gFexJetRoIContainer > m_gBlockContainer
Definition gFEXSysSim.h:87
virtual StatusCode fillgJetEDM(uint32_t tobWord, int scale) override
virtual StatusCode fillgMETComponentsNoiseCutEDM(uint32_t tobWord, int scale1, int scale2) override
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsRmsAuxContainer
Definition gFEXSysSim.h:109
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarENoiseCutAuxContainer
Definition gFEXSysSim.h:112
std::vector< uint32_t > m_allgScalarERmsTobs
Definition gFEXSysSim.h:152
std::vector< int32_t > m_allgScalarEJwojTobs
Definition gFEXSysSim.h:144
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gScalarERmsAuxContainer
Definition gFEXSysSim.h:115
virtual StatusCode fillgBlockEDM(uint32_t tobWord, int scale) override
std::unique_ptr< xAOD::gFexJetRoIAuxContainer > m_gBlockAuxContainer
Definition gFEXSysSim.h:88
SG::WriteHandleKey< xAOD::gFexGlobalRoIContainer > m_gMSTComponentsJwojOutKey
Definition gFEXSysSim.h:131
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMETComponentsNoiseCutAuxContainer
Definition gFEXSysSim.h:106
virtual StatusCode fillgMETComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override
SG::WriteHandleKey< xAOD::gFexJetRoIContainer > m_gFexBlockOutKey
Definition gFEXSysSim.h:125
virtual StatusCode fillgMSTComponentsJwojEDM(uint32_t tobWord, int scale1, int scale2) override
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gMETComponentsJwojContainer
Definition gFEXSysSim.h:96
std::unique_ptr< xAOD::gFexGlobalRoIContainer > m_gScalarERmsContainer
Definition gFEXSysSim.h:114
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMHTComponentsJwojAuxContainer
Definition gFEXSysSim.h:100
virtual int calcTowerID(int eta, int phi, int nphi, int mod) const override
std::unique_ptr< xAOD::gFexGlobalRoIAuxContainer > m_gMSTComponentsJwojAuxContainer
Definition gFEXSysSim.h:103
ToolHandle< IgFEXSim > m_gFEXSimTool
Definition gFEXSysSim.h:120
std::unique_ptr< xAOD::gFexJetRoIContainer > m_gRhoContainer
Internal data.
Definition gFEXSysSim.h:84
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...