1 #ifndef ALICOMPARISONOBJECT_H
2 #define ALICOMPARISONOBJECT_H
4 //------------------------------------------------------------------------------
5 // Abstract class to keep information from comparison of
6 // reconstructed and MC particle tracks.
8 // Author: J.Otwinowski 04/14/2008
9 //------------------------------------------------------------------------------
17 class AliComparisonObject : public TNamed {
19 AliComparisonObject();
20 AliComparisonObject(const char* name="AliComparisonObject", const char* title="AliComparisonObject");
21 virtual ~AliComparisonObject();
24 // call once before event loop
25 virtual void Init() = 0;
28 // call in the event loop
29 virtual void Exec(AliMCInfo* const infoMC=0, AliESDRecInfo* const infoRC=0) = 0;
31 // Merge output objects (needed by PROOF)
32 virtual Long64_t Merge(TCollection* const list=0) = 0;
34 // Analyse output histograms
35 virtual void Analyse() = 0;
37 // Get output folder for analysed histograms
38 virtual TFolder* GetAnalysisFolder() const = 0;
40 // set and get analysisMode
41 void SetAnalysisMode(Int_t analysisMode=0) {fAnalysisMode = analysisMode;}
42 Int_t GetAnalysisMode() {return fAnalysisMode;}
44 // set and get hpt generator
45 void SetHptGenerator(Bool_t hptGenerator=kFALSE) {fHptGenerator = hptGenerator;}
46 Bool_t IsHptGenerator() {return fHptGenerator;}
51 Int_t fAnalysisMode; // 0-TPC, 1-TPCITS, 2-Constrained
54 Bool_t fHptGenerator; // hpt event generator
56 ClassDef(AliComparisonObject,1);