ATLAS Offline Software
Loading...
Searching...
No Matches
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
17namespace Trk {
18
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,
43 ParticleHypothesis particle=pion,
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
Interface class IMultipleScatteringUpdator.
virtual void validationAction() const
Validation Action: Can be implemented optionally, outside access to internal validation steps.
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.
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
virtual ~IMultipleScatteringUpdator()
Virtual destructor.
Material with information about thickness of material.
Ensure that the ATLAS eigen extensions are properly loaded.
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
static const InterfaceID IID_IMultipleScatteringUpdator("IMultipleScatteringUpdator", 1, 0)
Interface ID for IMultipleScatteringUpdator.