CMS 3D CMS Logo

CustomParticleFactory.h
Go to the documentation of this file.
1 #ifndef CustomParticleFactory_h
2 #define CustomParticleFactory_h 1
3 
5 
7 #include <vector>
8 #include <string>
9 
10 class G4DecayTable;
11 // ######################################################################
12 // ### CustomParticle ###
13 // ######################################################################
14 
16 
17  public:
18  static void loadCustomParticles(const std::string & filePath);
19  static const std::vector<G4ParticleDefinition *>& GetCustomParticles();
20 
21  private:
22 
23  static void addCustomParticle(int pdgCode, double mass, const std::string & name );
24  static void getMassTable(std::ifstream *configFile);
25  static G4DecayTable* getDecayTable(std::ifstream *configFile, int pdgId);
26  static G4DecayTable* getAntiDecayTable(int pdgId, G4DecayTable *theDecayTable);
27 
28  static bool loaded;
29  static std::vector<G4ParticleDefinition *> m_particles;
30 
32 
33 };
34 
35 #endif
static void loadCustomParticles(const std::string &filePath)
static std::vector< G4ParticleDefinition * > m_particles
static std::string ToLower(std::string str)
static void getMassTable(std::ifstream *configFile)
static G4DecayTable * getDecayTable(std::ifstream *configFile, int pdgId)
static void addCustomParticle(int pdgCode, double mass, const std::string &name)
static G4DecayTable * getAntiDecayTable(int pdgId, G4DecayTable *theDecayTable)
static const std::vector< G4ParticleDefinition * > & GetCustomParticles()