- Reshuffling of the particle codes in AliPID. Now the light nuclei are between the
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliEMCALPIDResponse.h
1 #ifndef AliEMCALPIDResponse_h
2 #define AliEMCALPIDResponse_h
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //////////////////////////////////////////////////////////////////////////
8 //                                                                      //
9 // AliEMCALPIDResponse                                                  //
10 //                                                                      //
11 // EMCAL class to perfom PID                                            //
12 // This is a prototype and still under development                      //
13 //                                                                      //
14 // Author: Michael Weber (m.weber@cern.ch)                              //
15 //////////////////////////////////////////////////////////////////////////
16
17 #include "AliPID.h"
18 #include <TVectorD.h>
19
20 class TF1;
21
22 class AliEMCALPIDResponse: public TObject 
23 {
24 public : 
25     AliEMCALPIDResponse();    //ctor
26     AliEMCALPIDResponse( const AliEMCALPIDResponse& other);                //copy ructor
27     AliEMCALPIDResponse &operator=( const AliEMCALPIDResponse& other);     //assignment operator
28
29     virtual ~AliEMCALPIDResponse();     //dtor
30   
31
32     // Getters
33     Double_t  GetNumberOfSigmas( Float_t pt,  Float_t eop, AliPID::EParticleType n,  Int_t charge) const;
34     Double_t  GetExpectedNorm  ( Float_t pt, AliPID::EParticleType n,  Int_t charge) const;
35   
36     //Setters
37     void   SetPIDParams(const TObjArray * params) { fkPIDParams = params; }
38     
39
40     // EMCAL probability
41     Bool_t ComputeEMCALProbability(Int_t nSpecies, Float_t pt, Float_t eop, Int_t charge, Double_t *pEMCAL) const;
42
43 protected:
44   
45 private:
46
47   TF1 *fNorm;                            // Gauss function for normalizing NON electron probabilities 
48
49   const TObjArray *fkPIDParams;               // PID Params
50
51   const TVectorD* GetParams(Int_t nParticle, Float_t fPt, Int_t charge) const; 
52
53   ClassDef(AliEMCALPIDResponse, 1)
54 };
55
56 #endif // #ifdef AliEMCALPIDResponse_cxx
57