ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
AnalysisCommon
AssociationUtils
AssociationUtils
IOverlapTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ASSOCIATIONUTILS_IOVERLAPTOOL_H
6
#define ASSOCIATIONUTILS_IOVERLAPTOOL_H
7
8
// Framework includes
9
#include "
AsgTools/IAsgTool.h
"
10
#include "
AsgTools/CurrentContext.h
"
11
12
// EDM includes
13
#include "
xAODBase/IParticleContainer.h
"
14
15
// Columnar includes
16
#include "
ColumnarCore/ObjectRange.h
"
17
#include "
ColumnarCore/ParticleDef.h
"
18
19
namespace
ORUtils
20
{
21
30
class
IOverlapTool
:
virtual
public
asg::IAsgTool
31
{
32
34
ASG_TOOL_INTERFACE
(
IOverlapTool
)
35
36
public
:
37
43
virtual
StatusCode
findOverlaps
(
columnar::Particle1Range
cont1,
44
columnar::Particle2Range
cont2,
45
columnar::EventContextId
eventContext)
const
= 0;
46
StatusCode
findOverlaps
(
const
xAOD::IParticleContainer
& cont1,
47
const
xAOD::IParticleContainer
& cont2,
48
const
EventContext& eventContext = Gaudi::Hive::currentContext())
const
{
49
return
findOverlaps
(
50
columnar::Particle1Range
(cont1),
51
columnar::Particle2Range
(cont2),
52
eventContext);
53
}
54
55
};
// class IOverlapTool
56
57
}
// namespace ORUtils
58
59
#endif
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition
AsgToolMacros.h:40
CurrentContext.h
IAsgTool.h
ObjectRange.h
ParticleDef.h
ORUtils::IOverlapTool
Interface class for overlap removal tools.
Definition
IOverlapTool.h:31
ORUtils::IOverlapTool::findOverlaps
StatusCode findOverlaps(const xAOD::IParticleContainer &cont1, const xAOD::IParticleContainer &cont2, const EventContext &eventContext=Gaudi::Hive::currentContext()) const
Definition
IOverlapTool.h:46
ORUtils::IOverlapTool::findOverlaps
virtual StatusCode findOverlaps(columnar::Particle1Range cont1, columnar::Particle2Range cont2, columnar::EventContextId eventContext) const =0
Declare the interface.
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition
IAsgTool.h:41
ORUtils
Definition
AltMuJetOverlapTool.h:30
columnar::EventContextId
ObjectId< EventContextDef > EventContextId
Definition
ContainerId.h:212
columnar::Particle2Range
ObjectRange< Particle2Def > Particle2Range
Definition
ParticleDef.h:50
columnar::Particle1Range
ObjectRange< Particle1Def > Particle1Range
Definition
ParticleDef.h:44
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