Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
FemtoWeightGenerator.h
1/*
2 * FemtoWeightGenerator.h
3 * derived from ALICE AliFemtoWeightGenerator
4 * Created on: 21-08-2013
5 * Author: Daniel Wielanek
6 * E-mail: daniel.wielanek@gmail.com
7 * Warsaw University of Technology, Faculty of Physics
8 */
9
10#ifndef HALFEMTOWEIGHTGENERATOR_H_
11#define HALFEMTOWEIGHTGENERATOR_H_
12
13#include "FemtoConst.h"
14#include "Package.h"
15
16#include <Rtypes.h>
17#include <RtypesCore.h>
18
19
20namespace Hal {
21 class FemtoPair;
25 class FemtoWeightGenerator : public TObject {
26 protected:
30 Femto::EPairType fPairType;
34 Int_t fTaskID;
38 Double_t fKStarOut;
42 Double_t fKStarSide;
46 Double_t fKStarLong;
50 Double_t fKStar;
54 Double_t fRStarOut;
58 Double_t fRStarSide;
62 Double_t fRStarLong;
66 Double_t fRStar;
72
73 public:
87 virtual FemtoWeightGenerator* MakeCopy() const { return new FemtoWeightGenerator(*this); };
99 virtual Double_t GenerateWeight(FemtoPair* pair);
104 virtual void SetPairType(Femto::EPairType aPairType);
109 virtual void SetPairTypeFromPair(FemtoPair* pair);
114 virtual Femto::EPairType GetPairType() const;
120 virtual Femto::EPairType GetPairTypeFromPair(FemtoPair* pair);
125 virtual Double_t GetKStar() const;
130 virtual Double_t GetKStarOut() const;
135 virtual Double_t GetKStarSide() const;
140 virtual Double_t GetKStarLong() const;
145 virtual Double_t GetRStar() const;
150 virtual Double_t GetRStarOut() const;
155 virtual Double_t GetRStarSide() const;
160 virtual Double_t GetRStarLong() const;
165 virtual FemtoWeightGenerator* Clone(const char* /*newname*/ = "") const { return 0; };
170 virtual Int_t GetPdg1();
175 virtual Int_t GetPdg2();
179 virtual Bool_t Init(Int_t task_id, FemtoPair* pair);
185 virtual Bool_t IsPairSupported(Femto::EPairType /*type*/) const { return kFALSE; };
186 virtual void Print(Option_t* option = "") const;
187 virtual Package* Report() const;
188 virtual ~FemtoWeightGenerator();
189
190 ClassDef(FemtoWeightGenerator, 1)
191 };
192
193 inline Double_t FemtoWeightGenerator::GetKStar() const { return fKStar; }
194
195 inline Double_t FemtoWeightGenerator::GetKStarOut() const { return fKStarOut; }
196
197 inline Double_t FemtoWeightGenerator::GetKStarSide() const { return fKStarSide; }
198
199 inline Double_t FemtoWeightGenerator::GetKStarLong() const { return fKStarLong; }
200
201 inline Double_t FemtoWeightGenerator::GetRStar() const { return fRStar; }
202
203 inline Double_t FemtoWeightGenerator::GetRStarOut() const { return fRStarOut; }
204
205 inline Double_t FemtoWeightGenerator::GetRStarSide() const { return fRStarSide; }
206
207 inline Double_t FemtoWeightGenerator::GetRStarLong() const { return fRStarLong; }
208
209 inline Bool_t FemtoWeightGenerator::Init(Int_t task_id, FemtoPair* /*pair*/) {
210 fTaskID = task_id;
211 return kTRUE;
212 }
213
214 inline Package* FemtoWeightGenerator::Report() const { return new Package(this); }
215} // namespace Hal
216#endif /* HALFEMTOWEIGHTGENERATOR_H_ */
virtual FemtoWeightGenerator & operator=(const FemtoWeightGenerator &aModel)
virtual Double_t GetKStar() const
virtual Double_t GetRStar() const
virtual Bool_t Init(Int_t task_id, FemtoPair *pair)
void CalculateKinematics(FemtoPair *pair)
virtual Double_t GetRStarLong() const
virtual Double_t GenerateWeight(FemtoPair *pair)
virtual Double_t GetRStarOut() const
virtual void SetPairTypeFromPair(FemtoPair *pair)
virtual Femto::EPairType GetPairTypeFromPair(FemtoPair *pair)
virtual Femto::EPairType GetPairType() const
virtual Double_t GetKStarSide() const
virtual Bool_t IsPairSupported(Femto::EPairType) const
virtual FemtoWeightGenerator * MakeCopy() const
virtual Double_t GetKStarLong() const
virtual Double_t GetRStarSide() const
virtual Double_t GetKStarOut() const
virtual void SetPairType(Femto::EPairType aPairType)
virtual FemtoWeightGenerator * Clone(const char *="") const