1 ////////////////////////////////////////////////////////////////////////////////
2 /// AliFemtoCorrFctn - the pure virtual base class for correlation function ///
3 /// All correlation function classes must inherit from this one ///
4 ////////////////////////////////////////////////////////////////////////////////
5 #ifndef AliFemtoCorrFctn_hh
6 #define AliFemtoCorrFctn_hh
8 #include "AliFemtoAnalysis.h"
9 #include "AliFemtoEvent.h"
10 #include "AliFemtoPair.h"
11 #include "AliFemtoPairCut.h"
13 class AliFemtoCorrFctn{
15 friend class AliFemtoAnalysis;
19 AliFemtoCorrFctn(const AliFemtoCorrFctn& aCorrFctn);
20 virtual ~AliFemtoCorrFctn(){/* no-op */};
21 AliFemtoCorrFctn& operator=(const AliFemtoCorrFctn& aCorrFctn);
23 virtual AliFemtoString Report() = 0;
25 virtual void AddRealPair(AliFemtoPair* aPair);
26 virtual void AddMixedPair(AliFemtoPair* aPir);
28 virtual void EventBegin(const AliFemtoEvent* aEvent);
29 virtual void EventEnd(const AliFemtoEvent* aEvent);
30 virtual void Finish() = 0;
32 virtual TList* GetOutputList() = 0;
34 virtual AliFemtoCorrFctn* Clone() { return 0;}
36 AliFemtoAnalysis* HbtAnalysis(){return fyAnalysis;};
37 void SetAnalysis(AliFemtoAnalysis* aAnalysis);
38 void SetPairSelectionCut(AliFemtoPairCut* aCut);
41 AliFemtoAnalysis* fyAnalysis; //! link to the analysis
42 AliFemtoPairCut* fPairCut; //! this is a PairSelection criteria for this Correlation Function
47 ClassDef(AliFemtoCorrFctn, 1)