]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSSteerPid.h
Changes to obey to the coding conventions (M. Lunardon)
[u/mrichter/AliRoot.git] / ITS / AliITSSteerPid.h
1 #ifndef AliITSSTEERPID_H
2 #define AliITSSTEERPID_H
3 ////////////////////////////////////////////////////////////////////////
4 //Steering lass for PID in ITS                                          //
5 //The PID is based on the likelihood of all the four ITS' layers,       //
6 //without using the truncated mean for the dE/dx. The response          //
7 //functions for each layer are convoluted Landau-Gaussian functions.    //                  
8 //Origin: Elena Bruna bruna@to.infn.it, Massimo Masera masera@to.infn.it//
9 ////////////////////////////////////////////////////////////////////////
10
11 /* $Id$ */
12
13 #include <TObject.h>
14 #include <Riostream.h>
15 #include <TF1.h>
16 #include <TTree.h>
17 #include <TFile.h>
18 #include "AliITSPidParItem.h"
19
20
21 class AliITSSteerPid : public TObject{
22
23  public:
24   AliITSSteerPid();
25   virtual ~AliITSSteerPid();
26   void InitLayer(TString fileITS="$ALICE_ROOT/ITS/farrfitits.root",TString fileFitPar="$ALICE_ROOT/ITS/ffitparams.root");
27   
28   AliITSPidParItem* GetItemLayer(Int_t nolay,Float_t mom);
29   void GetParFitLayer(Int_t nolay,Float_t mom,Double_t *parp,Double_t *park,Double_t *parpi);
30   static void GetLangausProPars(Float_t mom,Double_t *parfit0,Double_t *parfit1,Double_t *parfit3,Double_t *par);
31   static void GetLangausKaoPars(Float_t mom,Double_t *parfit0,Double_t *parfit1,Double_t *parfit3,Double_t *par);
32   static void GetLangausPiPars(Float_t mom,Double_t *parfit0,Double_t *parfit1,Double_t *parfit3,Double_t *par);
33
34  
35  private:
36
37   AliITSPidParItem* Item(TClonesArray *Vect,Float_t mom);
38   AliITSSteerPid(const AliITSSteerPid &ob); // copy constructor
39   AliITSSteerPid& operator=(const AliITSSteerPid & ob); // ass. op.
40
41
42   TFile *fClonarr2;              // file of TClones Array
43   TClonesArray *fVect2;          // TClonesArray fVect
44   TClonesArray *fVect2lay1;     // TClonesArray for layer 1 (SDD1)
45   TClonesArray *fVect2lay2;     // TClonesArray for layer 2 (SDD2)
46   TClonesArray *fVect2lay3;     // TClonesArray for layer 3 (SSD1)
47   TClonesArray *fVect2lay4;     // TClonesArray for layer 4 (SSD2)
48   TTree* fFitTree;               // tree
49   AliITSPidParItem *fItem;       //element of TClonesArray of interest
50   Float_t fPCenter;              //value for center
51   Float_t fPWidth;               //value for width
52   Double_t fBuff[52];            //array for
53   
54  
55   ClassDef(AliITSSteerPid,1);
56  
57
58 };
59 #endif