X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=HBTAN%2FAliHBTFunction.h;h=e2f00f777563194791fe7900863506315e7e0c0b;hb=eb890d59f309b005e6d69c8ed120858f118bcc5f;hp=c5f91b3e89da1be3669208dd609c0c2403180b11;hpb=dd82cadcabd7d7498b1652c0136ecaf406c3c50c;p=u%2Fmrichter%2FAliRoot.git diff --git a/HBTAN/AliHBTFunction.h b/HBTAN/AliHBTFunction.h index c5f91b3e89d..e2f00f77756 100644 --- a/HBTAN/AliHBTFunction.h +++ b/HBTAN/AliHBTFunction.h @@ -73,6 +73,24 @@ inline AliHBTPair* AliHBTFunction::CheckPair(AliHBTPair* pair) return pair; } +/******************************************************************/ +/******************************************************************/ +/******************************************************************/ +class AliHBTCorrelFunction +{ + public: + AliHBTCorrelFunction():fRatio(0x0){} + AliHBTCorrelFunction(const AliHBTCorrelFunction& in):fRatio((in.fRatio)?(TH1*)in.fRatio->Clone():0x0){} + virtual ~AliHBTCorrelFunction(){delete fRatio;} + + AliHBTCorrelFunction& operator=(const AliHBTCorrelFunction& in); + + protected: + TH1* fRatio;//!pointer to the ratio(result) + + ClassDef(AliHBTCorrelFunction,1) +}; + /******************************************************************/ /******************************************************************/ /******************************************************************/ @@ -101,6 +119,7 @@ class AliHBTOnePairFctn virtual void Init() = 0; virtual void Write() = 0; + virtual const char* Name() = 0; ClassDef(AliHBTOnePairFctn,2) }; @@ -138,6 +157,7 @@ class AliHBTTwoPairFctn virtual void Init() = 0; virtual void Write() = 0; + virtual const char* Name() = 0; ClassDef(AliHBTTwoPairFctn,2) @@ -381,9 +401,11 @@ class AliHBTOnePairFctn1D: public AliHBTOnePairFctn, public AliHBTFunction1D void ProcessDiffEventParticles(AliHBTPair* pair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} + protected: //retruns velue to be histogrammed - virtual Double_t GetValue(AliHBTPair* pair) = 0; + virtual Double_t GetValue(AliHBTPair* pair) const = 0; ClassDef(AliHBTOnePairFctn1D,2) }; /******************************************************************/ @@ -423,8 +445,9 @@ class AliHBTOnePairFctn2D: public AliHBTOnePairFctn, public AliHBTFunction2D void ProcessDiffEventParticles(AliHBTPair* pair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} protected: - virtual void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y) = 0; + virtual void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y) const = 0; ClassDef(AliHBTOnePairFctn2D,2) }; /******************************************************************/ @@ -466,8 +489,9 @@ class AliHBTOnePairFctn3D: public AliHBTOnePairFctn, public AliHBTFunction3D void ProcessDiffEventParticles(AliHBTPair* pair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} protected: - virtual void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y, Double_t& z) = 0; + virtual void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y, Double_t& z) const = 0; ClassDef(AliHBTOnePairFctn3D,2) }; /******************************************************************/ @@ -502,9 +526,10 @@ class AliHBTTwoPairFctn1D: public AliHBTTwoPairFctn, public AliHBTFunction1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} protected: - virtual Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) = 0; + virtual Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const = 0; ClassDef(AliHBTTwoPairFctn1D,2) }; @@ -546,9 +571,10 @@ class AliHBTTwoPairFctn2D: public AliHBTTwoPairFctn, public AliHBTFunction2D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} protected: - virtual void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y) = 0; + virtual void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y) const = 0; ClassDef(AliHBTTwoPairFctn2D,2) }; @@ -592,9 +618,10 @@ class AliHBTTwoPairFctn3D: public AliHBTTwoPairFctn, public AliHBTFunction3D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); void Write(){WriteFunction();} void Init(){InitFunction();} + const char* Name(){return GetName();} protected: - virtual void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y, Double_t& z) = 0; + virtual void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y, Double_t& z) const = 0; ClassDef(AliHBTTwoPairFctn3D,2) };