Event Mixing for Triggered BF analysis
[u/mrichter/AliRoot.git] / PWGCF / EBYE / BalanceFunctions / AliBalanceTriggered.h
CommitLineData
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
17class TGraphErrors;
18class TH1D;
19class AliTHn;
20
21const Int_t nTrackVarsSingle = 4; // track variables in histogram (eta, phi, pTtrig, centrality)
22const Int_t nTrackVarsPair = 5; // track variables in histogram (dEta, dPhi, pT, pTtrig, centrality)
23
24class 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