4 using namespace SurfaceSideDefinition;
virtual ~MaterialEffectsUpdator()
void update(const LocalTrajectoryParameters &p, const Surface &aSurface, const MagneticField *field, const SurfaceSide side=SurfaceSideDefinition::atCenterOfSurface)
const LocalTrajectoryParameters & localParameters() const
MaterialEffectsUpdator(double mass)
bool newArguments(const TrajectoryStateOnSurface &TSoS, PropagationDirection propDir) const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
virtual bool updateStateInPlace(TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
bool updateP(double dP)
Update of momentum by a scalar dP.
const MediumProperties * mediumProperties() const
virtual TrajectoryStateOnSurface updateState(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
SurfaceSide surfaceSide() const
Position relative to material, defined relative to momentum vector.
PropagationDirection theLastPropDir
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
virtual const AlgebraicSymMatrix55 & deltaLocalError(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
virtual double deltaP(const TrajectoryStateOnSurface &TSoS, const PropagationDirection propDir) const
const GlobalTrajectoryParameters & globalParameters() const
const Surface & surface() const
static AlgebraicSymMatrix55 theNullMatrix
const MagneticField & magneticField() const
AlgebraicSymMatrix55 theDeltaCov
virtual void compute(const TrajectoryStateOnSurface &, const PropagationDirection) const =0