ROOT logo
/***************************************************************************
 *
 * Author: M. Janik, L. Graczykowski, Warsaw University of Technology
 ***************************************************************************
 *
 * Description: an average entrance separation correlation function           
 *
 **************************************************************************/

#ifndef ALIFEMTOAVGSEPCORRFCTN_H
#define ALIFEMTOAVGSEPCORRFCTN_H

#include "TH1D.h"
#include "AliFemtoCorrFctn.h"

class AliFemtoAvgSepCorrFctn : public AliFemtoCorrFctn {
public:
  enum PairType {kTracks=0, kTrackV0=1, kV0s=2};
  typedef enum PairType AliFemtoPairType; 

  AliFemtoAvgSepCorrFctn(char* title, const int& nbins, const float& Low, const float& High);
  AliFemtoAvgSepCorrFctn(const AliFemtoAvgSepCorrFctn& aCorrFctn);
  virtual ~AliFemtoAvgSepCorrFctn();

  AliFemtoAvgSepCorrFctn& operator=(const AliFemtoAvgSepCorrFctn& aCorrFctn);

  virtual AliFemtoString Report();
  virtual void AddRealPair(AliFemtoPair* aPair);
  virtual void AddMixedPair(AliFemtoPair* aPair);
  virtual void Finish();

  TH1D* Numerator();
  TH1D* Denominator();
  TH1D* Ratio();

  virtual TList* GetOutputList();
  void Write();
  void SetPairType(AliFemtoPairType pairtype);

private:
  //2 tracks
  TH1D* fNumerator;          // numerator - real pairs
  TH1D* fDenominator;        // denominator - mixed pairs

  //track + V0
  TH1D* fNumeratorPos;          // numerator - real pairs
  TH1D* fDenominatorPos;        // denominator - mixed pairs
  TH1D* fNumeratorNeg;          // numerator - real pairs
  TH1D* fDenominatorNeg;        // denominator - mixed pairs

  //2 V0s
  TH1D* fNumeratorPosPos;          // numerator - real pairs
  TH1D* fDenominatorPosPos;        // denominator - mixed pairs
  TH1D* fNumeratorPosNeg;          // numerator - real pairs
  TH1D* fDenominatorPosNeg;        // denominator - mixed pairs
  TH1D* fNumeratorNegPos;          // numerator - real pairs
  TH1D* fDenominatorNegPos;        // denominator - mixed pairs
  TH1D* fNumeratorNegNeg;          // numerator - real pairs
  TH1D* fDenominatorNegNeg;        // denominator - mixed pairs

  TH1D* fRatio;              // ratio - correlation function
  AliFemtoPairType fPairType;


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

inline  TH1D* AliFemtoAvgSepCorrFctn::Numerator(){return fNumerator;}
inline  TH1D* AliFemtoAvgSepCorrFctn::Denominator(){return fDenominator;}
inline  TH1D* AliFemtoAvgSepCorrFctn::Ratio(){return fRatio;}


#endif

 AliFemtoAvgSepCorrFctn.h:1
 AliFemtoAvgSepCorrFctn.h:2
 AliFemtoAvgSepCorrFctn.h:3
 AliFemtoAvgSepCorrFctn.h:4
 AliFemtoAvgSepCorrFctn.h:5
 AliFemtoAvgSepCorrFctn.h:6
 AliFemtoAvgSepCorrFctn.h:7
 AliFemtoAvgSepCorrFctn.h:8
 AliFemtoAvgSepCorrFctn.h:9
 AliFemtoAvgSepCorrFctn.h:10
 AliFemtoAvgSepCorrFctn.h:11
 AliFemtoAvgSepCorrFctn.h:12
 AliFemtoAvgSepCorrFctn.h:13
 AliFemtoAvgSepCorrFctn.h:14
 AliFemtoAvgSepCorrFctn.h:15
 AliFemtoAvgSepCorrFctn.h:16
 AliFemtoAvgSepCorrFctn.h:17
 AliFemtoAvgSepCorrFctn.h:18
 AliFemtoAvgSepCorrFctn.h:19
 AliFemtoAvgSepCorrFctn.h:20
 AliFemtoAvgSepCorrFctn.h:21
 AliFemtoAvgSepCorrFctn.h:22
 AliFemtoAvgSepCorrFctn.h:23
 AliFemtoAvgSepCorrFctn.h:24
 AliFemtoAvgSepCorrFctn.h:25
 AliFemtoAvgSepCorrFctn.h:26
 AliFemtoAvgSepCorrFctn.h:27
 AliFemtoAvgSepCorrFctn.h:28
 AliFemtoAvgSepCorrFctn.h:29
 AliFemtoAvgSepCorrFctn.h:30
 AliFemtoAvgSepCorrFctn.h:31
 AliFemtoAvgSepCorrFctn.h:32
 AliFemtoAvgSepCorrFctn.h:33
 AliFemtoAvgSepCorrFctn.h:34
 AliFemtoAvgSepCorrFctn.h:35
 AliFemtoAvgSepCorrFctn.h:36
 AliFemtoAvgSepCorrFctn.h:37
 AliFemtoAvgSepCorrFctn.h:38
 AliFemtoAvgSepCorrFctn.h:39
 AliFemtoAvgSepCorrFctn.h:40
 AliFemtoAvgSepCorrFctn.h:41
 AliFemtoAvgSepCorrFctn.h:42
 AliFemtoAvgSepCorrFctn.h:43
 AliFemtoAvgSepCorrFctn.h:44
 AliFemtoAvgSepCorrFctn.h:45
 AliFemtoAvgSepCorrFctn.h:46
 AliFemtoAvgSepCorrFctn.h:47
 AliFemtoAvgSepCorrFctn.h:48
 AliFemtoAvgSepCorrFctn.h:49
 AliFemtoAvgSepCorrFctn.h:50
 AliFemtoAvgSepCorrFctn.h:51
 AliFemtoAvgSepCorrFctn.h:52
 AliFemtoAvgSepCorrFctn.h:53
 AliFemtoAvgSepCorrFctn.h:54
 AliFemtoAvgSepCorrFctn.h:55
 AliFemtoAvgSepCorrFctn.h:56
 AliFemtoAvgSepCorrFctn.h:57
 AliFemtoAvgSepCorrFctn.h:58
 AliFemtoAvgSepCorrFctn.h:59
 AliFemtoAvgSepCorrFctn.h:60
 AliFemtoAvgSepCorrFctn.h:61
 AliFemtoAvgSepCorrFctn.h:62
 AliFemtoAvgSepCorrFctn.h:63
 AliFemtoAvgSepCorrFctn.h:64
 AliFemtoAvgSepCorrFctn.h:65
 AliFemtoAvgSepCorrFctn.h:66
 AliFemtoAvgSepCorrFctn.h:67
 AliFemtoAvgSepCorrFctn.h:68
 AliFemtoAvgSepCorrFctn.h:69
 AliFemtoAvgSepCorrFctn.h:70
 AliFemtoAvgSepCorrFctn.h:71
 AliFemtoAvgSepCorrFctn.h:72
 AliFemtoAvgSepCorrFctn.h:73
 AliFemtoAvgSepCorrFctn.h:74
 AliFemtoAvgSepCorrFctn.h:75
 AliFemtoAvgSepCorrFctn.h:76