]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSPIDv1.h
Updating limits to cope both with p-A and A-p ZDC timing
[u/mrichter/AliRoot.git] / PHOS / AliPHOSPIDv1.h
index 77f9d3c0e003e5ff53ad43a3b710aec54cc8f00b..3e7ff285e1fbc0d68f5d230170a2172ba19b27eb 100644 (file)
@@ -8,6 +8,12 @@
 /* History of cvs commits:
  *
  * $Log$
+ * Revision 1.60  2007/04/01 15:40:15  kharlov
+ * Correction for actual vertex position implemented
+ *
+ * Revision 1.59  2007/03/06 06:57:46  kharlov
+ * DP:calculation of distance to CPV done in TSM
+ *
  * Revision 1.58  2006/04/12 11:32:03  alibrary
  * Simplification of Makefile and some small corrections
  *
@@ -34,7 +40,7 @@ class TFormula;
 class TPrincipal ;
 class TROOT ;
 class TTree ;
-class TVector3 ;
+#include "TVector3.h"
 #include <TMatrixDfwd.h>
 
 // --- AliRoot header files ---
@@ -51,12 +57,12 @@ class  AliPHOSPIDv1 : public AliPHOSPID {
 public:
   
   AliPHOSPIDv1() ;          // ctor   
-  AliPHOSPIDv1(const TString alirunFileNameFile, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
+  AliPHOSPIDv1(AliPHOSGeometry *geom);
   AliPHOSPIDv1(const AliPHOSPIDv1 & pid) ;          // cpy ctor            
   
   virtual ~AliPHOSPIDv1() ; // dtor
   
-  virtual void Exec(Option_t *option);  // Does the job
+  virtual void TrackSegments2RecParticles(Option_t *option);  // Does the job
 
   //Get file name that contain the PCA
   const TString GetFileNamePrincipal(TString particle) const;
@@ -64,10 +70,6 @@ public:
   //Get file name that contain PID parameters
   const TString GetFileNameParameters()      const {return fFileNameParameters ;}
 
-  // Get number of rec.particles in this run
-  virtual Int_t GetRecParticlesInRun() const {return fRecParticlesInRun ;}  
-
-
   // Get PID parameters as they are defined in fParameters
   Float_t GetParameterCalibration    (Int_t i)               const;
   Float_t GetParameterCpv2Emc        (Int_t i, TString axis) const;
@@ -77,7 +79,6 @@ public:
   Float_t GetParameterPi0Boundary    (Int_t i)               const;
 
   // Get energy-dependent PID parameters
-  Float_t GetCalibratedEnergy    (Float_t e)                 const;
   Float_t GetCpv2EmcDistanceCut  (TString axis, Float_t e)   const ;
   Float_t GetEllipseParameter    (TString particle, TString param, Float_t e) const;
 
@@ -106,14 +107,14 @@ public:
   void SetWriting(Bool_t toWrite = kFALSE){fWrite = toWrite;} 
   void Print(const Option_t * = "") const ; 
 
+  void GetVertex(void) ; //Extracts vertex in current event
+
   virtual const char * Version() const { return "pid-v1" ; }  
 
   AliPHOSPIDv1 & operator = (const AliPHOSPIDv1 & /*pid*/) { return *this ;} 
   
 private:
   
-  const TString BranchName() const ; 
-  virtual void  Init() ;
   virtual void  InitParameters() ;
   void          MakeRecParticles(void ) ;
   void          MakePID(void) ;
@@ -131,9 +132,7 @@ private:
   Int_t   GetHardPi0Bit   (AliPHOSEmcRecPoint * emc) const;
   TVector3      GetMomentumDirection(AliPHOSEmcRecPoint * emc, AliPHOSCpvRecPoint * cpv)const ;
   void          PrintRecParticles(Option_t * option) ;
-  virtual void  WriteRecParticles() ; 
   void          SetParameters() ; //Fills the matrix of parameters
-  void          Unload(); 
 
   //PID population
   void SetInitPID(const Double_t * pid) ;
@@ -143,7 +142,6 @@ private:
   Bool_t      fBayesian ;                 //  Do PID bayesian
   Bool_t      fDefaultInit;              //! kTRUE if the task was created by defaut ctor (only parameters are initialized)
   Bool_t      fWrite ;                   //! To write result to file 
-  Int_t       fNEvent ;                  //! current event number
   TString     fFileNamePrincipalPhoton ; //  File name of the photon principals
   TString     fFileNamePrincipalPi0 ;    //  File name of the pi0 principals
   TString     fFileNameParameters ;      //  File name with PID parameters
@@ -152,11 +150,12 @@ private:
   Double_t   *fX ;                       //! Shower shape for the principal data 
   Double_t   *fPPhoton ;                 //! Principal photon eigenvalues
   Double_t   *fPPi0 ;                    //! Principal pi0 eigenvalues
-  Int_t       fRecParticlesInRun ;       //! Total number of recparticles in one run
   TMatrixF    *fParameters;               //! Matrix of identification Parameters
 
+  TVector3   fVtx ;                      //! Vertex position in current event
+
   //Initial pid population
-  Double_t fInitPID[AliPID::kSPECIESN] ; // Initial population to do bayesian PID
+  Double_t fInitPID[AliPID::kSPECIESCN] ; // Initial population to do bayesian PID
   // pid probability function parameters
   // ToF
   Double_t fTphoton[3] ;       // gaussian tof response for photon
@@ -192,7 +191,7 @@ private:
   Float_t  fDispEnThreshold;          //Minimum energy to use shower shape
   Int_t    fDispMultThreshold ;       //Minimum multiplicity to use shower shape
 
-  ClassDef( AliPHOSPIDv1,12)  // Particle identifier implementation version 1
+  ClassDef( AliPHOSPIDv1,13)  // Particle identifier implementation version 1
 
 };