ATLAS Offline Software
Loading...
Searching...
No Matches
ISF::IParticleHelper Class Referenceabstract

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

#include <IParticleHelper.h>

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

Public Member Functions

virtual ~IParticleHelper ()
 Virtual destructor.
 DeclareInterfaceID (IParticleHelper, 1, 0)
 Creates the InterfaceID and interfaceID() method.
virtual ISFParticle * 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 =0
 Create a new particle.
virtual ISFParticle * 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 =0
 Create a new particle.
virtual ISFParticle * 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 =0
 Create a new particle.
virtual ISFParticle * updatedParticle (const ISFParticle &origIsp, const Amg::Vector3D &updatedPos, const Amg::Vector3D &updatedMom, double deltaTime=0.) const =0
 An updated particle (e.g.
virtual ISFParticle * updatedParticle (const ISFParticle &origIsp, const HepGeom::Point3D< double > &updatedPos, const HepGeom::Vector3D< double > &updatedMom, double deltaTime=0.) const =0
 An updated particle (e.g.

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 ,
1 ,
0  )

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: