]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Fixes for bug #61900: Restore capaibility to chooses ITS PID method (Marco)
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 26 Jan 2010 16:33:03 +0000 (16:33 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 26 Jan 2010 16:33:03 +0000 (16:33 +0000)
ITS/AliITSReconstructor.cxx
ITS/AliITSReconstructor.h
STEER/AliESDpid.h

index 63fb7284dc8dd8e0bd24a9406c13a955c57e48ec..ddafe68e3320cc0a9af872b6d3ad77e31c54c4f0 100644 (file)
@@ -25,6 +25,8 @@
 #include "AliITSReconstructor.h"
 #include "AliRun.h"
 #include "AliRawReader.h"
+#include "AliESDEvent.h"
+#include "AliESDpid.h"
 #include "AliITSDetTypeRec.h"
 #include "AliITSgeom.h"
 #include "AliITSLoader.h"
@@ -37,7 +39,6 @@
 #include "AliITSVertexer3D.h"
 #include "AliITSVertexerZ.h"
 #include "AliITSVertexerCosmics.h"
-#include "AliESDEvent.h"
 #include "AliITSInitGeometry.h"
 #include "AliITSTrackleterSPDEff.h"
 
@@ -55,7 +56,22 @@ AliITSReconstructor::~AliITSReconstructor(){
 // destructor
   if(fDetTypeRec) delete fDetTypeRec;
 } 
+//____________________________________________________________________________
+void AliITSReconstructor::GetPidSettings(AliESDpid *ESDpid) {
+  //
+  // pass PID settings from AliITSRecoParam to AliESDpid
+  //
+  Int_t pidOpt = GetRecoParam()->GetPID();
 
+  if(pidOpt==1){
+    AliInfo("ITS LandauFitPID option has been selected\n");
+    ESDpid->SetITSPIDmethod(AliESDpid::kITSLikelihood);
+  }
+  else{
+    AliInfo("ITS default PID\n");
+    ESDpid->SetITSPIDmethod(AliESDpid::kITSTruncMean);
+  }
+}
 //______________________________________________________________________
 void AliITSReconstructor::Init() {
     // Initalize this constructor bet getting/creating the objects
@@ -152,20 +168,6 @@ AliTracker* AliITSReconstructor::CreateTracker() const
     sat->SetMinNPoints(GetRecoParam()->GetMinNPointsSA());
   }
 
-  Int_t pidOpt = GetRecoParam()->GetPID();
-
-  AliITSReconstructor* nc = const_cast<AliITSReconstructor*>(this);
-  /*
-  if(pidOpt==1){
-    Info("FillESD","ITS LandauFitPID option has been selected\n");
-    nc->fItsPID = new AliITSpidESD2();
-  }
-  else{
-    Info("FillESD","ITS default PID\n");
-    Double_t parITS[] = {79.,0.13, 5.}; //IB: this is  "pp tuning"
-    nc->fItsPID = new AliITSpidESD1(parITS);
-  }
-  */ 
   return tracker;
   
 }
@@ -229,7 +231,7 @@ AliVertexer* AliITSReconstructor::CreateVertexer() const
 
 //_____________________________________________________________________________
 void AliITSReconstructor::FillESD(TTree * /*digitsTree*/, TTree * /*clustersTree*/, 
-                                 AliESDEvent* esd) const
+                                 AliESDEvent* /* esd */) const
 {
 // make PID, find V0s and cascade
 /* Now done in AliESDpid
index 4ee059f02dc1140d335125239dddbfd77c5ede3b..692b07e03bd59404a2c4c447248d699ebb3f7601 100644 (file)
@@ -13,6 +13,7 @@
 #include "AliReconstructor.h"
 #include "AliITSRecoParam.h"
 
+class AliESDpid;
 class AliITSgeom;
 class AliTracker;
 class AliITStrackerMI;
@@ -23,7 +24,7 @@ public:
   AliITSReconstructor();
   virtual ~AliITSReconstructor();
   virtual void         Init();
-  
+  virtual void         GetPidSettings(AliESDpid *ESDpid);
   virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
   virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
 
@@ -32,7 +33,7 @@ public:
   virtual AliTracker*  CreateTrackleter() const;
 
   virtual void         FillESD(TTree* /*digitsTree*/, TTree* clustersTree, 
-                              AliESDEvent* esd) const; 
+                              AliESDEvent* /* esd */) const; 
   virtual void         FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree, 
                               AliESDEvent* esd) const
   {FillESD((TTree*)NULL, clustersTree, esd);}
index 562a63c0f1e4a05ea930aeff43183065e9ad48cc..8cb88734f243d9bb33fcfa9b295349deb5a1368e 100644 (file)
@@ -31,6 +31,10 @@ public:
   //  void MakeHMPIDPID(AliESDtrack *track);
   //  void MakeTRDPID(AliESDtrack *track);
   void CombinePID(AliESDtrack *track) const;
+
+  enum ITSPIDmethod { kITSTruncMean, kITSLikelihood };
+  void SetITSPIDmethod(ITSPIDmethod pmeth) { fITSPIDmethod = pmeth; }
+
   Float_t NumberOfSigmasTPC(const AliESDtrack *track, AliPID::EParticleType type) const;
   Float_t NumberOfSigmasTOF(const AliESDtrack *track, AliPID::EParticleType type, const Float_t TimeZeroTOF) const;
   Float_t NumberOfSigmasITS(const AliESDtrack *track, AliPID::EParticleType type) const;
@@ -39,7 +43,6 @@ public:
   AliTPCPIDResponse &GetTPCResponse() {return fTPCResponse;}
   AliTOFPIDResponse &GetTOFResponse() {return fTOFResponse;}
 
-  enum ITSPIDmethod { kITSTruncMean, kITSLikelihood };
 
 private:
   Float_t           fRange;          // nSigma max in likelihood