19#ifndef BDSBUNCHSIXTRACKLINK_H
20#define BDSBUNCHSIXTRACKLINK_H
23#include "BDSParticleExternal.hh"
54 int externalParticleID,
55 int externalParentID);
61 inline size_t Size()
const {
return particles.size();}
77 G4int currentExternalParticleID;
78 G4int currentExternalParentID;
82 std::vector<BDSParticleExternal*> particles;
A bunch distribution that holds a bunch from Sixtrack Link.
void UpdateGeant4ParticleDefinition(G4int pdgID)
TBC.
void AddParticle(BDSParticleDefinition *particleDefinitionIn, const BDSParticleCoordsFull &coordsIn, int externalParticleID, int externalParentID)
Append particle to the bunch for tracking.
virtual BDSParticleCoordsFull GetNextParticleLocal()
Get the next particle.
virtual void UpdateIonDefinition()
Override method in BDSBunch to use our local currentParticleDefinition member.
int CurrentExternalParentID() const
Accessor.
virtual const BDSParticleDefinition * ParticleDefinition() const
Access the current particle definition of the current particle in the bunch.
void ClearParticles()
Delete all particle objects in the bunch and clear the vector.
size_t Size() const
Accessor.
int CurrentExternalParticleID() const
Accessor.
G4int size
Number of particles (1 counting).
The base class for bunch distribution generators.
A set of particle coordinates including energy and weight.
Wrapper for particle definition.