Update DataLoader and ESDtrack
authoralibrary <alibrary@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 16 Apr 2004 13:32:32 +0000 (13:32 +0000)
committeralibrary <alibrary@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 16 Apr 2004 13:32:32 +0000 (13:32 +0000)
STEER/AliDataLoader.cxx
STEER/AliDataLoader.h
STEER/AliESDtrack.cxx
STEER/AliESDtrack.h

index ad82a20..342f93e 100644 (file)
@@ -742,8 +742,9 @@ Int_t AliBaseLoader::Load(Option_t* opt)
 
   if (Get())
    {
-      Warning("Load","Data <<%s>> are already loaded. Use ReloadData to force reload. Nothing done",GetName());
-      return 0;
+     if (GetDebug())
+       Warning("Load","Data <<%s>> are already loaded. Use ReloadData to force reload. Nothing done",GetName());
+     return 0;
    }
   
   Int_t retval;
index 701fdb3..f4debec 100644 (file)
@@ -1,5 +1,10 @@
 #ifndef ALIDATALOADER_H
 #define ALIDATALOADER_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+/* $Id$ */
+
 //__________________________________________
 ////////////////////////////////////////////
 //                                        //
index 2db574f..a0736c8 100644 (file)
@@ -72,6 +72,11 @@ fRICHsignal(-1)
     fPHOSr[i]=1.;
     fRICHr[i]=1.;
   }
+  fPHOSr[kSPECIES]= 1.;
+  fPHOSr[kSPECIES+1]= 1.;
+  fPHOSr[kSPECIES+2]= 1.;
+  fPHOSr[kSPECIES+3]= 1.;
+
   fPHOSpos[0]=fPHOSpos[1]=fPHOSpos[2]=0.;
   Int_t i;
   for (i=0; i<5; i++)  { fRp[i]=0.; fCp[i]=0.; fIp[i]=0.; fOp[i]=0.;}
@@ -511,14 +516,14 @@ void AliESDtrack::GetTOFpid(Double_t *p) const {
 //_______________________________________________________________________
 void AliESDtrack::SetPHOSpid(const Double_t *p) {  
   // Sets the probability of each particle type (in PHOS)
-  for (Int_t i=0; i<kSPECIES; i++) fPHOSr[i]=p[i];
+  for (Int_t i=0; i<kSPECIES+4; i++) fPHOSr[i]=p[i];
   SetStatus(AliESDtrack::kPHOSpid);
 }
 
 //_______________________________________________________________________
 void AliESDtrack::GetPHOSpid(Double_t *p) const {
   // Gets probabilities of each particle type (in PHOS)
-  for (Int_t i=0; i<kSPECIES; i++) p[i]=fPHOSr[i];
+  for (Int_t i=0; i<kSPECIES+4; i++) p[i]=fPHOSr[i];
 }
 
 
index 49ffda7..72c0a93 100644 (file)
@@ -113,6 +113,7 @@ public:
 
   Bool_t IsOn(Int_t mask){ return (fFlags&mask)>0;}
   Bool_t IsRICH(){ return fFlags&kRICHpid;}
+  Bool_t IsPHOS(){ return fFlags&kPHOSpid;}
   enum {
     kITSin=0x0001,kITSout=0x0002,kITSrefit=0x0004,kITSpid=0x0008,
     kTPCin=0x0010,kTPCout=0x0020,kTPCrefit=0x0040,kTPCpid=0x0080,
@@ -123,8 +124,11 @@ public:
     kESDpid=0x40000000,
     kTIME=0x80000000
   }; 
-  enum {kSPECIES=5}; // Number of particle species recognized by the PID
-
+  enum {
+    kSPECIES=5, // Number of particle species recognized by the PID
+    kElectron=0, kMuon=1, kPion=2, kKaon=3, kProton=4, kPhoton=5, 
+    kPi0=6, kNeutron=7, kKaon0=8 // PHOS definition
+  };
 protected:
   ULong_t   fFlags;        // Reconstruction status flags 
   Int_t     fLabel;        // Track label
@@ -186,7 +190,7 @@ protected:
   // PHOS related track information 
   Float_t fPHOSpos[3]; //position localised by PHOS in global coordinate system
   Float_t fPHOSsignal; // energy measured by PHOS
-  Float_t fPHOSr[kSPECIES]; // PID information from PHOS
+  Float_t fPHOSr[kSPECIES+4]; // PID information from PHOS
 
   // HMPID related track information
   Float_t fRICHsignal;     // detector's PID signal (beta for RICH)