]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/GammaConv/AliGammaConversionHistograms.h
Updated list of files
[u/mrichter/AliRoot.git] / PWG4 / GammaConv / AliGammaConversionHistograms.h
1 #ifndef ALIGAMMACONVERSIONHISTOGRAMS_H\r
2 #define ALIGAMMACONVERSIONHISTOGRAMS_H\r
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
4  * See cxx source for full Copyright notice     */\r
5 \r
6 ////////////////////////////////////////////////\r
7 //--------------------------------------------- \r
8 // Class used to do analysis on conversion pairs\r
9 //---------------------------------------------\r
10 ////////////////////////////////////////////////\r
11 \r
12 #include "TString.h"\r
13 #include "Riostream.h"\r
14 #include <vector>\r
15 \r
16 class TMap;\r
17 class TList;\r
18 class TH1F;\r
19 class TH2F;\r
20 \r
21 class AliGammaConversionHistograms{\r
22 \r
23  public: \r
24   \r
25   AliGammaConversionHistograms();                                                                  //constructor\r
26   AliGammaConversionHistograms(const AliGammaConversionHistograms & original);                     //copy constructor\r
27   AliGammaConversionHistograms & operator = (const AliGammaConversionHistograms & original);       //assignment operator\r
28   virtual ~AliGammaConversionHistograms();                                                         //virtual destructor\r
29   \r
30 \r
31   //  TList * GetOutputContainer();\r
32   void GetOutputContainer(TList *fOutputContainer);\r
33   \r
34   Int_t GetRBin(Double_t radius) const;\r
35   Int_t GetPhiBin(Double_t phi) const;\r
36 \r
37   void InitializeMappingValues(Int_t nPhiHistograms, Int_t nRHistograms, Int_t nBinsR, Double_t minRadius, Double_t maxRadius,Int_t nBinsPhi, Double_t minPhi, Double_t maxPhi);\r
38 \r
39   void AddMappingHistograms(Int_t nPhiHistograms, Int_t nRHistograms,Int_t nXBins, Double_t firstX, Double_t lastX, Int_t nYBins, Double_t firstY, Double_t lastY, TString xAxisTitle="", TString yAxisTitle="");\r
40 \r
41   /*\r
42    * Adds a TH1F histogram to the histogram map and create a key for it \r
43    */\r
44   void AddHistogram(TString histogramName, TString histogramTitle, Int_t nXBins, Double_t firstX,Double_t lastX,TString xAxisTitle="", TString yAxisTitle="");\r
45 \r
46   /*\r
47    * Adds a TH2F histogram to the histogram map and create a key for it \r
48    */\r
49   void AddHistogram(TString histogramName, TString histogramTitle, Int_t nXBins, Double_t firstX, Double_t lastX, Int_t nYBins, Double_t firstY, Double_t lastY, TString xAxisTitle="", TString yAxisTitle="");\r
50 \r
51   /*\r
52    *  Adds a TH1F Table to the table map and create a key for it\r
53    */\r
54   void AddTable(TString tableName,TString tableTitle,Int_t nXBins, const char * axesLabel[]);   \r
55 \r
56 \r
57   /*\r
58    * Fills a TH1F histogram with the given name with the given value \r
59    */\r
60   void FillHistogram(TString histogramName, Double_t xValue) const;\r
61 \r
62   /*\r
63    * Fills a TH2F histogram with the given name with the given value \r
64    */\r
65   void FillHistogram(TString histogramName, Double_t xValue, Double_t yValue) const;\r
66 \r
67   /*\r
68    * Fills a TH1F table with the given name with the given value\r
69    */                   \r
70   void FillTable(TString tableName, Double_t xValue) const;             \r
71 \r
72  private:\r
73   TMap* fHistogramMap; // histogram map\r
74 \r
75   Int_t fNPhiIndex; //phi index\r
76   Int_t fNRIndex; //r index\r
77   Double_t fMinRadius; //min radius cut\r
78   Double_t fMaxRadius; //max radius cut\r
79   Double_t fDeltaR; // delta r\r
80   Double_t fMinPhi; //min phi\r
81   Double_t fMaxPhi; // max phi\r
82   Double_t fDeltaPhi;//delta phi\r
83 \r
84   TList * fMappingContainer; //mapping container\r
85   TList * fBackgroundContainer; // background container\r
86   TList * fDebugContainer; // debug container\r
87   TList * fResolutionContainer; //resolution container\r
88   TList * fMatchContainer; //match container\r
89   TList * fESDContainer;//esd container\r
90   TList * fMCContainer; // MC container\r
91   TList * fTableContainer; // table container\r
92   TList * fOtherContainer; // other container\r
93 \r
94   ClassDef(AliGammaConversionHistograms,2)\r
95 };\r
96 \r
97 \r
98 #endif\r
99 \r
100 \r
101 \r