1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
6 #ifndef ALIFLOWANALYSISBASE_H
7 #define ALIFLOWANALYSISBASE_H
9 class AliFlowEventSimple;
10 class AliFlowEventSimpleCuts;
15 /////////////////////////////////////////////////////////////////////////////
16 // Description: base class for flow analysis classes
17 // origin: Mikolaj Krzewicki, mikolaj.krzewicki@cern.ch
18 /////////////////////////////////////////////////////////////////////////////
20 class AliFlowAnalysis : public TNamed {
23 AliFlowAnalysis(const char* name="AliFlowAnalysis"); //default constructor
24 virtual ~AliFlowAnalysis(); //destructor
26 virtual void Init() {} //Define output objects
27 virtual void ProcessEvent(AliFlowEventSimple* /*anEvent*/); //Main routine executed by the framework
28 virtual void Make(AliFlowEventSimple* /*anEvent*/) {} //Main routine to be implemened by user
29 virtual void Finish() {} //Fill results
30 virtual void GetOutputHistograms(TList* /* outputListHistos */) {} //Copy output objects from TList
31 virtual void WriteHistograms(TDirectoryFile* /* outputFileName */) const {} //writes histograms locally (for OnTheFly)
33 virtual TList* GetHistList() const {return NULL;}
34 virtual void SetHistList(TList*) {}
36 void SetPOItype(Int_t i) {fPOItype=i;}
37 Int_t GetPOItype() const {return fPOItype;}
39 void SetEventCuts(AliFlowEventSimpleCuts* cuts) {fEventCuts=cuts;}
40 AliFlowEventSimpleCuts* GetEventCuts() const {return fEventCuts;}
43 AliFlowEventSimpleCuts* fEventCuts; //some analysis level event cuts
44 Int_t fPOItype; //which POI type are we processing in this analysis?
47 AliFlowAnalysis(const AliFlowAnalysis& anAnalysis); //copy constructor
48 AliFlowAnalysis& operator=(const AliFlowAnalysis& anAnalysis); //assignment operator
50 ClassDef(AliFlowAnalysis,1) // class version