ATLAS Offline Software
PFTauFlowElementAssoc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /*
6  * PFTauFlowElementAssoc.h
7  * Header file for class PFTauFlowElementAssoc
8  *
9  * Created on: 24.09.20
10  * Author: L. Miller
11  */
12 
13 #ifndef PFTAUFLOWELEMENTASSOC_H
14 #define PFTAUFLOWELEMENTASSOC_H
15 
18 #include "GaudiKernel/ToolHandle.h"
19 #include "StoreGate/DataHandle.h"
21 
24 
37 
38 public:
40 
41  PFTauFlowElementAssoc(const std::string& name, ISvcLocator* pSvcLocator);
42 
44 
45  virtual StatusCode initialize();
46  virtual StatusCode execute(const EventContext &ctx) const;
47 
48 private:
49 
50  // ReadHandle for the tau jets
51  SG::ReadHandleKey<xAOD::TauJetContainer> m_tauJetReadHandleKey{this,"TauJetContainer","TauJets","ReadHandleKey for TauJet Container"};
52  // ReadHandles for FlowElements
53  SG::ReadHandleKey<xAOD::FlowElementContainer> m_neutralFEReadHandleKey{this,"JetETMissNeutralFlowElementContainer","JetETMissNeutralParticleFlowObjects","ReadHandleKey for neutral FlowElements"};
54  SG::ReadHandleKey<xAOD::FlowElementContainer> m_chargedFEReadHandleKey{this,"JetETMissChargedFlowElementContainer","JetETMissChargedParticleFlowObjects","ReadHandleKey for charged FlowElements"};
55 
57  SG::WriteDecorHandleKey<xAOD::TauJetContainer> m_tauNeutralFEWriteDecorKey{this,"TauNeutralFEDecorKey","TauJets.neutralFELinks","WriteDecorHandleKey for adding neutral FE links to taus"};
59  SG::WriteDecorHandleKey<xAOD::TauJetContainer> m_tauChargedFEWriteDecorKey{this,"TauChargedFEDecorKey","TauJets.chargedFELinks","WriteDecorHandleKey for adding charged FE links to taus"};
61  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_neutralFETauWriteDecorKey{this,"NeutralFETauDecorKey","JetETMissNeutralParticleFlowObjects.FE_TauLinks","WriteDecorHandleKey for adding tau links to neutral FEs"};
63  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_chargedFETauWriteDecorKey{this,"ChargedFETauDecorKey","JetETMissChargedParticleFlowObjects.FE_TauLinks","WriteDecorHandleKey for adding tau links to charged FEs"};
64 
65  SG::ReadHandleKey<xAOD::JetContainer> m_jetReadHandleKey{this,"JetContainer","AntiKt4EMPFlowJets","ReadHandleKey for Jet Container"};
66 
67 };
68 
69 #endif // PFTAUFLOWELEMENTASSOC_H
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
PFTauFlowElementAssoc::~PFTauFlowElementAssoc
virtual ~PFTauFlowElementAssoc()
FlowElementContainer.h
PFTauFlowElementAssoc::PFTauFlowElementAssoc
PFTauFlowElementAssoc(const std::string &name, ISvcLocator *pSvcLocator)
Definition: PFTauFlowElementAssoc.cxx:14
PFTauFlowElementAssoc::initialize
virtual StatusCode initialize()
Definition: PFTauFlowElementAssoc.cxx:20
PFTauFlowElementAssoc::m_jetReadHandleKey
SG::ReadHandleKey< xAOD::JetContainer > m_jetReadHandleKey
Definition: PFTauFlowElementAssoc.h:65
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
PFTauFlowElementAssoc::m_neutralFEReadHandleKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_neutralFEReadHandleKey
Definition: PFTauFlowElementAssoc.h:53
DataHandle.h
PFTauFlowElementAssoc::m_tauNeutralFEWriteDecorKey
SG::WriteDecorHandleKey< xAOD::TauJetContainer > m_tauNeutralFEWriteDecorKey
The write key for adding Neutral Flow Element links to the taus.
Definition: PFTauFlowElementAssoc.h:57
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
AthAlgorithm.h
PFTauFlowElementAssoc
This is the algorithm, which inherits from AthReentrantAlgorithm, that adds element links between Flo...
Definition: PFTauFlowElementAssoc.h:36
AthReentrantAlgorithm::AthReentrantAlgorithm
AthReentrantAlgorithm()
Default constructor:
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
WriteDecorHandle.h
Handle class for adding a decoration to an object.
PFTauFlowElementAssoc::m_chargedFEReadHandleKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_chargedFEReadHandleKey
Definition: PFTauFlowElementAssoc.h:54
PFTauFlowElementAssoc::m_tauChargedFEWriteDecorKey
SG::WriteDecorHandleKey< xAOD::TauJetContainer > m_tauChargedFEWriteDecorKey
The write key for adding Charged Flow Element links to the taus.
Definition: PFTauFlowElementAssoc.h:59
TauJetContainer.h
AthReentrantAlgorithm.h
PFTauFlowElementAssoc::m_neutralFETauWriteDecorKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_neutralFETauWriteDecorKey
The write key for adding tau element links to the Neutral Flow Elements.
Definition: PFTauFlowElementAssoc.h:61
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
PFTauFlowElementAssoc::m_chargedFETauWriteDecorKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_chargedFETauWriteDecorKey
The write key for adding tau element links to the Charged Flow Elements.
Definition: PFTauFlowElementAssoc.h:63
PFTauFlowElementAssoc::m_tauJetReadHandleKey
SG::ReadHandleKey< xAOD::TauJetContainer > m_tauJetReadHandleKey
Definition: PFTauFlowElementAssoc.h:51
PFTauFlowElementAssoc::execute
virtual StatusCode execute(const EventContext &ctx) const
This algorithm: 1) Accesses the relevant FlowElement and TauJet containers 2) Loops over the neutral ...
Definition: PFTauFlowElementAssoc.cxx:50