1 ////////////////////////////////////////////////////////////////////////////////
3 /// AliFemtoModelWeightGenerator - abstract base class for femtoscopic ///
4 /// weight generator ///
5 /// Authors: Adam Kisiel kisiel@mps.ohio-state.edu ///
7 ////////////////////////////////////////////////////////////////////////////////
8 #ifndef AliFemtoModelWeightGenerator_hh
9 #define AliFemtoModelWeightGenerator_hh
12 #include "AliFemtoPair.h"
14 class AliFemtoModelWeightGenerator
17 AliFemtoModelWeightGenerator();
18 AliFemtoModelWeightGenerator(const AliFemtoModelWeightGenerator &aModel);
19 virtual ~AliFemtoModelWeightGenerator();
20 virtual Double_t GenerateWeight(AliFemtoPair *aPair) = 0;
22 virtual void SetPairType(Int_t aPairType);
23 virtual void SetPairTypeFromPair(AliFemtoPair *aPair);
24 virtual Int_t GetPairType();
26 virtual Double_t GetKStar();
27 virtual Double_t GetKStarOut();
28 virtual Double_t GetKStarSide();
29 virtual Double_t GetKStarLong();
30 virtual Double_t GetRStar();
31 virtual Double_t GetRStarOut();
32 virtual Double_t GetRStarSide();
33 virtual Double_t GetRStarLong();
35 virtual AliFemtoModelWeightGenerator* Clone() const;
37 static const Int_t kPionPlusPionPlus;
38 static const Int_t kPionPlusPionMinus;
39 static const Int_t kKaonPlusKaonPlus;
40 static const Int_t kKaonPlusKaonMinus;
41 static const Int_t kProtonProton;
42 static const Int_t kProtonAntiproton;
43 static const Int_t kPionPlusKaonPlus;
44 static const Int_t kPionPlusKaonMinus;
45 static const Int_t kPionPlusProton;
46 static const Int_t kPionPlusAntiproton;
47 static const Int_t kKaonPlusProton;
48 static const Int_t kKaonPlusAntiproton;
53 Double_t fKStarOut; // relative momentum out component in PRF
54 Double_t fKStarSide; // relative momentum side component in PRF
55 Double_t fKStarLong; // relative momentum long component in PRF
56 Double_t fKStar; // relative momentum magnitude
58 Double_t fRStarOut; // relative separation out component in PRF
59 Double_t fRStarSide; // relative separation side component in PRF
60 Double_t fRStarLong; // relative separation long component in PRF
61 Double_t fRStar; // relative separation magnitude
65 ClassDef(AliFemtoModelWeightGenerator, 1)
70 inline Double_t AliFemtoModelWeightGenerator::GetKStar() { return fKStar; }
71 inline Double_t AliFemtoModelWeightGenerator::GetKStarOut() { return fKStarOut; }
72 inline Double_t AliFemtoModelWeightGenerator::GetKStarSide() { return fKStarSide; }
73 inline Double_t AliFemtoModelWeightGenerator::GetKStarLong() { return fKStarLong; }
74 inline Double_t AliFemtoModelWeightGenerator::GetRStar() { return fRStar; }
75 inline Double_t AliFemtoModelWeightGenerator::GetRStarOut() { return fRStarOut; }
76 inline Double_t AliFemtoModelWeightGenerator::GetRStarSide() { return fRStarSide; }
77 inline Double_t AliFemtoModelWeightGenerator::GetRStarLong() { return fRStarLong; }