EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4ParticleGenerator.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4ParticleGenerator.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4MAIN_PHG4PARTICLEGENERATOR_H
4 #define G4MAIN_PHG4PARTICLEGENERATOR_H
5 
7 
8 #include <cmath>
9 #include <string> // for string
10 
11 class PHCompositeNode;
12 
14 {
15  public:
16  PHG4ParticleGenerator(const std::string &name = "PGENERATOR");
17  ~PHG4ParticleGenerator() override {}
18 
19  int process_event(PHCompositeNode *topNode) override;
20  void set_z_range(const double z_min, const double z_max);
21  void set_eta_range(const double eta_min, const double eta_max);
22  void set_phi_range(const double phi_min, const double phi_max);
23  void set_mom_range(const double mom_min, const double mom_max);
24  void Print(const std::string &what = "ALL") const override;
25 
26  protected:
27  double m_ZMin = -10.;
28  double m_ZMax = 10.;
29  double m_EtaMin = -1.;
30  double m_EtaMax = 1.;
31  double m_PhiMin = -M_PI;
32  double m_PhiMax = M_PI;
33  double m_MomMin = 0.;
34  double m_MomMax = 10.;
35 };
36 
37 #endif