ATLAS Offline Software
IParticleExtrapolationTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
5 // IParticleExtrapolationTool.h, (c) ATLAS Detector software
7 #ifndef TRACKCALOCLUSTERREC_TRACKCALOCLUSTERRECINTERFACES_IPARTICLEEXTRAPOLATIONTOOL_H
8 #define TRACKCALOCLUSTERREC_TRACKCALOCLUSTERRECINTERFACES_IPARTICLEEXTRAPOLATIONTOOL_H
9 
10 #include "GaudiKernel/IAlgTool.h"
11 #include "xAODBase/IParticle.h"
14 
15 static const InterfaceID IID_IParticleExtrapolationTool("IParticleExtrapolationTool", 1, 0);
16 
18 class IParticleExtrapolationTool : virtual public IAlgTool {
19  public:
20 
30  virtual bool particleToCaloExtrapolate( const xAOD::IParticle& particle, const Trk::CaloExtension*& extension) const = 0;
31 
33 
34  static const InterfaceID& interfaceID( ) ;
35 };
36 
37 inline const InterfaceID& IParticleExtrapolationTool::interfaceID() {
38  return IID_IParticleExtrapolationTool;
39 }
40 
41 #endif // TRACKCALOCLUSTERREC_TRACKCALOCLUSTERRECINTERFACES_IPARTICLEEXTRAPOLATIONTOOL_H
IParticleExtrapolationTool::interfaceID
static const InterfaceID & interfaceID()
Definition: IParticleExtrapolationTool.h:37
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
IParticle.h
Trk::CaloExtension
Tracking class to hold the extrapolation from a particle from the ID to the muon system (or the other...
Definition: CaloExtension.h:18
CaloExtension.h
IParticleExtrapolationTool::caloExtension
virtual Trk::CaloExtension * caloExtension(const Trk::TrackParameters &startPars, Trk::PropDirection propDir, Trk::ParticleHypothesis particleType) const =0
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
particleType
Definition: particleType.h:29
Trk::ParticleHypothesis
ParticleHypothesis
Definition: ParticleHypothesis.h:25
Trk::PropDirection
PropDirection
Definition: PropDirection.h:19
Trk::ParametersBase
Definition: ParametersBase.h:55
ParticleHypothesis.h
IParticleExtrapolationTool::particleToCaloExtrapolate
virtual bool particleToCaloExtrapolate(const xAOD::IParticle &particle, const Trk::CaloExtension *&extension) const =0
Method to dress a IParticle with the calo layers crossed by its track Tracks are decorated using the ...
IParticleExtrapolationTool
Interface for extending Particles with calo intersections.
Definition: IParticleExtrapolationTool.h:18