8a986270051d7c1d244fa0859a5f2b18fd08afbd
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliFemtoAnalysis.h
1 ////////////////////////////////////////////////////////////////////////////////
2 /// AliFemtoAnalysis - the pure virtual base class for femto analysis        ///
3 /// All analysis classes must inherit from this one                          ///
4 ////////////////////////////////////////////////////////////////////////////////
5 #ifndef AliFemtoAnalysis_hh
6 #define AliFemtoAnalysis_hh
7
8 #include "AliFemtoTypes.h"
9 #include <TList.h>
10 #include <TObjString.h>
11
12 class AliFemtoEvent;
13
14 class AliFemtoAnalysis{
15
16 public:
17
18   AliFemtoAnalysis() { /* noop */ };
19   virtual ~AliFemtoAnalysis() { /* noop */ };
20
21   
22   virtual AliFemtoString Report() = 0;       //! returns reports of all cuts applied and correlation functions being done
23   virtual TList* ListSettings() = 0;         // return list of cut settings for the analysis
24
25   virtual TList* GetOutputList() = 0;        // Return a TList of objects to be written as output
26   virtual void ProcessEvent(const AliFemtoEvent* aEventToAnalyze) = 0;
27
28   virtual void Finish() = 0;
29
30 };
31
32 #endif