]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TUHKMgen/AliGenUHKM.h
Adding macros to create Calibration objects
[u/mrichter/AliRoot.git] / TUHKMgen / AliGenUHKM.h
index 546a8cef0ebc8c6a218f0efc7da054cc4ee267e6..4d9f0f4662f8c4f5aec4e5fb6c6b619bb8c32c1f 100755 (executable)
@@ -6,40 +6,23 @@
 #ifndef ALIGENUHKM_H
 #define ALIGENUHKM_H
 
+#include <string>
+
+//#include <TString.h>
+//#include <TParticle.h>
+
 #include "AliGenMC.h"
-#include <TString.h>
 #include "TUHKMgen.h"
 #ifndef INITIALSTATEHYDJET_H
 #include "InitialStateHydjet.h"
 #endif
-#include "TParticle.h"
 
-#include <string>
 using namespace std;
 
 
 class AliGenUHKM : public AliGenMC
 {
- protected:
-  Int_t       fTrials;         // Number of trials
-  TUHKMgen    *fUHKMgen;       // UHKM
-  
-  InitialParamsHydjet_t fHydjetParams;    // list of parameters for the initial state
-  // details for the PDG database
-  Char_t fParticleFilename[256];            // particle list filename
-  Char_t fDecayFilename[256];               // decay table filename
-  Int_t fStableFlagPDG[500];                // array of PDG codes flagged
-  Bool_t fStableFlagStatus[500];            // array of decay flag status
-  Int_t fStableFlagged;                     // number of toggled decay flags
-
-  void SetAllParameters();
-  void CheckPDGTable();
-  
- private:
-  void Copy(TObject &rhs) const;
-  AliGenUHKM(const AliGenUHKM&);
-  AliGenUHKM & operator = (const AliGenUHKM &);
-  
+   
  public:
   AliGenUHKM();
   AliGenUHKM(Int_t npart);
@@ -65,7 +48,7 @@ class AliGenUHKM : public AliGenMC
   void SetMuQ(Double_t value) {fHydjetParams.fMuI3 = value;}  // Isospin chemical potential [GeV]
   void SetThFrzTemperature(Double_t value) {fHydjetParams.fThFO = value;}  // Temperature for the thermal freezeout [GeV]
   void SetMuPionThermal(Double_t value) {fHydjetParams.fMu_th_pip = value;} // Chemical potential for pi+ at thermal freezeout [GeV]
-  void SetSeed(Int_t value) {fHydjetParams.fSeed = value;} //parameter to set the random nuber seed (=0 the current time is used
+  virtual void SetSeed(UInt_t value) {fHydjetParams.fSeed = value;} //parameter to set the random nuber seed (=0 the current time is used
   //to set the random generator seed, !=0 the value fSeed is
   //used to set the random generator seed and then the state of random
   //number generator in PYTHIA MRPY(1)=fSeed
@@ -103,8 +86,8 @@ class AliGenUHKM : public AliGenMC
                                                    //gluons (0: small-angular, 1: wide-angular, 2:collinear) (default: 0).
 
 
-  void SetPDGParticleFile(const Char_t *name) {strcpy(fParticleFilename, name);}//Set the filename containing the particle PDG info
-  void SetPDGDecayFile(const Char_t *name) {strcpy(fDecayFilename, name);} //Set the filename containing the PDG decay channels info
+  void SetPDGParticleFile(const Char_t *name) {strncpy(fParticleFilename, name, 255);}//Set the filename containing the particle PDG info
+  void SetPDGDecayFile(const Char_t *name) {strncpy(fDecayFilename, name, 255);} //Set the filename containing the PDG decay channels info
   void SetPDGParticleStable(Int_t pdg, Bool_t value) { // Turn on/off the decay flag for a PDG particle
     fStableFlagPDG[fStableFlagged] = pdg;
     fStableFlagStatus[fStableFlagged++] = value;
@@ -142,6 +125,26 @@ class AliGenUHKM : public AliGenMC
   const Char_t*  GetPDGParticleFile() const {return fParticleFilename;}
   const Char_t*  GetPDGDecayFile() const {return fDecayFilename;}
 
+ protected:
+  Int_t       fTrials;         // Number of trials
+  TUHKMgen    *fUHKMgen;       // UHKM
+  
+  InitialParamsHydjet_t fHydjetParams;    // list of parameters for the initial state
+  // details for the PDG database
+  Char_t fParticleFilename[256];            // particle list filename
+  Char_t fDecayFilename[256];               // decay table filename
+  Int_t fStableFlagPDG[500];                // array of PDG codes flagged
+  Bool_t fStableFlagStatus[500];            // array of decay flag status
+  Int_t fStableFlagged;                     // number of toggled decay flags
+
+  void SetAllParameters();
+  void CheckPDGTable();
+  
+ private:
+  void Copy(TObject &rhs) const;
+  AliGenUHKM(const AliGenUHKM&);
+  AliGenUHKM & operator = (const AliGenUHKM &);
+
   ClassDef(AliGenUHKM, 6) // AliGenerator interface to UHKM
 };
 #endif