ROOT logo

///////////////////////////////////////////////////////////////////////////
//                                                                       //
// AliFemtoCorrFctn3DSpherical: a class to calculate 3D correlation      //
// for pairs of identical particles, binned in spherical coordinates     //
// (q_inv, phi, cos(theta))
//                                                                       //
///////////////////////////////////////////////////////////////////////////

#ifndef ALIFEMTOCORRFCTN3DSPHERICALEMCIC_H
#define ALIFEMTOCORRFCTN3DSPHERICALEMCIC_H

#include "AliFemtoCorrFctn.h"
#include "AliFemtoPairCut.h"
#include "TH3D.h"

class AliFemtoCorrFctn3DSphericalEMCIC : public AliFemtoCorrFctn{
public:
  AliFemtoCorrFctn3DSphericalEMCIC(char* title, 
			      const int& nqbins, const float& QLo, const float& QHi,
			      const int& nphibins, const int& ncthetabins);
  AliFemtoCorrFctn3DSphericalEMCIC(const AliFemtoCorrFctn3DSphericalEMCIC& aCorrFctn);
  virtual ~AliFemtoCorrFctn3DSphericalEMCIC();

  AliFemtoCorrFctn3DSphericalEMCIC& operator=(const AliFemtoCorrFctn3DSphericalEMCIC& aCorrFctn);

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

  virtual void Finish();

  void WriteOutHistos();
  virtual TList* GetOutputList();

  void SetSpecificPairCut(AliFemtoPairCut* aCut);

 private:
  
  TH3D* fNumerator;         // numerator
  TH3D* fDenominator;       // denominator
  //EMCIC histograms:
  /*TH3D* fEnergyTotalReal;       // E1+E2 from real pairs
  TH3D* fEnergyMultReal;        // E1*E2
  TH3D* fPzMultReal;            // Pz1*Pz2
  TH3D* fPtMultReal;            // Pt1*Pt2  */
  TH3D* fEnergyTotalMix;       // E1+E2 from mixed pairs
  TH3D* fEnergyMultMix;        // E1*E2
  TH3D* fPzMultMix;            // Pz1*Pz2
  TH3D* fPtMultMix;            // Pt1*Pt2
  AliFemtoPairCut* fPairCut;    //! this is a PairCut specific to THIS CorrFctn, not the Analysis

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

inline  void AliFemtoCorrFctn3DSphericalEMCIC::SetSpecificPairCut(AliFemtoPairCut* pc){fPairCut=pc;}

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