1 #ifndef PHG4ParticleGeneratorBase_H__
2 #define PHG4ParticleGeneratorBase_H__
8 #include <gsl/gsl_rng.h>
24 virtual void set_name(
const std::string &particle =
"proton");
25 virtual void set_pid(
const int pid);
26 virtual void set_mom(
const double x,
const double y,
const double z);
27 virtual void set_vtx(
const double x,
const double y,
const double z);
35 virtual void Print(
const std::string &what =
"ALL")
const;
36 virtual void AddParticle(
const std::string &particle,
const double x,
const double y,
const double z);
37 virtual void AddParticle(
const int pid,
const double x,
const double y,
const double z);
43 void set_seed(
const unsigned int iseed);
50 double get_mass(
const int pdgcode)
const;
int get_reuse_existing_vertex() const
void set_reuse_existing_vertex(const int i=1)
int get_pdgcode(const std::string &name) const
virtual int ReuseExistingVertex(PHCompositeNode *topNode)
std::vector< PHG4Particle * > particlelist
virtual void set_mom(const double x, const double y, const double z)
std::string get_pdgname(const int pdgcode) const
virtual void set_t0(const double t)
virtual void AddParticle(const std::string &particle, const double x, const double y, const double z)
virtual void set_vtx(const double x, const double y, const double z)
PHG4ParticleGeneratorBase(const std::string &name="GENERATORBASE")
unsigned int get_seed() const
void set_seed(const unsigned int iseed)
virtual int InitRun(PHCompositeNode *topNode)
void CheckAndCreateParticleVector()
double get_mass(const int pdgcode) const
void SetParticleId(PHG4Particle *particle, PHG4InEvent *ineve)
virtual double get_vtx_x() const
virtual ~PHG4ParticleGeneratorBase()
virtual int process_event(PHCompositeNode *topNode)
virtual double get_vtx_y() const
virtual double get_vtx_z() const
virtual void set_name(const std::string &particle="proton")
gsl_rng * RandomGenerator
virtual double get_t0() const
virtual void set_pid(const int pid)
virtual void Embed(const int i=1)
virtual void Print(const std::string &what="ALL") const
int reuse_existing_vertex