|
DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Go to the documentation of this file.
14 #ifndef DDG4_GEANT4PRIMARY_H
15 #define DDG4_GEANT4PRIMARY_H
29 class G4PrimaryParticle;
66 typedef std::map<const G4PrimaryParticle*,Geant4Particle*>
Primaries;
175 std::vector<Geant4PrimaryInteraction*>
interactions()
const;
180 #endif // DDG4_GEANT4PRIMARY_H
Geant4PrimaryEvent(const Geant4PrimaryEvent &c)=delete
Copy constructor.
Class modelling a complete primary event with multiple interactions.
Data structure to map primaries to particles.
int nextPID()
Access a new particle identifier within the interaction.
Geant4PrimaryEvent & operator=(const Geant4PrimaryEvent &c)=delete
Assignment operator.
Primaries & primaries()
Access primary map directly.
std::vector< Geant4PrimaryInteraction * > interactions() const
Retrieve all interactions.
dd4hep_ptr< PrimaryExtension > ExtensionHandle
Class modelling a single interaction with multiple primary vertices and particles.
int locked
Flag that the event is locked for G4 native generators.
Geant4PrimaryEvent()=default
Default constructor.
VertexMap vertices
The map of primary vertices for the particles.
bool applyMask()
Apply mask to all contained vertices (max. 1) and particles.
ParticleMap particles
The map of particles participating in this primary interaction.
Geant4PrimaryMap()=default
not persistent
int mask
User mask to flag the interaction. Also unique identifier.
const Primaries & primaries() const
Access primary map directly (const)
void setNextPID(int value)
Set the next PID value.
void insert(G4PrimaryParticle *g4_particle, Geant4Particle *particle)
Add a new object pair (G4 primary particle, DDG4 particle) into the maps.
Geant4PrimaryInteraction Interaction
Interactions m_interactions
Set of primary interactions.
int next_particle_identifier
Next PID indentifier.
virtual ~Geant4PrimaryMap()
Default destructor.
PrimaryExtension()=default
Default constructor.
Base structure to extend primary information with user data.
size_t size() const
Number of interaction contained in the primary event.
virtual ~PrimaryExtension()
Default destructor.
std::map< const G4PrimaryParticle *, Geant4Particle * > Primaries
dd4hep_ptr< PrimaryExtension > ExtensionHandle
Geant4PrimaryInteraction & operator=(const Geant4PrimaryInteraction &c)=delete
Assignment operator.
Namespace for the AIDA detector description toolkit.
std::map< int, Interaction * > Interactions
ExtensionHandle extension
User data extension if required.
Geant4PrimaryInteraction()=default
Default constructor.
std::map< int, Particle * > ParticleMap
Data structure to store the MC particle information.
Data structure to store the MC vertex information.
virtual ~Geant4PrimaryInteraction()
Default destructor.
Primaries m_primaryMap
Mapping of primary particles of this event.
virtual ~Geant4PrimaryEvent()
Default destructor.
Geant4Particle * get(const G4PrimaryParticle *particle)
Access DDG4 particle by G4 primary particle.
void add(int id, Geant4PrimaryInteraction *interaction)
Add a new interaction object to the event.
ExtensionHandle extension
User data extension if required.
Geant4PrimaryInteraction(const Geant4PrimaryInteraction &c)=delete
Copy constructor.
Geant4PrimaryInteraction * get(int id) const
Retrieve an interaction by its ID.
std::map< int, std::vector< Vertex * > > VertexMap