]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TTherminator/TTherminator.cxx
Fix Coverity reports
[u/mrichter/AliRoot.git] / TTherminator / TTherminator.cxx
index 365af39a65f12ef969b6716477f568c87c49ae3f..6fb0d961faf67f4e214ce528e0b783cd079ac8f7 100644 (file)
@@ -35,6 +35,7 @@
 #include <TDatabasePDG.h>
 #include <TParticle.h>
 #include <TClonesArray.h>
+#include <TClass.h>
 
 ReadPar *sRPInstance;
 STR      sRPFileName;
@@ -55,6 +56,7 @@ TTherminator::TTherminator():
   fPartDB = new ParticleDB();
 }
 TTherminator::TTherminator(const TTherminator & therm) :
+  TGenerator(therm),
   fCalka(0),
   fEvent(0),
   fPartDB(0)
@@ -202,6 +204,8 @@ void        TTherminator::Initialize(){
        }
       in.close();
     }
+
+  delete tParser;
 }
 
 void        TTherminator::GenerateEvent()
@@ -221,16 +225,18 @@ void        TTherminator::GenerateEvent()
     }  
 }
 
-Int_t       TTherminator::ImportParticles(TClonesArray *particles, Option_t *option)
+Int_t       TTherminator::ImportParticles(TClonesArray *particles, Option_t */*option*/)
 {
   // Import particles from a generated event into an external array
+  const double kFmToGev = 0.197327;
+
   if (particles == 0) return 0;
   TClonesArray &particlesR = *particles;
   particlesR.Clear();
   Int_t nump = 0;
   if (!fEvent) return 0;
   Int_t numpart = fEvent->GetParticleCount();
-  printf("\n TTherminator: Therminator stack contains %d particles.", numpart);
+  printf("\n TTherminator: Therminator stack contains %d particles.\n", numpart);
   for (Int_t iPart=0; iPart<numpart; iPart++) {
     Particle *tPart = fEvent->GetParticleOfCount(iPart);
     Int_t tFather;
@@ -245,19 +251,20 @@ Int_t       TTherminator::ImportParticles(TClonesArray *particles, Option_t *opt
     nump++;
     //    printf("Putting %d %d %lf %d\n", tPart->GetParticleType()->GetPDGCode(), iPart, tPart->px, tPart);
     new (particlesR[iPart]) TParticle(tPart->GetParticleType()->GetPDGCode(), tPart->HadDecayed(),
-                                     tFather, -1, -1, -1,
-                                     tPart->px, tPart->py, tPart->pz, tPart->GetEnergy() ,
-                                     tPart->rx*1.e-13, tPart->ry*1.e-13, tPart->rz*1.e-13, tPart->rt*1.e-13/300000000 
-                                     );
+                                     tFather, -1, -1, -1,
+                                     tPart->px, tPart->py, tPart->pz, tPart->GetEnergy() ,
+                                     tPart->rx*1.e-13*kFmToGev, tPart->ry*1.e-13*kFmToGev, tPart->rz*1.e-13*kFmToGev, tPart->rt*1.e-13*kFmToGev/3e10);
     particlesR[iPart]->SetUniqueID(iPart);
   }
   
   return nump;
 }
 
-TObjArray*  TTherminator::ImportParticles(Option_t *option)
+TObjArray*  TTherminator::ImportParticles(Option_t */*option*/)
 {
   // Import generated particles into an internal array
+  const double kFmToGev = 0.197327;
+
   Int_t nump = 0;
   fParticles->Clear();
   if (!fEvent) return 0;
@@ -278,8 +285,7 @@ TObjArray*  TTherminator::ImportParticles(Option_t *option)
     TParticle* p = new TParticle(tPart->GetParticleType()->GetPDGCode(), tPart->HadDecayed(),
                                 tFather, -1, -1, -1,
                                 tPart->px, tPart->py, tPart->pz, tPart->GetEnergy() ,
-                                tPart->rx*1.e-13, tPart->ry*1.e-13, tPart->rz*1.e-13, tPart->rt*1.e-13/300000000 
-                                );
+                                tPart->rx*1.e-13*kFmToGev, tPart->ry*1.e-13*kFmToGev, tPart->rz*1.e-13*kFmToGev, tPart->rt*1.e-13*kFmToGev/3e10);
     p->SetUniqueID(iPart);
     fParticles->Add(p);
   }