ATLAS Offline Software
IMultipleScatteringUpdator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IMultipleScatteringUpdator.h, (c) ATLAS Detector software
8 
9 #ifndef TRKEXINTERFACES_IMULTIPLESCATTERINGUPDATOR_H
10 #define TRKEXINTERFACES_IMULTIPLESCATTERINGUPDATOR_H
11 
12 // Gaudi
13 #include "GaudiKernel/IAlgTool.h"
14 // Trk
16 
17 namespace Trk {
18 
19  class MaterialProperties;
20 
22  static const InterfaceID IID_IMultipleScatteringUpdator("IMultipleScatteringUpdator", 1, 0);
23 
29  class IMultipleScatteringUpdator : virtual public IAlgTool {
30 
31  public:
34 
36  static const InterfaceID& interfaceID() { return IID_IMultipleScatteringUpdator; };
37 
40  virtual double sigmaSquare(const MaterialProperties& mat,
41  double p,
42  double pathcorrection,
44  double deltaE=0.) const = 0;
45 
48  virtual void validationAction() const {}
49 
50  };
51 
52 
53 } // end of namespace
54 
55 
56 #endif // TRKEXINTERFACES_IMULTIPLESCATTERINGUPDATOR_H
57 
58 
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Trk::IMultipleScatteringUpdator::interfaceID
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Definition: IMultipleScatteringUpdator.h:36
mat
GeoMaterial * mat
Definition: LArDetectorConstructionTBEC.cxx:53
Trk::IMultipleScatteringUpdator::validationAction
virtual void validationAction() const
Validation Action: Can be implemented optionally, outside access to internal validation steps.
Definition: IMultipleScatteringUpdator.h:48
Trk::ParticleHypothesis
ParticleHypothesis
Definition: ParticleHypothesis.h:25
Trk::pion
@ pion
Definition: ParticleHypothesis.h:29
Trk::IMultipleScatteringUpdator::sigmaSquare
virtual double sigmaSquare(const MaterialProperties &mat, double p, double pathcorrection, ParticleHypothesis particle=pion, double deltaE=0.) const =0
Calculate the sigma on theta introduced by multiple scatteringt
ParticleHypothesis.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::IMultipleScatteringUpdator::~IMultipleScatteringUpdator
virtual ~IMultipleScatteringUpdator()
Virtual destructor.
Definition: IMultipleScatteringUpdator.h:33
Trk::MaterialProperties
Definition: MaterialProperties.h:40
Trk::IMultipleScatteringUpdator
Definition: IMultipleScatteringUpdator.h:29