040c7a9505cf938410907d79541e2073317358c7
[u/mrichter/AliRoot.git] / PWG1 / AliComparisonObject.h
1 #ifndef ALICOMPARISONOBJECT_H\r
2 #define ALICOMPARISONOBJECT_H\r
3 \r
4 //------------------------------------------------------------------------------\r
5 // Abstract class to keep information from comparison of \r
6 // reconstructed and MC particle tracks.   \r
7 // \r
8 // Author: J.Otwinowski 04/14/2008 \r
9 //------------------------------------------------------------------------------\r
10 \r
11 #include "TNamed.h"\r
12 #include "TFolder.h"\r
13 \r
14 class AliMCInfo;\r
15 class AliESDRecInfo;\r
16 \r
17 class AliComparisonObject : public TNamed {\r
18 public :\r
19   AliComparisonObject(); \r
20   AliComparisonObject(const char* name="AliComparisonObject"); \r
21   virtual ~AliComparisonObject();\r
22 \r
23   // Init data members\r
24   // call once before event loop\r
25   virtual void Init() = 0;\r
26 \r
27   // Execute analysis\r
28   // call in the event loop \r
29   virtual void Exec(AliMCInfo* infoMC=0, AliESDRecInfo *infoRC=0) = 0;\r
30 \r
31   // Merge output objects (needed by PROOF) \r
32   virtual Long64_t Merge(TCollection* list=0) = 0;\r
33 \r
34   // Analyse output histograms\r
35   virtual void Analyse() = 0;\r
36 \r
37   // Get output folder for analysed histograms\r
38   virtual TFolder* GetAnalysisFolder() = 0;\r
39 \r
40   ClassDef(AliComparisonObject,1);\r
41 };\r
42 \r
43 #endif\r