include file missing
[u/mrichter/AliRoot.git] / PWG0 / AliCorrection.h
CommitLineData
29771dc8 1#ifndef ALICORRECTION_H
2#define ALICORRECTION_H
3
4/* $Id$ */
5
6// ------------------------------------------------------
7//
8// This class is used to store the correction for one effect.
9//
10// Most effects have to be correction on track and event level, this class combines
11// two correction matrices. One of the type AliCorrectionMatrix2D and one of
12// the type AliCorrectionMatrix3D
13//
14// ------------------------------------------------------
15
16#include <TNamed.h>
17
18class AliCorrectionMatrix2D;
19class AliCorrectionMatrix3D;
20
21class AliCorrection : public TNamed
22{
23public:
24 AliCorrection();
116083b1 25 AliCorrection(const Char_t* name, const Char_t* title, const char* analysis = "tpc");
29771dc8 26 AliCorrection(const AliCorrection& c);
27
28 virtual ~AliCorrection();
29 AliCorrection& operator=(const AliCorrection& corr);
30 virtual void Copy(TObject& c) const;
31
32 virtual Long64_t Merge(TCollection* list);
33
34 AliCorrectionMatrix2D* GetEventCorrection() { return fEventCorr; }
35 AliCorrectionMatrix3D* GetTrackCorrection() { return fTrackCorr; }
36
37 void SetEventCorrection(AliCorrectionMatrix2D* corr) { fEventCorr = corr; }
38 void SetTrackCorrection(AliCorrectionMatrix3D* corr) { fTrackCorr = corr; }
39
40 void Divide();
41 void Multiply();
42 void SetCorrectionToUnity();
dd367a14 43 void Scale(Double_t factor);
29771dc8 44
2e88424e 45 void Add(AliCorrection* aCorrectionToAdd, Float_t c=1);
46
29771dc8 47 virtual Bool_t LoadHistograms(const Char_t* dir = 0);
48 virtual void SaveHistograms();
49 virtual void DrawHistograms(const Char_t* name = 0);
dd367a14 50 virtual void DrawOverview(const char* canvasName = 0);
29771dc8 51
52 virtual void ReduceInformation();
53
54 virtual void Reset(Option_t* option = "");
dd367a14 55 void PrintInfo(Float_t ptCut);
29771dc8 56
57protected:
58 AliCorrectionMatrix2D* fEventCorr; // correction on event level
59 AliCorrectionMatrix3D* fTrackCorr; // correction on track level
60
61 ClassDef(AliCorrection,1)
62};
63
64#endif
65