ATLAS Offline Software
Loading...
Searching...
No Matches
IObjectAssociator.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_IOBJECTASSOCIATOR_H
6#define ASSOCIATIONUTILS_IOBJECTASSOCIATOR_H
7
8// EDM includes
10
11// Columnar includes
14
15namespace ADD_CMODE(ORUtils)
16{
17
23 {
24 public:
26 virtual ~IParticleAssociator(){};
27
31 virtual StatusCode setObjectTypes (xAODType::ObjectType type1,
32 xAODType::ObjectType type2) = 0;
33
35 virtual bool objectsMatch(columnar::Particle1Id p1,
36 columnar::Particle2Id p2, bool swapArgs = false) const = 0;
37 bool objectsMatch(columnar::Particle2Id p2,
38 columnar::Particle1Id p1) const
39 { return objectsMatch(p1, p2, true); }
40 };
41
42} // namespace ADD_CMODE(ORUtils)
43
44#endif
the base class for all columnar components
ObjectId< Particle1Def > Particle1Id
Definition ParticleDef.h:45
ObjectId< Particle2Def > Particle2Id
Definition ParticleDef.h:51
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition ObjectType.h:32