ROOT logo
////////////////////////////////////////////////////////////////////////////////
/// AliFemtoCorrFctn - the pure virtual base class for correlation function  ///
/// All correlation function classes must inherit from this one              ///
////////////////////////////////////////////////////////////////////////////////
#ifndef AliFemtoCorrFctn_hh
#define AliFemtoCorrFctn_hh

#include "AliFemtoAnalysis.h"
#include "AliFemtoEvent.h"
#include "AliFemtoPair.h"
#include "AliFemtoPairCut.h"

class AliFemtoCorrFctn{

  friend class AliFemtoAnalysis;

public:
  AliFemtoCorrFctn();
  AliFemtoCorrFctn(const AliFemtoCorrFctn& aCorrFctn);
  virtual ~AliFemtoCorrFctn(){/* no-op */};
  AliFemtoCorrFctn& operator=(const AliFemtoCorrFctn& aCorrFctn);

  virtual AliFemtoString Report() = 0;

  virtual void AddRealPair(AliFemtoPair* aPair);
  virtual void AddMixedPair(AliFemtoPair* aPir);

  virtual void EventBegin(const AliFemtoEvent* aEvent);
  virtual void EventEnd(const AliFemtoEvent* aEvent);
  virtual void Finish() = 0;

  virtual TList* GetOutputList() = 0;

  virtual AliFemtoCorrFctn* Clone() { return 0;}

  AliFemtoAnalysis* HbtAnalysis(){return fyAnalysis;};
  void SetAnalysis(AliFemtoAnalysis* aAnalysis);
  void SetPairSelectionCut(AliFemtoPairCut* aCut);

protected:
  AliFemtoAnalysis* fyAnalysis; //! link to the analysis
  AliFemtoPairCut* fPairCut;    //! this is a PairSelection criteria for this Correlation Function

  private:

#ifdef __ROOT__
  ClassDef(AliFemtoCorrFctn, 1)
#endif
};

#endif
 AliFemtoCorrFctn.h:1
 AliFemtoCorrFctn.h:2
 AliFemtoCorrFctn.h:3
 AliFemtoCorrFctn.h:4
 AliFemtoCorrFctn.h:5
 AliFemtoCorrFctn.h:6
 AliFemtoCorrFctn.h:7
 AliFemtoCorrFctn.h:8
 AliFemtoCorrFctn.h:9
 AliFemtoCorrFctn.h:10
 AliFemtoCorrFctn.h:11
 AliFemtoCorrFctn.h:12
 AliFemtoCorrFctn.h:13
 AliFemtoCorrFctn.h:14
 AliFemtoCorrFctn.h:15
 AliFemtoCorrFctn.h:16
 AliFemtoCorrFctn.h:17
 AliFemtoCorrFctn.h:18
 AliFemtoCorrFctn.h:19
 AliFemtoCorrFctn.h:20
 AliFemtoCorrFctn.h:21
 AliFemtoCorrFctn.h:22
 AliFemtoCorrFctn.h:23
 AliFemtoCorrFctn.h:24
 AliFemtoCorrFctn.h:25
 AliFemtoCorrFctn.h:26
 AliFemtoCorrFctn.h:27
 AliFemtoCorrFctn.h:28
 AliFemtoCorrFctn.h:29
 AliFemtoCorrFctn.h:30
 AliFemtoCorrFctn.h:31
 AliFemtoCorrFctn.h:32
 AliFemtoCorrFctn.h:33
 AliFemtoCorrFctn.h:34
 AliFemtoCorrFctn.h:35
 AliFemtoCorrFctn.h:36
 AliFemtoCorrFctn.h:37
 AliFemtoCorrFctn.h:38
 AliFemtoCorrFctn.h:39
 AliFemtoCorrFctn.h:40
 AliFemtoCorrFctn.h:41
 AliFemtoCorrFctn.h:42
 AliFemtoCorrFctn.h:43
 AliFemtoCorrFctn.h:44
 AliFemtoCorrFctn.h:45
 AliFemtoCorrFctn.h:46
 AliFemtoCorrFctn.h:47
 AliFemtoCorrFctn.h:48
 AliFemtoCorrFctn.h:49
 AliFemtoCorrFctn.h:50
 AliFemtoCorrFctn.h:51