k4SimGeant4
|
Tool that generates single particles with parameters set via options file. More...
#include "SimG4SingleParticleGeneratorTool.h"
Public Member Functions | |
SimG4SingleParticleGeneratorTool (const std::string &type, const std::string &name, const IInterface *parent) | |
Standard constructor. | |
virtual StatusCode | initialize () final |
virtual | ~SimG4SingleParticleGeneratorTool () |
Destructor. | |
virtual G4Event * | g4Event () final |
Generates primaries using the parameters set via options file, uses CLHEP:RandFlat random number generator. | |
Public Member Functions inherited from ISimG4EventProviderTool | |
DeclareInterfaceID (ISimG4EventProviderTool, 1, 0) | |
Private Member Functions | |
StatusCode | saveToEdm (const G4PrimaryVertex *, const G4PrimaryParticle *) |
Saves primary vertex and particle to FCC EDM (called if property saveEDM is set to true) | |
Private Attributes | |
Gaudi::Property< double > | m_energyMin {this, "energyMin", 1 * CLHEP::GeV, "Minimum energy of generated particles"} |
Minimum energy of the particles generated, set with energyMin. | |
Gaudi::Property< double > | m_energyMax {this, "energyMax", 1 * CLHEP::TeV, "Maximum energy of generated particles"} |
Maximum energy of the particles generated, set with energyMax. | |
Gaudi::Property< double > | m_etaMin {this, "etaMin", -5., "Minimum eta of generated particles"} |
Minimum eta of the particles generated, set with etaMin. | |
Gaudi::Property< double > | m_etaMax {this, "etaMax", 5, "Maximum eta of generated particles"} |
Maximum eta of the particles generated, set with etaMax. | |
Gaudi::Property< double > | m_phiMin {this, "phiMin", 0., "Minimum phi of generated particles"} |
Minimum phi of the particles generated, set with phiMin. | |
Gaudi::Property< double > | m_phiMax {this, "phiMax", 2 * M_PI, "Maximum phi of generated particles"} |
Maximum phi of the particles generated, set with phiMax. | |
Gaudi::Property< double > | m_vertexX {this, "vertexX", 0} |
x position of the vertex associated with the particles generated, set with vertexX | |
Gaudi::Property< double > | m_vertexY {this, "vertexY", 0} |
y position of the vertex associated with the particles generated, set with vertexY | |
Gaudi::Property< double > | m_vertexZ {this, "vertexZ", 0} |
z position of the vertex associated with the particles generated, set with vertexZ | |
Gaudi::Property< std::string > | m_particleName {this, "particleName", "geantino", "Name of the generated particles"} |
Name of the generated particle, set with particleName. | |
Gaudi::Property< bool > | m_saveEdm {this, "saveEdm", false} |
Flag whether to save primary particle to EDM, set with saveEdm. | |
DataHandle< edm4hep::MCParticleCollection > | m_genParticlesHandle {"GenParticles", Gaudi::DataHandle::Writer, this} |
Handle for the genparticles to be written. | |
Tool that generates single particles with parameters set via options file.
SimG4SingleParticleGeneratorTool::SimG4SingleParticleGeneratorTool | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent ) |
Standard constructor.
|
virtual |
Destructor.
|
finalvirtual |
Generates primaries using the parameters set via options file, uses CLHEP:RandFlat random number generator.
Implements ISimG4EventProviderTool.
|
finalvirtual |
|
private |
Saves primary vertex and particle to FCC EDM (called if property saveEDM is set to true)
|
private |
Maximum energy of the particles generated, set with energyMax.
|
private |
Minimum energy of the particles generated, set with energyMin.
|
private |
Maximum eta of the particles generated, set with etaMax.
|
private |
Minimum eta of the particles generated, set with etaMin.
|
mutableprivate |
Handle for the genparticles to be written.
|
private |
Name of the generated particle, set with particleName.
|
private |
Maximum phi of the particles generated, set with phiMax.
|
private |
Minimum phi of the particles generated, set with phiMin.
|
private |
Flag whether to save primary particle to EDM, set with saveEdm.
|
private |
x position of the vertex associated with the particles generated, set with vertexX
|
private |
y position of the vertex associated with the particles generated, set with vertexY
|
private |
z position of the vertex associated with the particles generated, set with vertexZ