This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / EVGEN / AliGenParam.h
CommitLineData
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
18class AliGenParam : public AliGenerator
19{
20protected:
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