ATLAS Offline Software
Public Member Functions | List of all members
iFatras::IHadronicInteractionProcessor Class Referenceabstract

#include <IHadronicInteractionProcessor.h>

Inheritance diagram for iFatras::IHadronicInteractionProcessor:
Collaboration diagram for iFatras::IHadronicInteractionProcessor:

Public Member Functions

virtual ~IHadronicInteractionProcessor ()
 Virtual destructor. More...
 
 DeclareInterfaceID (IHadronicInteractionProcessor, 1, 0)
 Creates the InterfaceID and interfaceID() method. More...
 
virtual bool hadronicInteraction (const Amg::Vector3D &position, const Amg::Vector3D &momentum, double p, double E, double charge, const Trk::MaterialProperties &mprop, double pathCorrection, Trk::ParticleHypothesis particle=Trk::pion) const =0
 interface for processing of the nuclear interactions More...
 
virtual bool recordHadState (double time, double p, const Amg::Vector3D &vertex, const Amg::Vector3D &momDir, Trk::ParticleHypothesis particle=Trk::pion) const
 interface for processing of the presampled nuclear interactions More...
 
virtual bool doHadronicInteraction (double time, const Amg::Vector3D &position, const Amg::Vector3D &momentum, const Trk::Material *ematprop, Trk::ParticleHypothesis particle=Trk::pion, bool processSecondaries=true) const
 interface for processing of the presampled nuclear interactions More...
 
virtual ISF::ISFParticleVector doHadIntOnLayer (const ISF::ISFParticle *parent, double time, const Amg::Vector3D &position, const Amg::Vector3D &momentum, const Trk::Material *mat, Trk::ParticleHypothesis particle=Trk::pion) const
 interface for processing of the presampled nuclear interactions on layer More...
 

Detailed Description

Interface definition for the handling of nuclear/hadronic interactions, to be used by the MC based material effects updater

Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch

Definition at line 39 of file IHadronicInteractionProcessor.h.

Constructor & Destructor Documentation

◆ ~IHadronicInteractionProcessor()

virtual iFatras::IHadronicInteractionProcessor::~IHadronicInteractionProcessor ( )
inlinevirtual

Virtual destructor.

Definition at line 43 of file IHadronicInteractionProcessor.h.

43 {}

Member Function Documentation

◆ DeclareInterfaceID()

iFatras::IHadronicInteractionProcessor::DeclareInterfaceID ( IHadronicInteractionProcessor  ,
,
 
)

Creates the InterfaceID and interfaceID() method.

◆ doHadIntOnLayer()

ISF::ISFParticleVector iFatras::IHadronicInteractionProcessor::doHadIntOnLayer ( const ISF::ISFParticle parent,
double  time,
const Amg::Vector3D position,
const Amg::Vector3D momentum,
const Trk::Material mat,
Trk::ParticleHypothesis  particle = Trk::pion 
) const
inlinevirtual

interface for processing of the presampled nuclear interactions on layer

Definition at line 90 of file IHadronicInteractionProcessor.h.

94  {
95  ISF::ISFParticleVector vec(0); return vec;
96  }

◆ doHadronicInteraction()

bool iFatras::IHadronicInteractionProcessor::doHadronicInteraction ( double  time,
const Amg::Vector3D position,
const Amg::Vector3D momentum,
const Trk::Material ematprop,
Trk::ParticleHypothesis  particle = Trk::pion,
bool  processSecondaries = true 
) const
inlinevirtual

interface for processing of the presampled nuclear interactions

Definition at line 81 of file IHadronicInteractionProcessor.h.

86  {
87  return false;
88  }

◆ hadronicInteraction()

virtual bool iFatras::IHadronicInteractionProcessor::hadronicInteraction ( const Amg::Vector3D position,
const Amg::Vector3D momentum,
double  p,
double  E,
double  charge,
const Trk::MaterialProperties mprop,
double  pathCorrection,
Trk::ParticleHypothesis  particle = Trk::pion 
) const
pure virtual

interface for processing of the nuclear interactions

◆ recordHadState()

bool iFatras::IHadronicInteractionProcessor::recordHadState ( double  time,
double  p,
const Amg::Vector3D vertex,
const Amg::Vector3D momDir,
Trk::ParticleHypothesis  particle = Trk::pion 
) const
inlinevirtual

interface for processing of the presampled nuclear interactions

Definition at line 74 of file IHadronicInteractionProcessor.h.

77  {
78  return false;
79  }

The documentation for this class was generated from the following file:
CxxUtils::vec
typename vecDetail::vec_typedef< T, N >::type vec
Define a nice alias for the vectorized type.
Definition: vec.h:207
ISF::ISFParticleVector
std::vector< ISF::ISFParticle * > ISFParticleVector
ISFParticle vector.
Definition: ISFParticleContainer.h:26