ATLAS Offline Software
Loading...
Searching...
No Matches
IParticleHelpers.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2/*
3 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
4*/
5#ifndef XAODBASE_IPARTICLEHELPERS_H
6#define XAODBASE_IPARTICLEHELPERS_H
7
8// Local include(s):
11
12// EDM include(s).
13#include "AthLinks/ElementLink.h"
14
15namespace xAOD {
16
18 bool setOriginalObjectLink( const IParticle& original,
19 IParticle& copy );
20
22 bool setOriginalObjectLink( const IParticleContainer& original,
23 IParticleContainer& copy );
24
26 const IParticle* getOriginalObject( const IParticle& copy );
27
29 const ElementLink< IParticleContainer >&
30 getOriginalObjectLink( const IParticle& copy );
31
32} // namespace xAOD
33
34#endif // XAODBASE_IPARTICLEHELPERS_H
Class providing the definition of the 4-vector interface.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
const IParticle * getOriginalObject(const IParticle &copy)
This function can be used to conveniently get a pointer back to the original object from which a copy...
bool setOriginalObjectLink(const IParticle &original, IParticle &copy)
This function should be used by CP tools when they make a deep copy of an object in their correctedCo...
const ElementLink< IParticleContainer > & getOriginalObjectLink(const IParticle &copy)
This function should be used instead of xAOD::getOriginalObject when we want to use the "original obj...
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.