]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFtrackerMI.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / TOF / AliTOFtrackerMI.cxx
index 01794c5e4a812562e8239dfa07e4fa1ff882da6e..7cdd1cd33af535ca9c3658edc6700293e0da98f3 100644 (file)
@@ -70,6 +70,8 @@ AliTOFtrackerMI::AliTOFtrackerMI():
  { 
   //AliTOFtrackerMI main Ctor
 
+   for (Int_t ii=0; ii<kMaxCluster; ii++) fClusters[ii]=0x0;
+
    fDy=AliTOFGeometry::XPad(); 
    fDz=AliTOFGeometry::ZPad(); 
    fDebugStreamer = new TTreeSRedirector("TOFdebug.root");   
@@ -96,6 +98,10 @@ AliTOFtrackerMI::~AliTOFtrackerMI(){
     delete fSeeds;
     fSeeds=0x0;
   }
+
+  for (Int_t ii=0; ii<kMaxCluster; ii++)
+    if (fClusters[ii]) fClusters[ii]->Delete();
+
 }
 //_____________________________________________________________________________
 void AliTOFtrackerMI::GetPidSettings(AliESDpid *esdPID) {
@@ -271,12 +277,12 @@ void AliTOFtrackerMI::MatchTracks( Bool_t /*mLastStep*/) const {
 void AliTOFtrackerMI::MatchTracksMI(Bool_t mLastStep){
 
   //Match ESD tracks to clusters in TOF
-  const Float_t kTofOffset   = 26;  // time offset
+  const Float_t kTofOffset   = 0;  // time offset
   const Float_t kMinQuality  = -6.; // minimal quality
   const Float_t kMaxQualityD = 1.;  // max delta quality if cluster used
   const Float_t kForbiddenR  = 0.1; // minimal PID according TPC
 
-  static const Double_t kMasses[]={
+  static const Double_t kMasses[AliPID::kSPECIES+1]={
     0.000511, 0.105658, 0.139570, 0.493677, 0.938272, 1.875613
   };
   
@@ -297,7 +303,7 @@ void AliTOFtrackerMI::MatchTracksMI(Bool_t mLastStep){
   Float_t       mintimedist[kNclusterMax];
   Float_t       likelihood[kNclusterMax];
   Float_t       length[kNclusterMax];
-  Double_t      tpcpid[5];
+  Double_t      tpcpid[AliPID::kSPECIES+1]; // overrun_static - coverity warning
   dist3D[0][0]=1;
   
   for (Int_t i=0; i<fNseedsTOF; i++) {
@@ -311,10 +317,10 @@ void AliTOFtrackerMI::MatchTracksMI(Bool_t mLastStep){
     //
     t->GetTPCpid(tpcpid);
     Double_t sumpid=0;
-    for (Int_t ipid=0;ipid<5;ipid++){
+    for (Int_t ipid=0;ipid<AliPID::kSPECIES;ipid++){
       sumpid+=tpcpid[ipid];
     }
-    for (Int_t ipid=0;ipid<5;ipid++){
+    for (Int_t ipid=0;ipid<AliPID::kSPECIES;ipid++){
       if (sumpid>0) tpcpid[ipid]/=sumpid;
       else{
        tpcpid[ipid]=0.2;
@@ -433,7 +439,8 @@ void AliTOFtrackerMI::MatchTracksMI(Bool_t mLastStep){
       Double_t tof2=AliTOFGeometry::TdcBinWidth()*cluster->GetTDC()+kTofOffset; // in ps
       // Float_t tgamma = TMath::Sqrt(cluster->GetR()*cluster->GetR()+cluster->GetZ()*cluster->GetZ())/0.03;  //time for "primary" gamma
       //if (trackTOFin->GetPt()<0.7 && TMath::Abs(tgamma-tof2)<350) continue;  // gamma conversion candidate - TEMPORARY
-      for(Int_t j=0;j<=5;j++){
+      for(Int_t j=0;j<AliPID::kSPECIES+1;j++){
+       
        Double_t mass=kMasses[j];
        times[nfound][j]+=distances[4]/3e-2*TMath::Sqrt(mom*mom+mass*mass)/mom;   // add time distance
        if ( TMath::Abs(times[nfound][j]-tof2)<mintimedist[nfound] && tpcpid[j]>kForbiddenR){
@@ -530,7 +537,7 @@ void AliTOFtrackerMI::MatchTracksMI(Bool_t mLastStep){
                      -1,
                      tgamma,
                      qualityGold,
-                     cgold->GetQuality()};
+                     static_cast<Float_t>(cgold->GetQuality())};
     //    GetLinearDistances(trackTOFin,cgold,&info[6]);
     if (inonfake>=0){
       info[6] = inonfake;