ATLAS Offline Software
Toggle main menu visibility
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
ADD_CMODE(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::Track0Def,columnar::Track0Def, columnar::Track1Def>
;
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 ADD_CMODE(ORUtils)
70
71
#endif
AsgMessaging.h
ColumnAccessor.h
IObjectAssociator.h
TrackDef.h
VariantDef.h
VariantLinkColumn.h
VectorColumn.h
IParticleAssociator
Definition
IObjectAssociator.h:15
MuJetGhostDRMatcher
Definition
MuJetGhostDRMatcher.h:24
asg::AsgMessaging
Class mimicking the AthMessaging class from the offline software.
Definition
AsgMessaging.h:40
columnar::Particle1Accessor
AccessorTemplate< Particle1Def, CT, ColumnAccessMode::input, CM > Particle1Accessor
Definition
ParticleDef.h:47
columnar::Particle1Id
ObjectId< Particle1Def > Particle1Id
Definition
ParticleDef.h:45
columnar::Particle2Accessor
AccessorTemplate< Particle2Def, CT, ColumnAccessMode::input, CM > Particle2Accessor
Definition
ParticleDef.h:53
columnar::Particle2Id
ObjectId< Particle2Def > Particle2Id
Definition
ParticleDef.h:51
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.17.0