ATLAS Offline Software
Public Member Functions | List of all members
ISF::IParticleHelper Class Referenceabstract

#include <IParticleHelper.h>

Inheritance diagram for ISF::IParticleHelper:
Collaboration diagram for ISF::IParticleHelper:

Public Member Functions

virtual ~IParticleHelper ()
 Virtual destructor. More...
 
 DeclareInterfaceID (IParticleHelper, 1, 0)
 Creates the InterfaceID and interfaceID() method. More...
 
virtual ISFParticlecreateParticle (double x, double y, double z, double px, double py, double pz, double pMass, double pCharge, int pPdgId, int status, double pTime, const ISFParticle &parent, int bc=HepMC::UNDEFINED_ID, int id=0, TruthBinding *tBinding=nullptr, const HepMcParticleLink *partLink=nullptr) const =0
 Create a new particle. More...
 
virtual ISFParticlecreateParticle (const Amg::Vector3D &x, const Amg::Vector3D &p, double pMass, double pCharge, int pPdgId, int status, double pTime, const ISFParticle &parent, int bc=HepMC::UNDEFINED_ID, int id=0, TruthBinding *tBinding=nullptr, const HepMcParticleLink *partLink=nullptr) const =0
 Create a new particle. More...
 
virtual ISFParticlecreateParticle (const HepGeom::Point3D< double > &x, const HepGeom::Vector3D< double > &p, double pMass, double pCharge, int pPdgId, int status, double pTime, const ISFParticle &parent, int bc=HepMC::UNDEFINED_ID, int id=0, TruthBinding *tBinding=nullptr, const HepMcParticleLink *partLink=nullptr) const =0
 Create a new particle. More...
 
virtual ISFParticleupdatedParticle (const ISFParticle &origIsp, const Amg::Vector3D &updatedPos, const Amg::Vector3D &updatedMom, double deltaTime=0.) const =0
 An updated particle (e.g. More...
 
virtual ISFParticleupdatedParticle (const ISFParticle &origIsp, const HepGeom::Point3D< double > &updatedPos, const HepGeom::Vector3D< double > &updatedMom, double deltaTime=0.) const =0
 An updated particle (e.g. More...
 

Detailed Description

Interface to create a particle from primary information, allows to reduce dependency on actual StackParticle implementation

Could make use of a Data POOL eventually

Author
Andreas.Salzburger -at- cern.ch

Definition at line 43 of file IParticleHelper.h.

Constructor & Destructor Documentation

◆ ~IParticleHelper()

virtual ISF::IParticleHelper::~IParticleHelper ( )
inlinevirtual

Virtual destructor.

Definition at line 47 of file IParticleHelper.h.

47 {}

Member Function Documentation

◆ createParticle() [1/3]

virtual ISFParticle* ISF::IParticleHelper::createParticle ( const Amg::Vector3D x,
const Amg::Vector3D p,
double  pMass,
double  pCharge,
int  pPdgId,
int  status,
double  pTime,
const ISFParticle parent,
int  bc = HepMC::UNDEFINED_ID,
int  id = 0,
TruthBinding tBinding = nullptr,
const HepMcParticleLink partLink = nullptr 
) const
pure virtual

Create a new particle.

◆ createParticle() [2/3]

virtual ISFParticle* ISF::IParticleHelper::createParticle ( const HepGeom::Point3D< double > &  x,
const HepGeom::Vector3D< double > &  p,
double  pMass,
double  pCharge,
int  pPdgId,
int  status,
double  pTime,
const ISFParticle parent,
int  bc = HepMC::UNDEFINED_ID,
int  id = 0,
TruthBinding tBinding = nullptr,
const HepMcParticleLink partLink = nullptr 
) const
pure virtual

Create a new particle.

◆ createParticle() [3/3]

virtual ISFParticle* ISF::IParticleHelper::createParticle ( double  x,
double  y,
double  z,
double  px,
double  py,
double  pz,
double  pMass,
double  pCharge,
int  pPdgId,
int  status,
double  pTime,
const ISFParticle parent,
int  bc = HepMC::UNDEFINED_ID,
int  id = 0,
TruthBinding tBinding = nullptr,
const HepMcParticleLink partLink = nullptr 
) const
pure virtual

Create a new particle.

◆ DeclareInterfaceID()

ISF::IParticleHelper::DeclareInterfaceID ( IParticleHelper  ,
,
 
)

Creates the InterfaceID and interfaceID() method.

◆ updatedParticle() [1/2]

virtual ISFParticle* ISF::IParticleHelper::updatedParticle ( const ISFParticle origIsp,
const Amg::Vector3D updatedPos,
const Amg::Vector3D updatedMom,
double  deltaTime = 0. 
) const
pure virtual

An updated particle (e.g.

after transport)

◆ updatedParticle() [2/2]

virtual ISFParticle* ISF::IParticleHelper::updatedParticle ( const ISFParticle origIsp,
const HepGeom::Point3D< double > &  updatedPos,
const HepGeom::Vector3D< double > &  updatedMom,
double  deltaTime = 0. 
) const
pure virtual

An updated particle (e.g.

after transport)


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