ATLAS Offline Software
ITrkMaterialProviderTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ITRKMATERIALPROVIDERTOOL_H
6 #define ITRKMATERIALPROVIDERTOOL_H
7 
8 #include "GaudiKernel/IAlgTool.h"
9 #include "TrkSurfaces/Surface.h"
15 #include "TrkTrack/Track.h"
16 #include <vector>
17 
18 static const InterfaceID IID_ITrkMaterialProviderTool("Trk::ITrkMaterialProviderTool", 1, 0);
19 
20 class CaloEnergy;
21 
22 namespace Trk {
23 
24  class TrackStateOnSurface;
25 
29  class ITrkMaterialProviderTool : virtual public IAlgTool
30  {
31  public:
32 
33  static const InterfaceID& interfaceID( ) ;
34 
36  virtual void updateCaloTSOS(const Trk::Track& idTrack, Trk::Track& extrapolatedTrack) const = 0;
37 
39  virtual void updateCaloTSOS(Trk::Track& msTrack, const Trk::TrackParameters* startParamaters=nullptr) const = 0;
40 
42  virtual void getCaloMEOT(const Trk::Track& idTrack, const Trk::Track& msTrack, std::vector<MaterialEffectsOnTrack>& calomeots) const = 0;
43 
45  virtual std::vector<const Trk::TrackStateOnSurface*>*
46  getCaloTSOS (const Trk::TrackParameters& parm, const Trk::Track& muonTrack, const Trk::TrackParameters* parms=nullptr) const = 0;
47 
50  };
51 
52 }
53 
54 inline const InterfaceID& Trk::ITrkMaterialProviderTool::interfaceID()
55 {
56  return IID_ITrkMaterialProviderTool;
57 }
58 
59 #endif
TrackParameters.h
CaloEnergy
class extending the basic Trk::EnergyLoss to describe the measured or parameterised muon energy loss ...
Definition: CaloEnergy.h:28
Surface.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Trk::ITrkMaterialProviderTool::updateCaloTSOS
virtual void updateCaloTSOS(const Trk::Track &idTrack, Trk::Track &extrapolatedTrack) const =0
Update Calorimeter TSOS from input ID and MS tracks.
PropDirection.h
Track.h
MaterialEffectsOnTrack.h
Trk::ITrkMaterialProviderTool::getCaloMEOT
virtual void getCaloMEOT(const Trk::Track &idTrack, const Trk::Track &msTrack, std::vector< MaterialEffectsOnTrack > &calomeots) const =0
Get Calorimeter MEOT.
Trk::ParametersBase
Definition: ParametersBase.h:55
ParticleHypothesis.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::ITrkMaterialProviderTool::getCaloTSOS
virtual std::vector< const Trk::TrackStateOnSurface * > * getCaloTSOS(const Trk::TrackParameters &parm, const Trk::Track &muonTrack, const Trk::TrackParameters *parms=nullptr) const =0
Retrieve Calorimeter TSOS from TG and apply corrections.
Trk::ITrkMaterialProviderTool::interfaceID
static const InterfaceID & interfaceID()
Definition: ITrkMaterialProviderTool.h:54
DataVector.h
An STL vector of pointers that by default owns its pointed-to elements.
Trk::ITrkMaterialProviderTool::getParamCaloELoss
virtual CaloEnergy * getParamCaloELoss(Trk::Track *track) const =0
Retrieve a clone of the parametrised energy loss.
Trk::ITrkMaterialProviderTool::updateCaloTSOS
virtual void updateCaloTSOS(Trk::Track &msTrack, const Trk::TrackParameters *startParamaters=nullptr) const =0
Update Calorimeter TSOS from input MS tracks.
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
Trk::ITrkMaterialProviderTool
Interface for tool to add alignmenties to a global chi2 fit.
Definition: ITrkMaterialProviderTool.h:30