5c0ab5aa3ef869e3e7180122b11901061aeac358
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFittingQDistribution.h
1 /* 
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. 
3  * See cxx source for full Copyright notice 
4  * $Id$ 
5  */
6
7 /******************************** 
8  * integrated flow estimate by  *
9  *   fitting q-distribution     * 
10  *                              *
11  * author: Ante Bilandzic       * 
12  *          (anteb@nikhef.nl)   *
13  *******************************/ 
14  
15 #ifndef AliFittingQDistribution_H
16 #define AliFittingQDistribution_H
17
18 #include "AliFlowCommonConstants.h"
19
20 class TObjArray;
21 class TList;
22 class TFile;
23
24 class TH1;
25 class TProfile;
26
27 class AliFlowEventSimple;
28 class AliFlowTrackSimple;
29 class AliFlowCommonHist;
30 class AliFlowCommonHistResults;
31 class AliFlowVector;
32
33 //================================================================================================================
34
35 class AliFittingQDistribution{
36  public:
37   AliFittingQDistribution();
38   virtual ~AliFittingQDistribution(); 
39   
40   virtual void CreateOutputObjects();
41   virtual void Make(AliFlowEventSimple* anEvent);
42   virtual void Finish();
43   virtual void WriteHistograms(TString* outputFileName);
44
45 //----------------------------------------------------------------------------------------------------------------
46 //                                            setters and getters                                                 
47 //----------------------------------------------------------------------------------------------------------------      
48   TList* GetHistList() const {return this->fHistList;}      //output histogram list
49   
50   void SetIntFlowResults(TH1D* ifr)  {this->fIntFlowResultsFQD = ifr;};
51   TH1D* GetIntFlowResults() const    {return this->fIntFlowResultsFQD;};
52   
53   void SetCommonHistsResults(AliFlowCommonHistResults* chr)  {this->fCommonHistsResults = chr;};
54   AliFlowCommonHistResults* GetCommonHistsResults() const    {return this->fCommonHistsResults;};
55   
56   void SetAverageMultiplicity(TProfile* am)  {this->fAvMultIntFlowFQD = am;};
57   TProfile* GetAverageMultiplicity() const   {return this->fAvMultIntFlowFQD;};
58   
59   void SetQDistribution(TH1D* qd)  {this->fQDistributionFQD = qd;};
60   TH1D* GetQDistribution() const   {return this->fQDistributionFQD;};
61   
62   void SetSigma2(TH1D* s2)  {this->fSigma2 = s2;};
63   TH1D* GetSigma2() const   {return this->fSigma2;};
64 //----------------------------------------------------------------------------------------------------------------
65  
66  private:
67   AliFittingQDistribution(const AliFittingQDistribution& afqd);
68   AliFittingQDistribution& operator=(const AliFittingQDistribution& afqd);
69   
70   AliFlowTrackSimple*        fTrack;                   //track
71    
72   TList*                     fHistList;                //list to hold all output histograms
73   TProfile*                  fAvMultIntFlowFQD;        //avarage selected multiplicity
74   TH1D*                      fIntFlowResultsFQD;       //integrated flow final results
75   TH1D*                      fSigma2;                  //sigma^2
76   AliFlowCommonHist*         fCommonHists;             //common control histograms
77   AliFlowCommonHistResults*  fCommonHistsResults;      //final results for integrated flow stored in the common histograms 
78   TH1D*                      fQDistributionFQD;        //q-distribution 
79          
80   ClassDef(AliFittingQDistribution, 0);
81 };
82
83 //================================================================================================================
84
85 #endif
86
87
88
89
90