15 #ifndef DD4HEP_DDG4_GEANT4INPUTHANDLING_H
16 #define DD4HEP_DDG4_GEANT4INPUTHANDLING_H
23 class G4PrimaryVertex;
24 class G4PrimaryParticle;
31 namespace Simulation {
43 Geant4Particle*
createPrimary(
int particle_id,
const Geant4Vertex*
v,
const G4PrimaryParticle* g4p);
46 Geant4PrimaryInteraction*
createPrimary(
int mask, Geant4PrimaryMap* pm,
const G4PrimaryVertex* gv);
62 double dx,
double dy,
double dz,
double dt);
67 const Geant4Context* context,
Geant4PrimaryInteraction Interaction
int smearInteraction(const Geant4Action *caller, Geant4PrimaryEvent::Interaction *inter, double dx, double dy, double dz, double dt)
Smear the primary vertex of an interaction.
int boostInteraction(const Geant4Action *caller, Geant4PrimaryEvent::Interaction *inter, double alpha)
Boost particles of one interaction identified by its mask.
int mergeInteractions(const Geant4Action *caller, const Geant4Context *context)
Merge all interactions present in the context.
int generatePrimaries(const Geant4Action *caller, const Geant4Context *context, G4Event *event)
Generate all primary vertices corresponding to the merged interaction.
Geant4Vertex * createPrimary(const G4PrimaryVertex *g4)
Create a vertex object from it's G4 counterpart.
int generationInitialization(const Geant4Action *caller, const Geant4Context *context)
Initialize the generation of one event.