]>
Commit | Line | Data |
---|---|---|
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 | |
7 | class TF1;\r | |
8 | class TH2D;\r | |
9 | class TH1F;\r | |
10 | class TList;\r | |
11 | \r | |
12 | //#include "AliPID.h"\r | |
13 | class AliPID;\r | |
14 | \r | |
15 | class AliCFDataGrid;\r | |
16 | class AliAODEvent;\r | |
17 | class AliAODtrack;\r | |
18 | class AliESDEvent;\r | |
19 | class AliESDtrack;\r | |
20 | class AliExternalTrackParam;\r | |
21 | class AliStack;\r | |
22 | class AliESDVertex;\r | |
23 | class AliProtonAnalysisBase;\r | |
24 | \r | |
25 | class 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 |