]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | |
2 | #ifndef AliGenParam_H | |
3 | #define AliGenParam_H | |
4 | #include "AliGenerator.h" | |
5 | #include "AliPythia.h" | |
6 | #include "TNamed.h" | |
7 | #include "TF1.h" | |
8 | #include "TArrayF.h" | |
9 | #include "TArrayI.h" | |
10 | #include "TTree.h" | |
11 | #include "TMCParticle.h" | |
12 | ||
13 | //------------------------------------------------------------- | |
14 | // Generators specific to MUON Arm | |
15 | ||
16 | // Generate heavy mesons - J/Psi, Upsilon, Phi | |
17 | ||
18 | class AliGenParam : public AliGenerator | |
19 | { | |
20 | protected: | |
21 | Double_t (*fPtParaFunc)(Double_t*, Double_t*); | |
22 | Double_t (*fYParaFunc )(Double_t*, Double_t*); | |
23 | Int_t (*fIpParaFunc )(); | |
24 | TF1* fPtPara; | |
25 | TF1* fYPara; | |
26 | Int_t fIpart; | |
27 | Float_t fdNdy0; | |
28 | Float_t fYWgt; | |
29 | Float_t fPtWgt; | |
30 | Float_t fBias; | |
31 | Int_t fTrials; | |
32 | Decay_t fForceDecay; | |
33 | TArrayI fChildSelect; | |
34 | AliPythia *fPythia; | |
35 | private: | |
36 | // check if particle is selected as child | |
37 | Bool_t ChildSelected(Int_t ip); | |
38 | // all kinematic selection goes here | |
39 | Bool_t KinematicSelection(TMCParticle *particle); | |
40 | public: | |
41 | AliGenParam(); | |
42 | AliGenParam(Int_t npart, Int_t ipart); | |
43 | // Double_t (*PtPara)(Double_t*, Double_t*), | |
44 | // Double_t (*YPara )(Double_t*, Double_t*)); | |
45 | virtual ~AliGenParam(); | |
46 | virtual void Generate(); | |
47 | virtual void Init(); | |
48 | // select particle type | |
49 | virtual void SetPart(Int_t part=443) {fIpart=part;} | |
50 | // force decay type | |
51 | virtual void ForceDecay(Decay_t decay=dimuon) {fForceDecay=decay;} | |
52 | ClassDef(AliGenParam,1) | |
53 | }; | |
54 | #endif | |
55 | ||
56 | ||
57 | ||
58 | ||
59 | ||
60 | ||
61 | ||
62 | ||
63 | ||
64 |