]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/GammaConv/AliGammaConversionHistograms.h
update to run TPC+ITS analysis
[u/mrichter/AliRoot.git] / PWG4 / GammaConv / AliGammaConversionHistograms.h
index d2c2e7b4b63c2f2c6fe3a29c98ef067d175de72d..8d3ca94a6887796c775e2fedb0302ead5f657163 100644 (file)
-#ifndef ALIGAMMACONVERSIONHISTOGRAMS_H\r
-#define ALIGAMMACONVERSIONHISTOGRAMS_H\r
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
- * See cxx source for full Copyright notice     */\r
-\r
-////////////////////////////////////////////////\r
-//--------------------------------------------- \r
-// Class used to do analysis on conversion pairs\r
-//---------------------------------------------\r
-////////////////////////////////////////////////\r
-\r
-#include "TString.h"\r
-#include "Riostream.h"\r
-#include <vector>\r
-\r
-class TMap;\r
-class TList;\r
-class TH1F;\r
-class TH2F;\r
-\r
-class AliGammaConversionHistograms{\r
-\r
- public: \r
-  \r
-  AliGammaConversionHistograms();                                                                  //constructor\r
-  AliGammaConversionHistograms(const AliGammaConversionHistograms & original);                     //copy constructor\r
-  AliGammaConversionHistograms & operator = (const AliGammaConversionHistograms & original);       //assignment operator\r
-  virtual ~AliGammaConversionHistograms();                                                         //virtual destructor\r
-  \r
-\r
-  //  TList * GetOutputContainer();\r
-  void GetOutputContainer(TList *fOutputContainer);\r
-  \r
-  Int_t GetRBin(Double_t radius) const;\r
-  Int_t GetPhiBin(Double_t phi) const;\r
-\r
-  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
-\r
-  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
-\r
-  /*\r
-   * Adds a TH1F histogram to the histogram map and create a key for it \r
-   */\r
-  void AddHistogram(TString histogramName, TString histogramTitle, Int_t nXBins, Double_t firstX,Double_t lastX,TString xAxisTitle="", TString yAxisTitle="");\r
-\r
-  /*\r
-   * Adds a TH2F histogram to the histogram map and create a key for it \r
-   */\r
-  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
-\r
-  /*\r
-   *  Adds a TH1F Table to the table map and create a key for it\r
-   */\r
-  void AddTable(TString tableName,TString tableTitle,Int_t nXBins, const char * axesLabel[]);  \r
-\r
-\r
-  /*\r
-   * Fills a TH1F histogram with the given name with the given value \r
-   */\r
-  void FillHistogram(TString histogramName, Double_t xValue) const;\r
-\r
-  /*\r
-   * Fills a TH2F histogram with the given name with the given value \r
-   */\r
-  void FillHistogram(TString histogramName, Double_t xValue, Double_t yValue) const;\r
-\r
-  /*\r
-   * Fills a TH1F table with the given name with the given value\r
-   */                  \r
-  void FillTable(TString tableName, Double_t xValue) const;            \r
-\r
- private:\r
-  TMap* fHistogramMap;\r
-\r
-  Int_t fNPhiIndex;\r
-  Int_t fNRIndex;\r
-  Double_t fMinRadius;\r
-  Double_t fMaxRadius;\r
-  Double_t fDeltaR;\r
-  Double_t fMinPhi;\r
-  Double_t fMaxPhi;\r
-  Double_t fDeltaPhi;\r
-\r
-  TList * fMappingContainer;\r
-  TList * fBackgroundContainer;\r
-  TList * fDebugContainer;\r
-  TList * fResolutionContainer;\r
-  TList * fMatchContainer;\r
-  TList * fESDContainer;\r
-  TList * fMCContainer;\r
-  TList * fTableContainer;     \r
-  TList * fOtherContainer;\r
-\r
-  \r
-  ClassDef(AliGammaConversionHistograms,2)\r
-};\r
-\r
-\r
-#endif\r
-\r
-\r
-\r
+#ifndef ALIGAMMACONVERSIONHISTOGRAMS_H
+#define ALIGAMMACONVERSIONHISTOGRAMS_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice     */
+
+////////////////////////////////////////////////
+//--------------------------------------------- 
+// Class used to do analysis on conversion pairs
+//---------------------------------------------
+////////////////////////////////////////////////
+
+#include "TString.h"
+#include "Riostream.h"
+#include <vector>
+
+class TMap;
+class TList;
+class TH1F;
+class TH2F;
+
+class AliGammaConversionHistograms{
+
+ public: 
+  
+  AliGammaConversionHistograms();                                                                  //constructor
+  AliGammaConversionHistograms(const AliGammaConversionHistograms & original);                     //copy constructor
+  AliGammaConversionHistograms & operator = (const AliGammaConversionHistograms & original);       //assignment operator
+  virtual ~AliGammaConversionHistograms();                                                         //virtual destructor
+  
+
+  //  TList * GetOutputContainer();
+  void GetOutputContainer(TList *fOutputContainer);
+  
+  Int_t GetRBin(Double_t radius) const;
+  Int_t GetPhiBin(Double_t phi) const;
+  Int_t GetZBin(Double_t radius) const;
+  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);
+
+  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="");
+
+  /*
+   * Adds a TH1F histogram to the histogram map and create a key for it 
+   */
+  void AddHistogram(TString histogramName, TString histogramTitle, Int_t nXBins, Double_t firstX,Double_t lastX,TString xAxisTitle="", TString yAxisTitle="");
+
+  /*
+   * Adds a TH2F histogram to the histogram map and create a key for it 
+   */
+  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="", Int_t logAxis =-1);
+
+  /*
+   * Create a logx binning suitable for dEdx plots
+   */
+  Bool_t BinLogAxis(const char* name, Int_t dim);
+
+
+  /*
+   *  Adds a TH1F Table to the table map and create a key for it
+   */
+  void AddTable(TString tableName,TString tableTitle,Int_t nXBins, const char * axesLabel[]);
+    
+ /*
+  *  Adds a TH2F Table    
+  */  
+       
+  void AddTable(TString tableName,TString tableTitle,Int_t nXBins, const char * axesXLabel[],Int_t nYBins, const char* axesYLabel[]);
+
+
+  /*
+   * Fills a TH1F histogram with the given name with the given value 
+   */
+  void FillHistogram(TString histogramName, Double_t xValue) const;
+
+  /*
+   * Fills a TH2F histogram with the given name with the given value 
+   */
+  void FillHistogram(TString histogramName, Double_t xValue, Double_t yValue) const;
+
+  /*
+   * Fills a TH1F table with the given name with the given value
+   */                  
+  void FillTable(TString tableName, Double_t xValue) const;
+
+  /*  
+   *  Fills a TH2F table with the given name with the given value
+   */  
+  void FillTable(TString tableName, Double_t xValue, Double_t yValue) const;
+
+  /*
+   *Returns a pointer to the histogram associated with name.
+   */
+   TObject* GetValue(const TString& name);
+
+
+ private:
+  TMap* fHistogramMap; // histogram map
+  
+
+
+  Int_t fNPhiIndex; //phi index
+  Int_t fNRIndex; //r index
+  Int_t fNZIndex; //z index
+  //  Double_t fRBinLimits[8]; // Limits of the radius bins
+  Double_t fRBinLimits[14]; // Limits of the radius bins
+  Double_t fZBinLimits[13]; // Limits of the Z bins
+  Double_t fMinRadius; //min radius cut
+  Double_t fMaxRadius; //max radius cut
+  Double_t fDeltaR; // delta r
+  Double_t fMinPhi; //min phi
+  Double_t fMaxPhi; // max phi
+  Double_t fDeltaPhi;//delta phi
+
+  TList * fMappingContainer; //mapping container
+  TList * fBackgroundContainer; // background container
+  TList * fDebugContainer; // debug container
+  TList * fResolutionContainer; //resolution container
+  TList * fMatchContainer; //match container
+  TList * fESDContainer;//esd container
+  TList * fMCContainer; // MC container
+  TList * fTableContainer; // table container
+  TList * fOtherContainer; // other container
+
+  ClassDef(AliGammaConversionHistograms,3)
+};
+
+
+#endif
+
+
+