ATLAS Offline Software
Loading...
Searching...
No Matches
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
13
14// Columnar includes
20
21// Local includes
23
24namespace ORUtils
25{
26
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
61
63
64 // Ghost track list accessor
66
67 }; // class MuJetGhostDRMatcher
68
69} // namespace ORUtils
70
71#endif
Interface for a class which checks for a match between IParticles.
MuJetGhostDRMatcher(double dR, bool useRapidity=true)
Constructor takes same arguments as the DeltaRMatcher.
columnar::VariantContainerId< columnar::Track0Def, columnar::Track0Def, columnar::Track1Def > MyTrackDef
IDTrack type.
virtual StatusCode setObjectTypes(xAODType::ObjectType type1, xAODType::ObjectType type2) override
Set the object types to be used in the association.
columnar::Particle2Accessor< std::vector< columnar::LinkCastColumn< MyTrackDef, xAOD::IParticleContainer > > > m_ghostAcc
virtual bool objectsMatch(columnar::Particle1Id mu, columnar::Particle2Id jet, bool swapArgs=false) const override
Check for a match via ghost association or delta-R.
columnar::Particle1Accessor< columnar::ObjectLink< MyTrackDef > > m_muonTrkAcc
std::unique_ptr< IParticleAssociator > m_drMatcher
The delta-R matcher.
Class mimicking the AthMessaging class from the offline software.
AccessorTemplate< Particle1Def, CT, ColumnAccessMode::input, CM > Particle1Accessor
Definition ParticleDef.h:47
ObjectId< Particle1Def > Particle1Id
Definition ParticleDef.h:45
AccessorTemplate< Particle2Def, CT, ColumnAccessMode::input, CM > Particle2Accessor
Definition ParticleDef.h:53
ObjectId< Particle2Def > Particle2Id
Definition ParticleDef.h:51
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition ObjectType.h:32
a "variant" ContainerId
Definition VariantDef.h:98