ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::ITimedMatEffUpdator Class Referenceabstract

Interface class for the updater AlgTool, it inherits from IAlgTool Detailed information about private members and member functions can be found in the actual implementation class MaterialUpdator which inherits from this one. More...

#include <ITimedMatEffUpdator.h>

Inheritance diagram for Trk::ITimedMatEffUpdator:
Collaboration diagram for Trk::ITimedMatEffUpdator:

Public Member Functions

virtual ~ITimedMatEffUpdator ()=default
 Virtual destructor.
virtual std::unique_ptr< TrackParametersupdate (const TrackParameters *parm, const Layer &sf, TimeLimit &time, PathLimit &path, Trk::GeometrySignature geoID, PropDirection dir=alongMomentum, ParticleHypothesis particle=pion) const =0
 Updator interface (full update for a layer): The parmeters are given as a const pointer.
virtual std::unique_ptr< TrackParametersupdate (double, const TrackParameters *parm, const MaterialEffectsOnTrack &, ParticleHypothesis particle=pion, MaterialUpdateMode matupmode=addNoise) const
 User updator interface (full update for a layer): The parmeters are given as a pointer.
virtual std::unique_ptr< TrackParametersupdate (double time, const TrackParameters &parm, const MaterialProperties &mprop, double pathcorrection, PropDirection dir=alongMomentum, ParticleHypothesis particle=pion, MaterialUpdateMode matupmode=addNoise) const =0
 Updator interface: The parmeters are given as a pointer, they are delete inside the update method.
virtual std::unique_ptr< TrackParametersinteract (double time, const Amg::Vector3D &position, const Amg::Vector3D &momentum, ParticleHypothesis particle, int process, const Trk::Material *extMatProp=nullptr) const
 Updator interface: Perform pre-selected interaction.
virtual void recordBremPhoton (double, double, double, const Amg::Vector3D &, Amg::Vector3D &, Trk::ParticleHypothesis) const
 the helper function for a brem photon record
virtual void validationAction () const
 Validation Action: Can be implemented optionally, outside access to internal validation steps.
virtual void modelAction (const TrackParameters *parm=nullptr) const
 Model Action: Can be implemented optionally.

Static Public Member Functions

static const InterfaceID & interfaceID ()
 AlgTool and IAlgTool interface methods.

Detailed Description

Interface class for the updater AlgTool, it inherits from IAlgTool Detailed information about private members and member functions can be found in the actual implementation class MaterialUpdator which inherits from this one.

Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch, sarka.nosp@m..tod.nosp@m.orova.nosp@m.@cer.nosp@m.n.ch

Definition at line 42 of file ITimedMatEffUpdator.h.

Constructor & Destructor Documentation

◆ ~ITimedMatEffUpdator()

virtual Trk::ITimedMatEffUpdator::~ITimedMatEffUpdator ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ interact()

std::unique_ptr< Trk::TrackParameters > Trk::ITimedMatEffUpdator::interact ( double time,
const Amg::Vector3D & position,
const Amg::Vector3D & momentum,
ParticleHypothesis particle,
int process,
const Trk::Material * extMatProp = nullptr ) const
inlinevirtual

Updator interface: Perform pre-selected interaction.

Definition at line 137 of file ITimedMatEffUpdator.h.

143{
144 return nullptr;
145}

◆ interfaceID()

const InterfaceID & Trk::ITimedMatEffUpdator::interfaceID ( )
inlinestatic

AlgTool and IAlgTool interface methods.

Definition at line 49 of file ITimedMatEffUpdator.h.

static const InterfaceID IID_ITimedMatEffUpdator("ITimedMatEffUpdator", 1, 0)
Interface ID for ITimedMatEffUpdator.

◆ modelAction()

virtual void Trk::ITimedMatEffUpdator::modelAction ( const TrackParameters * parm = nullptr) const
inlinevirtual

Model Action: Can be implemented optionally.

Provides the possibility of doing non-local MaterialEffectsUpdates for different models

Definition at line 127 of file ITimedMatEffUpdator.h.

128 {
129 if (parm)
130 return;
131 }

◆ recordBremPhoton()

virtual void Trk::ITimedMatEffUpdator::recordBremPhoton ( double ,
double ,
double ,
const Amg::Vector3D & ,
Amg::Vector3D & ,
Trk::ParticleHypothesis  ) const
inlinevirtual

the helper function for a brem photon record

Reimplemented in Trk::NIMatEffUpdator.

Definition at line 110 of file ITimedMatEffUpdator.h.

116 {}

◆ update() [1/3]

virtual std::unique_ptr< TrackParameters > Trk::ITimedMatEffUpdator::update ( const TrackParameters * parm,
const Layer & sf,
TimeLimit & time,
PathLimit & path,
Trk::GeometrySignature geoID,
PropDirection dir = alongMomentum,
ParticleHypothesis particle = pion ) const
pure virtual

Updator interface (full update for a layer): The parmeters are given as a const pointer.

We return newly created non const parameters as unique_ptr method. Layer-based material update

Implemented in Trk::NIMatEffUpdator.

◆ update() [2/3]

virtual std::unique_ptr< TrackParameters > Trk::ITimedMatEffUpdator::update ( double time,
const TrackParameters & parm,
const MaterialProperties & mprop,
double pathcorrection,
PropDirection dir = alongMomentum,
ParticleHypothesis particle = pion,
MaterialUpdateMode matupmode = addNoise ) const
pure virtual

Updator interface: The parmeters are given as a pointer, they are delete inside the update method.

MaterialProperties based material update

  • used by all Layer-based methods

Implemented in Trk::NIMatEffUpdator.

◆ update() [3/3]

virtual std::unique_ptr< TrackParameters > Trk::ITimedMatEffUpdator::update ( double ,
const TrackParameters * parm,
const MaterialEffectsOnTrack & ,
ParticleHypothesis particle = pion,
MaterialUpdateMode matupmode = addNoise ) const
inlinevirtual

User updator interface (full update for a layer): The parmeters are given as a pointer.

The parmeters are given as a const pointer. We return newly created non const parameters as unique_ptr Update occurs on the place where the parameters parm are according to the specified MaterialEffectsOnTrack

Reimplemented in Trk::NIMatEffUpdator.

Definition at line 72 of file ITimedMatEffUpdator.h.

78 {
79 (void)particle;
80 (void)matupmode;
81 return parm->uniqueClone();
82 }

◆ validationAction()

virtual void Trk::ITimedMatEffUpdator::validationAction ( ) const
inlinevirtual

Validation Action: Can be implemented optionally, outside access to internal validation steps.

Definition at line 121 of file ITimedMatEffUpdator.h.

121{}

The documentation for this class was generated from the following file: