]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG0/AliCorrection.h
optimize range for LeeYangZeroes to find zero
[u/mrichter/AliRoot.git] / PWG0 / AliCorrection.h
index 620b4099f61fff82408239137f67a5e6545e6802..ca038f614b64f10cc36c600ada57ced1cdd336be 100644 (file)
@@ -14,6 +14,7 @@
 // ------------------------------------------------------
 
 #include <TNamed.h>
+#include "AliPWG0Helper.h"
 
 class AliCorrectionMatrix2D;
 class AliCorrectionMatrix3D;
@@ -22,7 +23,7 @@ class AliCorrection : public TNamed
 {
 public:
   AliCorrection();
-  AliCorrection(const Char_t* name, const Char_t* title);
+  AliCorrection(const Char_t* name, const Char_t* title, AliPWG0Helper::AnalysisMode analysisMode = AliPWG0Helper::kTPC);
   AliCorrection(const AliCorrection& c);
 
   virtual ~AliCorrection();
@@ -31,8 +32,8 @@ public:
 
   virtual Long64_t Merge(TCollection* list);
 
-  AliCorrectionMatrix2D* GetEventCorrection() { return fEventCorr; }
-  AliCorrectionMatrix3D* GetTrackCorrection() { return fTrackCorr; }
+  AliCorrectionMatrix2D* GetEventCorrection() const { return fEventCorr; }
+  AliCorrectionMatrix3D* GetTrackCorrection() const { return fTrackCorr; }
 
   void SetEventCorrection(AliCorrectionMatrix2D* corr) { fEventCorr = corr; }
   void SetTrackCorrection(AliCorrectionMatrix3D* corr) { fTrackCorr = corr; }
@@ -40,14 +41,20 @@ public:
   void Divide();
   void Multiply();
   void SetCorrectionToUnity();
+  void Scale(Double_t factor);
+
+  void Add(AliCorrection* aCorrectionToAdd, Float_t c=1);
 
   virtual Bool_t LoadHistograms(const Char_t* dir = 0);
   virtual void SaveHistograms();
   virtual void DrawHistograms(const Char_t* name = 0);
+  virtual void DrawOverview(const char* canvasName = 0);
 
   virtual void ReduceInformation();
 
   virtual void Reset(Option_t* option = "");
+  void PrintStats(Float_t zRange, Float_t etaRange, Float_t ptCut);
+  void PrintInfo(Float_t ptCut);
 
 protected:
   AliCorrectionMatrix2D* fEventCorr; // correction on event level