]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/SPECTRA/AliProtonFeedDownAnalysis.h
changed the order of call of endofcycle so that images are produced
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliProtonFeedDownAnalysis.h
CommitLineData
b3360800 1#ifndef ALIPROTONFEEDDOWNANALYSIS_H\r
2#define ALIPROTONFEEDDOWNANALYSIS_H\r
3\r
4#include "TObject.h"\r
5#include "TH1I.h"\r
6#include "AliCFContainer.h"\r
7class TF1;\r
8class TH2D;\r
9class TH1F;\r
10class TList;\r
11\r
12//#include "AliPID.h"\r
13class AliPID;\r
14\r
15class AliCFDataGrid;\r
16class AliAODEvent;\r
17class AliAODtrack;\r
18class AliESDEvent;\r
19class AliESDtrack;\r
20class AliExternalTrackParam;\r
21class AliStack;\r
22class AliESDVertex;\r
23class AliProtonAnalysisBase;\r
24\r
25class AliProtonFeedDownAnalysis : public TObject \r
26{\r
27 public:\r
28 enum \r
29 {\r
30 kAll = 0, //without protons reject the secondaries from hadronic inter. \r
31 kPrimary = 1,\r
32 kFromLambda = 2,\r
33 kSelected = 3 ,\r
34 kSelectedfromLambda = 4,\r
35 kNSteps=5\r
36 };\r
37 AliProtonFeedDownAnalysis();\r
c9fcf8c9 38 //AliProtonFeedDownAnalysis(Int_t nbinsY, Float_t fLowY, Float_t fHighY,Int_t nbinsPt, Float_t fLowPt, Float_t fHighPt);\r
b3360800 39 virtual ~AliProtonFeedDownAnalysis();\r
40 \r
41 void SetBaseAnalysis(AliProtonAnalysisBase * const baseAnalysis) {fProtonAnalysisBase = baseAnalysis;}\r
42 AliProtonAnalysisBase *GetProtonAnalysisBaseObject() const {return fProtonAnalysisBase;}\r
43 \r
44 void InitAnalysisHistograms(Int_t nbinsY, Float_t fLowY, Float_t fHighY, Int_t nbinsPt, Float_t fLowPt, Float_t fHighPt);\r
45 void Analyze(AliESDEvent *fESD, const AliESDVertex *vertex,AliStack *stack);\r
46 void Analyze(AliAODEvent *fAOD);\r
47 void Analyze(AliStack *stack);\r
48 \r
49 AliCFContainer *GetProtonContainer() const {return fProtonContainer;}\r
50 AliCFContainer *GetAntiProtonContainer() const {return fAntiProtonContainer;}\r
51 \r
52 void SetWeightFunction(TF1* weightfunction){fweightfunction=weightfunction;}\r
53 TF1* GetWeightFunction() const{return fweightfunction;} \r
c9fcf8c9 54 TH2F* GetLambdaHist() const{return fLambda;}\r
55 TH2F* GetLambdaweightedHist() const{return fLambdaweighted;}\r
56 TH2F* GetAntiLambdaHist() const{return fAntiLambda;}\r
57 TH2F* GetAntiLambdaweightedHist() const{return fAntiLambdaweighted;}\r
b3360800 58 private:\r
59 AliProtonFeedDownAnalysis(const AliProtonFeedDownAnalysis&); // Not implemented\r
60 AliProtonFeedDownAnalysis& operator=(const AliProtonFeedDownAnalysis&); // Not implemented\r
61 \r
62 AliProtonAnalysisBase *fProtonAnalysisBase;//base analysis object\r
63 Int_t LambdaIsMother(Int_t numbe, AliStack *stack); \r
c9fcf8c9 64 Float_t GetWeightforProton(Int_t number, AliStack *stack);\r
b3360800 65 Float_t GetWeightforLambda(Float_t pt);\r
66 \r
67 Int_t fNBinsY; //number of bins in y or eta\r
68 Double_t fMinY, fMaxY; //min & max value of y or eta\r
69 Int_t fNBinsPt; //number of bins in pT\r
70 Double_t fMinPt, fMaxPt; //min & max value of pT\r
71 \r
72 //Analysis containers\r
73 AliCFContainer *fProtonContainer; //container for protons\r
74 AliCFContainer *fAntiProtonContainer; //container for antiprotons\r
75 \r
76 TF1*fweightfunction; \r
c9fcf8c9 77 TH2F *fLambda;\r
78 TH2F *fLambdaweighted;\r
79 TH2F *fAntiLambda;\r
80 TH2F *fAntiLambdaweighted;\r
b3360800 81 \r
c9fcf8c9 82 ClassDef(AliProtonFeedDownAnalysis,2);\r
b3360800 83};\r
84\r
85#endif\r
86\r