]>
Commit | Line | Data |
---|---|---|
f8b2d882 | 1 | #ifndef ALIBALANCETRIGGERED_H |
2 | #define ALIBALANCETRIGGERED_H | |
3 | /* See cxx source for full Copyright notice */ | |
4 | ||
5 | ||
6 | //------------------------------------------------------------------------- | |
7 | // Class AliBalanceTriggered | |
8 | // This is the class for the Balance Function analysis | |
9 | // | |
10 | // Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch | |
11 | // Modified: Michael Weber, m.weber@cern.ch | |
12 | //------------------------------------------------------------------------- | |
13 | ||
14 | #include <TObject.h> | |
15 | #include "TString.h" | |
16 | ||
17 | class TGraphErrors; | |
18 | class TH1D; | |
19 | class AliTHn; | |
20 | ||
21 | const Int_t nTrackVarsSingle = 4; // track variables in histogram (eta, phi, pTtrig, centrality) | |
22 | const Int_t nTrackVarsPair = 5; // track variables in histogram (dEta, dPhi, pT, pTtrig, centrality) | |
23 | ||
24 | class AliBalanceTriggered : public TObject { | |
25 | public: | |
26 | ||
27 | AliBalanceTriggered(); | |
28 | AliBalanceTriggered(const AliBalanceTriggered& balance); | |
29 | ~AliBalanceTriggered(); | |
30 | ||
31 | // analysis setters | |
32 | void SetAnalysisLevel(const char* analysisLevel) { | |
33 | fAnalysisLevel = analysisLevel;} | |
f8b2d882 | 34 | |
35 | // analysis getters | |
36 | const char* GetAnalysisLevel() {return fAnalysisLevel.Data();} | |
f8b2d882 | 37 | |
38 | // initialize histograms | |
39 | void InitHistograms(void); | |
40 | ||
41 | // histogram setters | |
42 | void SetHistNp(AliTHn *gHist) { fHistP = gHist;} | |
43 | void SetHistNn(AliTHn *gHist) { fHistN = gHist;} | |
44 | void SetHistNpn(AliTHn *gHist) { fHistPN = gHist;} | |
45 | void SetHistNnp(AliTHn *gHist) { fHistNP = gHist;} | |
46 | void SetHistNpp(AliTHn *gHist) { fHistPP = gHist;} | |
47 | void SetHistNnn(AliTHn *gHist) { fHistNN = gHist;} | |
48 | ||
49 | // histogram getters | |
50 | AliTHn *GetHistNp() { return fHistP;} | |
51 | AliTHn *GetHistNn() { return fHistN;} | |
52 | AliTHn *GetHistNpn() { return fHistPN;} | |
53 | AliTHn *GetHistNnp() { return fHistNP;} | |
54 | AliTHn *GetHistNpp() { return fHistPP;} | |
55 | AliTHn *GetHistNnn() { return fHistNN;} | |
56 | ||
57 | // Fill balance function histograms | |
8ac7935e | 58 | void FillBalance(Float_t fCentrality,TObjArray* particles,TObjArray* particlesMixed); |
f8b2d882 | 59 | |
60 | // Get the balance function histogram | |
bf7a73c8 | 61 | TH1D *GetBalanceFunctionHistogram1D(Int_t var, Double_t pTMinTrigger, Double_t pTMaxTrigger, Double_t pTMin, Double_t pTMax, Double_t centrMin, Double_t centrMax); |
62 | ||
63 | // Get the balance function histogram (2D) | |
64 | TH2D *GetBalanceFunctionHistogram2D(Int_t var1, Int_t var2, Double_t pTMinTrigger, Double_t pTMaxTrigger, Double_t pTMin, Double_t pTMax, Double_t centrMin, Double_t centrMax); | |
f8b2d882 | 65 | |
66 | // Get 1D histogram | |
bf7a73c8 | 67 | TH1D* GetHistogram1D(Int_t histo, Int_t var, Double_t pTMinTrigger, Double_t pTMaxTrigger, Double_t pTMin, Double_t pTMax, Double_t centrMin, Double_t centrMax); |
68 | ||
69 | // Get 2D histogram | |
70 | TH2D* GetHistogram2D(Int_t histo, Int_t var1, Int_t var2, Double_t pTMinTrigger, Double_t pTMaxTrigger, Double_t pTMin, Double_t pTMax, Double_t centrMin, Double_t centrMax); | |
f8b2d882 | 71 | |
72 | private: | |
f8b2d882 | 73 | TString fAnalysisLevel; // ESD, AOD or MC |
74 | ||
75 | AliTHn *fHistP; //N+ | |
76 | AliTHn *fHistN; //N- | |
77 | AliTHn *fHistPN; //N+- | |
78 | AliTHn *fHistNP; //N-+ | |
79 | AliTHn *fHistPP; //N++ | |
80 | AliTHn *fHistNN; //N-- | |
81 | ||
82 | AliBalanceTriggered & operator=(const AliBalanceTriggered & ) {return *this;} | |
83 | ||
84 | ClassDef(AliBalanceTriggered, 1) | |
85 | }; | |
86 | ||
87 | #endif |