ATLAS Offline Software
RoIBResultToxAOD.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 //
5 //
6 #ifndef ANALYSISTRIGGERALGS_ROIBRESULTTOXAOD_H
7 #define ANALYSISTRIGGERALGS_ROIBRESULTTOXAOD_H
8 
9 // Gaudi/Athena include(s):
11 #include "GaudiKernel/ServiceHandle.h"
12 #include "GaudiKernel/ToolHandle.h"
15 
16 // Tool/service include(s):
21 
22 // EDM include(s):
29 #include "xAODTrigger/JetEtRoI.h"
31 
44 
45 public:
47  RoIBResultToxAOD( const std::string& name, ISvcLocator* svcLoc );
48 
51 
53  virtual bool isClonable() const override { return true; }
54 
56  virtual StatusCode initialize() override;
57 
59  virtual StatusCode execute(const EventContext& ctx) const override;
60 
62 
63 private:
66  const EventContext& ctx ) const;
69  const EventContext& ctx ) const;
72  const EventContext& ctx ) const;
73 
76 
78  ToolHandle<LVL1::ITrigT1MuonRecRoiTool> m_recRPCRoiTool { this, "RecRpcRoiTool", "LVL1::TrigT1RPCRecRoiTool/TrigT1RPCRecRoiTool"};
80  ToolHandle< LVL1::ITrigT1MuonRecRoiTool > m_recTGCRoiTool {
81  this, "RecTgcRoiTool", "LVL1::TrigT1TGCRecRoiTool/TrigT1TGCRecRoiTool",
82  "TGC RoI reconstruction service" };
83 
85 
88 
90  ToolHandle< LVL1::IL1CPMTools > m_emTauTool {
91  this, "L1CPMTools", "LVL1::L1CPMTools/L1CPMTools",
92  "Tool for calculation of EmTau trigger sums per RoI" };
94  ToolHandle< LVL1::IL1JEMJetTools > m_jetTool {
95  this, "L1JEMJetTools", "LVL1::L1JEMJetTools/L1JEMJetTools",
96  "Tool for calculation of Jet cluster sums per RoI" };
97 
99 
102 
105  this, "RoIBResultInputKey", "RoIBResult",
106  "Key for the ROIB::RoIBResult input object" };
107 
110  this, "CPMTowerLocation", LVL1::TrigT1CaloDefs::CPMTowerLocation,
111  "Key for the xAOD::CPMTowerContainer input object" };
114  this, "JetElementLocation", LVL1::TrigT1CaloDefs::JetElementLocation,
115  "Key for the xAOD::JetElementContainer input object" };
116 
118 
121 
124  this, "xAODKeyMuon", "LVL1MuonRoIs",
125  "Key for the xAOD::MuonRoIContainer output object" };
128  this, "xAODKeyEmTau", "LVL1EmTauRoIs",
129  "Key for the xAOD::EmTauRoIContainer output object" };
132  this, "xAODKeyEsum", "LVL1EnergySumRoI",
133  "Key for the xAOD::EnergySumRoI output object" };
136  this, "xAODKeyJetEt", "LVL1JetEtRoI",
137  "Key for the xAOD::JetEtRoI output object" };
140  this, "xAODKeyJet", "LVL1JetRoIs",
141  "Key for the xAOD::JetRoIContainer output object" };
142 
144 
148  Gaudi::Property< bool > m_doCalo {
149  this, "DoCalo", true, "Use inputs from the Calo system" };
151  Gaudi::Property< bool > m_doMuon {
152  this, "DoMuon", true, "Use inputs from the Muon system" };
153 
155  Gaudi::Property< std::vector< std::string > > m_egammaItem {
156  this, "EGammaItem", {}, "List of LVL1 items for e/gamma trigger type" };
158  Gaudi::Property< std::vector< std::string > > m_tauhadItem {
159  this, "TauHadItem", {}, "List of LVL1 items for tau trigger type" };
161  Gaudi::Property< std::vector< std::string > > m_jetItem {
162  this, "JetItem", {}, "List of LVL1 items for jet trigger type" };
164  Gaudi::Property< std::vector< std::string > > m_esumItem {
165  this, "ESumItem", {}, "List of LVL1 items for energy sum trigger type" };
167  Gaudi::Property< std::vector< std::string > > m_highmuItem {
168  this, "HighMuItem", {},
169  "List of LVL1 items for high pt muon trigger type" };
171  Gaudi::Property< std::vector< std::string > > m_lowmuItem {
172  this, "LowMuItem", {},
173  "List of LVL1 items for low pt muon trigger type" };
174 
176 
177 }; // class RoIBResultToxAOD
178 
179 #endif // ANALYSISTRIGGERALGS_ROIBRESULTTOXAOD_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
RoIBResultToxAOD::m_recTGCRoiTool
ToolHandle< LVL1::ITrigT1MuonRecRoiTool > m_recTGCRoiTool
The TGC RoI reconstruction service.
Definition: RoIBResultToxAOD.h:80
RoIBResultToxAOD::createJetEnergyRoI
StatusCode createJetEnergyRoI(const ROIB::RoIBResult &roib, const EventContext &ctx) const
Create the JetEnergy RoI object.
Definition: RoIBResultToxAOD.cxx:230
RoIBResultToxAOD
RoIB result to xAOD converter.
Definition: RoIBResultToxAOD.h:43
RoIBResultToxAOD::m_tauhadItem
Gaudi::Property< std::vector< std::string > > m_tauhadItem
List of LVL1 items for tau trigger type.
Definition: RoIBResultToxAOD.h:158
RoIBResultToxAOD::m_jetElementKey
SG::ReadHandleKey< xAOD::JetElementContainer > m_jetElementKey
Read key for the xAOD::JetElementContainer object.
Definition: RoIBResultToxAOD.h:113
ROIB::RoIBResult
Class holding the LVL1 RoIB result build by the RoIBuilder.
Definition: RoIBResult.h:47
RoIBResult.h
MuonRoIContainer.h
RoIBResultToxAOD::m_cpmTowerKey
SG::ReadHandleKey< xAOD::CPMTowerContainer > m_cpmTowerKey
Read key for the xAOD::CPMTowerContainer object.
Definition: RoIBResultToxAOD.h:109
CPMTowerContainer.h
RoIBResultToxAOD::createMuonRoI
StatusCode createMuonRoI(const ROIB::RoIBResult &roib, const EventContext &ctx) const
Create the Muon RoI objects.
Definition: RoIBResultToxAOD.cxx:454
SG::ReadHandleKey< ROIB::RoIBResult >
RoIBResultToxAOD::m_doCalo
Gaudi::Property< bool > m_doCalo
Definition: RoIBResultToxAOD.h:148
RoIBResultToxAOD::m_jetItem
Gaudi::Property< std::vector< std::string > > m_jetItem
List of LVL1 items for jet trigger type.
Definition: RoIBResultToxAOD.h:161
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
RoIBResultToxAOD::m_jetTool
ToolHandle< LVL1::IL1JEMJetTools > m_jetTool
Tool for calculation of Jet cluster sums per RoI.
Definition: RoIBResultToxAOD.h:94
JetElementContainer.h
RoIBResultToxAOD::isClonable
virtual bool isClonable() const override
Declare that the algorithm is clonable.
Definition: RoIBResultToxAOD.h:53
RoIBResultToxAOD::m_lowmuItem
Gaudi::Property< std::vector< std::string > > m_lowmuItem
List of LVL1 items for low pt muon trigger type.
Definition: RoIBResultToxAOD.h:171
RoIBResultToxAOD::m_esumItem
Gaudi::Property< std::vector< std::string > > m_esumItem
List of LVL1 items for energy sum trigger type.
Definition: RoIBResultToxAOD.h:164
RoIBResultToxAOD::execute
virtual StatusCode execute(const EventContext &ctx) const override
Function executing the algorithm.
Definition: RoIBResultToxAOD.cxx:97
RoIBResultToxAOD::createEmTauRoI
StatusCode createEmTauRoI(const ROIB::RoIBResult &roib, const EventContext &ctx) const
Create the EmTau RoI objects.
Definition: RoIBResultToxAOD.cxx:124
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
RoIBResultToxAOD::m_doMuon
Gaudi::Property< bool > m_doMuon
Use inputs from the Muon system.
Definition: RoIBResultToxAOD.h:151
RoIBResultToxAOD::m_highmuItem
Gaudi::Property< std::vector< std::string > > m_highmuItem
List of LVL1 items for high pt muon trigger type.
Definition: RoIBResultToxAOD.h:167
JetRoIContainer.h
RoIBResultToxAOD::m_roibResultKey
SG::ReadHandleKey< ROIB::RoIBResult > m_roibResultKey
Read key for the ROIB::RoIBResult object.
Definition: RoIBResultToxAOD.h:104
ITrigT1MuonRecRoiTool.h
RoIBResultToxAOD::m_jetetRoIKey
SG::WriteHandleKey< xAOD::JetEtRoI > m_jetetRoIKey
Write key for the xAOD::JetEtRoI object.
Definition: RoIBResultToxAOD.h:135
LVL1::TrigT1CaloDefs::CPMTowerLocation
static const std::string CPMTowerLocation
Definition: TrigT1CaloDefs.h:38
IL1JEMJetTools.h
RoIBResultToxAOD::m_emTauTool
ToolHandle< LVL1::IL1CPMTools > m_emTauTool
Tool for calculation of EmTau trigger sums per RoI.
Definition: RoIBResultToxAOD.h:90
JetEtRoI.h
RoIBResultToxAOD::m_emtauRoIKey
SG::WriteHandleKey< xAOD::EmTauRoIContainer > m_emtauRoIKey
Write key for the xAOD::EmTauRoIContainer object.
Definition: RoIBResultToxAOD.h:127
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
LVL1::TrigT1CaloDefs::JetElementLocation
static const std::string JetElementLocation
Definition: TrigT1CaloDefs.h:39
RoIBResultToxAOD::m_energysumRoIKey
SG::WriteHandleKey< xAOD::EnergySumRoI > m_energysumRoIKey
Write key for the xAOD::EnergySumRoI object.
Definition: RoIBResultToxAOD.h:131
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
RoIBResultToxAOD::initialize
virtual StatusCode initialize() override
Function initialising the algorithm.
Definition: RoIBResultToxAOD.cxx:48
RoIBResultToxAOD::m_muonRoIKey
SG::WriteHandleKey< xAOD::MuonRoIContainer > m_muonRoIKey
Write key for the xAOD::MuonRoIContainer object.
Definition: RoIBResultToxAOD.h:123
TrigT1CaloDefs.h
EmTauRoIContainer.h
RoIBResultToxAOD::m_jetRoIKey
SG::WriteHandleKey< xAOD::JetRoIContainer > m_jetRoIKey
Write key for the xAOD::JetRoIContainer object.
Definition: RoIBResultToxAOD.h:139
RoIBResultToxAOD::m_recRPCRoiTool
ToolHandle< LVL1::ITrigT1MuonRecRoiTool > m_recRPCRoiTool
The RPC RoI reconstruction tool.
Definition: RoIBResultToxAOD.h:78
RoIBResultToxAOD::m_egammaItem
Gaudi::Property< std::vector< std::string > > m_egammaItem
List of LVL1 items for e/gamma trigger type.
Definition: RoIBResultToxAOD.h:155
IL1CPMTools.h
EnergySumRoI.h
RoIBResultToxAOD::RoIBResultToxAOD
RoIBResultToxAOD(const std::string &name, ISvcLocator *svcLoc)
Algorithm constructor.
Definition: RoIBResultToxAOD.cxx:43