ATLAS Offline Software
Loading...
Searching...
No Matches
ElectronJetDRAssociator.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2/*
3 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4*/
12
13
14#ifndef EGAMMAD3PDMAKER_ELECTRONJETDRASSOCIATOR_H
15#define EGAMMAD3PDMAKER_ELECTRONJETDRASSOCIATOR_H
16
17
20#include "xAODEgamma/Electron.h"
21#include "xAODJet/Jet.h"
23#include "GaudiKernel/ToolHandle.h"
24#include <string>
25#include <vector>
26
27
28
29namespace Trk { class VxCandidate; }
30
31
32namespace D3PD {
33
34
36
37
43 : public MultiAssociationTool<xAOD::Electron,xAOD::Jet>
44{
45public:
47
54 ElectronJetDRAssociator (const std::string& type,
55 const std::string& name,
56 const IInterface* parent);
57
58
60 virtual StatusCode initialize() override;
61
62
72 virtual StatusCode configureD3PD (IAddVariable* tree,
73 const std::type_info& ti) override;
74
75
80 virtual StatusCode reset (const xAOD::Electron& eg) override;
81
82
88 virtual const xAOD::Jet* next() override;
89
90
96 virtual StatusCode book() final;
97
98
106 StatusCode findReducedPt (const xAOD::Electron* eg,
107 const xAOD::Jet* j,
108 float& reducedPt);
109
118 const xAOD::Jet* j0,
119 float& signedIP, float& PTRel);
120
121
124
127
129 double m_drcut;
130
132 ToolHandle< Trk::ITrackToVertexIPEstimator > m_trackToVertexIPEstimator
133 { this, "TrackToVertexIPEstimator", "Trk::TrackToVertexIPEstimator", "" };
134
136 ToolHandle<ICollectionGetterRegistryTool> m_registry;
137
138
141
142 // Input electrons; source of the association.
144
146 float* m_dr;
147
150
152 float* m_ptrel;
153
155 unsigned int* m_jetSize;
156
159};
160
161
162} // namespace D3PD
163
164
165#endif // EGAMMAD3PDMAKER_EGAMMAJETDRASSOCIATOR_H
Abstract interface to keep a registry of collection getter tools.
Type-safe wrapper for multiple-target associator tools.
virtual StatusCode configureD3PD(IAddVariable *tree, const std::type_info &ti) override
Configure during initialization: type-check.
StatusCode findSignedIPAndPTRelEleJetPair(const xAOD::Electron *eg, const xAOD::Jet *j0, float &signedIP, float &PTRel)
Find the signed impact parameter and PTRel of EG's track relative to the beamspot.
float * m_ptrel
Variable: Relative Pt between electron and jet.
ToolHandle< ICollectionGetterRegistryTool > m_registry
Property: The ICollectionGetterRegistryTool instance.
ICollectionGetterTool * m_target
Getter defining the collection within which to index.
float * m_reducedPt
Variable: Jet pT with electron removed.
virtual StatusCode initialize() override
Standard Gaudi initialize method.
unsigned int * m_jetSize
Variable: Number of jet constituents.
double m_drcut
Property: DR cut between electrons and jets.
ToolHandle< Trk::ITrackToVertexIPEstimator > m_trackToVertexIPEstimator
Property: Tool for the estimation of the IPs to the vertex.
virtual StatusCode book() final
Create any needed tuple variables.
virtual const xAOD::Jet * next() override
Return a pointer to the next element in the association.
StatusCode findReducedPt(const xAOD::Electron *eg, const xAOD::Jet *j, float &reducedPt)
Find the pT of the jet with electron removed.
float * m_dr
Variable: DR between electron and jet.
float * m_signedIP
Variable: Signed impact parameter between electron and jet.
ElectronJetDRAssociator(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
MultiAssociationTool< xAOD::Electron, xAOD::Jet > Base
std::string m_vertexContainerName
Property: Vertex container name.
std::string m_targetLabel
Property: Target label for the getter for the jets to which to associate.
Common interface for adding a variable to a tuple.
Abstract interface to get a collection of objects and iterate over it.
Type-safe wrapper for multiple-target associator tools.
Class describing an electron.
const std::string reset
Block filler tool for noisy FEB information.
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Jet_v1 Jet
Definition of the current "jet version".
Electron_v1 Electron
Definition of the current "egamma version".
#define private
Definition testRead.cxx:27
TChain * tree