ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
AnalysisCommon
ParticleJetTools
ParticleJetTools
JetParticleAssociation.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
// author: cpollard@cern.ch
6
7
#ifndef PARTICLEJETTOOLS_JETPARTICLEASSOCIATION_H
8
#define PARTICLEJETTOOLS_JETPARTICLEASSOCIATION_H
9
10
#include "
AsgTools/AsgTool.h
"
11
#include "
AsgTools/PropertyWrapper.h
"
12
#include "
AsgDataHandles/WriteDecorHandleKey.h
"
13
#include "
xAODJet/JetContainer.h
"
14
#include "
xAODBase/IParticleContainer.h
"
15
#include "
JetInterface/IJetDecorator.h
"
16
17
#include <vector>
18
#include <string>
19
20
21
class
JetParticleAssociation
:
public
asg::AsgTool
,
22
virtual
public
IJetDecorator
{
23
ASG_TOOL_CLASS
(
JetParticleAssociation
,
IJetDecorator
)
24
25
public
:
26
27
JetParticleAssociation
(
const
std::string& name);
28
29
virtual
StatusCode
initialize
()
override
;
30
virtual
StatusCode
decorate
(
const
xAOD::JetContainer
& jets)
const override
;
31
32
// obvs to be provided by the deriving class
33
virtual
const
std::vector<std::vector<ElementLink<xAOD::IParticleContainer> > >*
34
match
(
const
xAOD::JetContainer
&,
const
xAOD::IParticleContainer
&)
const
= 0;
35
36
private
:
37
38
// note
39
// if m_particleKey is "", then an empty container will be written to the OutputDecoration.
40
Gaudi::Property<std::string>
m_jetContainerName
{
this
,
"JetContainer"
,
""
,
"Jet collection name"
};
41
Gaudi::Property<float>
m_ptMinimum
{
this
,
"MinimumJetPt"
, 0.0,
"minimum pt to consider for association"
};
42
SG::ReadHandleKey<xAOD::IParticleContainer>
m_particleKey
{
this
,
"InputParticleContainer"
,
""
,
"Input particle collection name"
};
43
SG::WriteDecorHandleKey<xAOD::JetContainer>
m_decKey
{
this
,
"OutputDecoration"
,
""
,
"Output decoration name"
};
44
SG::WriteDecorHandleKey<xAOD::JetContainer>
m_passPtKey
{
this
,
"PassPtFlag"
,
""
,
"Name for decoration indicating we passed pt threshold"
};
45
};
46
47
#endif
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition
AsgToolMacros.h:68
AsgTool.h
WriteDecorHandleKey.h
IJetDecorator.h
JetContainer.h
PropertyWrapper.h
IJetDecorator
Interface for adding a decoration to a jet container.
Definition
IJetDecorator.h:21
JetParticleAssociation::m_decKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decKey
Definition
JetParticleAssociation.h:43
JetParticleAssociation::decorate
virtual StatusCode decorate(const xAOD::JetContainer &jets) const override
Decorate a jet collection without otherwise modifying it.
Definition
JetParticleAssociation.cxx:36
JetParticleAssociation::m_particleKey
SG::ReadHandleKey< xAOD::IParticleContainer > m_particleKey
Definition
JetParticleAssociation.h:42
JetParticleAssociation::m_jetContainerName
Gaudi::Property< std::string > m_jetContainerName
Definition
JetParticleAssociation.h:40
JetParticleAssociation::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition
JetParticleAssociation.cxx:15
JetParticleAssociation::m_ptMinimum
Gaudi::Property< float > m_ptMinimum
Definition
JetParticleAssociation.h:41
JetParticleAssociation::m_passPtKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_passPtKey
Definition
JetParticleAssociation.h:44
JetParticleAssociation::match
virtual const std::vector< std::vector< ElementLink< xAOD::IParticleContainer > > > * match(const xAOD::JetContainer &, const xAOD::IParticleContainer &) const =0
JetParticleAssociation::JetParticleAssociation
JetParticleAssociation(const std::string &name)
Definition
JetParticleAssociation.cxx:11
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition
StoreGate/StoreGate/WriteDecorHandleKey.h:90
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
xAOD::JetContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
Definition
JetContainer.h:17
xAOD::IParticleContainer
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.
Definition
xAOD/xAODBase/xAODBase/IParticleContainer.h:32
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0