]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtPythia.hh
Not needed.
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtPythia.hh
CommitLineData
da0e9ce3 1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See BelEvtGen/COPYRIGHT
9// Copyright (C) 1998 Caltech, UCSB
10//
11// Module: BelEvtGen/EvtJetSet.hh
12//
13// Description:
14//
15// Modification history:
16//
17// DJL/RYD August 11, 1998 Module created
18// RS October 28, 2002 copied from JETSET module
19//
20//------------------------------------------------------------------------
21
22#ifndef EVTPYTHIA_HH
23#define EVTPYTHIA_HH
24
25#include "EvtGenBase/EvtDecayIncoherent.hh"
26#include "EvtGenBase/EvtParticle.hh"
27#include <string>
28
29#include <iosfwd>
30
31typedef EvtDecayBase* EvtDecayBasePtr;
32
33class EvtPythia:public EvtDecayIncoherent {
34
35public:
36
37 EvtPythia();
38 virtual ~EvtPythia();
39
40 std::string getName();
41 EvtDecayBase* clone();
42 void decay(EvtParticle *p);
43
44 std::string commandName();
45 void command(std::string cmd);
46
47 void init();
48
49 void initProbMax();
50
51 //initialize jetset; sets up decay table and
52 //paramters. Static so it can be invoked from
53 //from EvtJscont.
54 static void pythiaInit(int f);
55 static void pythiacont(double *,int *, int *,
56 double *,double *,double *,double *);
57
58private:
59
60 void store(EvtDecayBase* jsdecay);
61 void fixPolarizations(EvtParticle* p);
62 static void MakePythiaFile(char* fname);
63 static void WritePythiaParticle(std::ofstream &outdec,EvtId ipar,EvtId iparname,int &first);
64 static void WritePythiaEntryHeader(std::ofstream &outdec, int lundkc,
65 EvtId evtnum,std::string name,
66 int chg, int cchg, int spin2,double mass,
67 double width, double maxwidth,double ctau,
68 int stable,double rawbrfrsum);
69 static bool diquark(int);
70 static double NominalMass(int);
71 static int njetsetdecays;
72 static EvtDecayBasePtr* jetsetdecays;
73 static int ntable;
74
75 static int ncommand;
76 static int lcommand;
77 static std::string* commands;
78};
79
80#endif
81
82
83
84