ATLAS Offline Software
Loading...
Searching...
No Matches
PhysicsAnalysis
AnalysisCommon
AssociationUtils
AssociationUtils
MuJetGhostDRMatcher.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_MUJETGHOSTMATCHER_H
6
#define ASSOCIATIONUTILS_MUJETGHOSTMATCHER_H
7
8
// System includes
9
#include <memory>
10
11
// Infrastructure includes
12
#include "
AsgMessaging/AsgMessaging.h
"
13
14
// Columnar includes
15
#include "
ColumnarCore/ColumnAccessor.h
"
16
#include "
ColumnarCore/VectorColumn.h
"
17
#include "
ColumnarTracking/TrackDef.h
"
18
#include "
ColumnarVariant/VariantDef.h
"
19
#include "
ColumnarVariant/VariantLinkColumn.h
"
20
21
// Local includes
22
#include "
AssociationUtils/IObjectAssociator.h
"
23
24
namespace
ORUtils
25
{
26
37
class
MuJetGhostDRMatcher
final :
public
IParticleAssociator
,
38
public
asg::AsgMessaging
39
{
40
41
public
:
42
44
MuJetGhostDRMatcher
(
double
dR,
bool
useRapidity=
true
);
45
47
virtual
StatusCode
setObjectTypes
(
xAODType::ObjectType
type1,
48
xAODType::ObjectType
type2)
override
;
49
51
virtual
bool
objectsMatch
52
(
columnar::Particle1Id
mu,
columnar::Particle2Id
jet
,
bool
swapArgs =
false
)
const override
;
53
54
private
:
55
57
std::unique_ptr<IParticleAssociator>
m_drMatcher
;
58
60
using
MyTrackDef
=
columnar::VariantContainerId<columnar::ContainerId::track0,columnar::ContainerId::track0, columnar::ContainerId::track1>
;
61
62
columnar::Particle1Accessor<columnar::ObjectLink<MyTrackDef>
>
m_muonTrkAcc
{*
this
,
"inDetTrackParticleLink"
};
63
64
// Ghost track list accessor
65
columnar::Particle2Accessor<std::vector<columnar::LinkCastColumn<MyTrackDef,xAOD::IParticleContainer>
>>
m_ghostAcc
{*
this
,
"GhostTrack"
};
66
67
};
// class MuJetGhostDRMatcher
68
69
}
// namespace ORUtils
70
71
#endif
AsgMessaging.h
ColumnAccessor.h
IObjectAssociator.h
TrackDef.h
VariantDef.h
VariantLinkColumn.h
VectorColumn.h
ORUtils::IParticleAssociator
Interface for a class which checks for a match between IParticles.
Definition
IObjectAssociator.h:23
ORUtils::MuJetGhostDRMatcher::MyTrackDef
columnar::VariantContainerId< columnar::ContainerId::track0, columnar::ContainerId::track0, columnar::ContainerId::track1 > MyTrackDef
IDTrack type.
Definition
MuJetGhostDRMatcher.h:60
ORUtils::MuJetGhostDRMatcher::MuJetGhostDRMatcher
MuJetGhostDRMatcher(double dR, bool useRapidity=true)
Constructor takes same arguments as the DeltaRMatcher.
Definition
MuJetGhostDRMatcher.cxx:23
ORUtils::MuJetGhostDRMatcher::setObjectTypes
virtual StatusCode setObjectTypes(xAODType::ObjectType type1, xAODType::ObjectType type2) override
Set the object types to be used in the association.
Definition
MuJetGhostDRMatcher.cxx:32
ORUtils::MuJetGhostDRMatcher::m_ghostAcc
columnar::Particle2Accessor< std::vector< columnar::LinkCastColumn< MyTrackDef, xAOD::IParticleContainer > > > m_ghostAcc
Definition
MuJetGhostDRMatcher.h:65
ORUtils::MuJetGhostDRMatcher::objectsMatch
virtual bool objectsMatch(columnar::Particle1Id mu, columnar::Particle2Id jet, bool swapArgs=false) const override
Check for a match via ghost association or delta-R.
Definition
MuJetGhostDRMatcher.cxx:51
ORUtils::MuJetGhostDRMatcher::m_muonTrkAcc
columnar::Particle1Accessor< columnar::ObjectLink< MyTrackDef > > m_muonTrkAcc
Definition
MuJetGhostDRMatcher.h:62
ORUtils::MuJetGhostDRMatcher::m_drMatcher
std::unique_ptr< IParticleAssociator > m_drMatcher
The delta-R matcher.
Definition
MuJetGhostDRMatcher.h:57
asg::AsgMessaging
Class mimicking the AthMessaging class from the offline software.
Definition
AsgMessaging.h:40
ORUtils
Definition
AltMuJetOverlapTool.h:30
columnar::Particle1Id
ObjectId< ContainerId::particle1 > Particle1Id
Definition
ParticleDef.h:48
columnar::Particle2Id
ObjectId< ContainerId::particle2 > Particle2Id
Definition
ParticleDef.h:54
columnar::Particle2Accessor
AccessorTemplate< ContainerId::particle2, CT, ColumnAccessMode::input, CM > Particle2Accessor
Definition
ParticleDef.h:56
columnar::Particle1Accessor
AccessorTemplate< ContainerId::particle1, CT, ColumnAccessMode::input, CM > Particle1Accessor
Definition
ParticleDef.h:50
jet
Definition
JetCalibTools_PlotJESFactors.cxx:23
xAODType::ObjectType
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition
ObjectType.h:32
columnar::VariantContainerId
a "variant" ContainerId
Definition
VariantDef.h:98
Generated on
for ATLAS Offline Software by
1.14.0