#ifndef PYTHIA_TPythia6
#define PYTHIA_TPythia6
#ifndef ROOT_TPythia6Calls
#include "TPythia6Calls.h"
#endif
#ifndef ROOT_TGenerator
#include "TGenerator.h"
#endif
#ifndef ROOT_TObjArray
#include "TObjArray.h"
#endif
class TPythia6 : public TGenerator {
protected:
   static  TPythia6* fgInstance;
   
   Pyjets_t*  fPyjets;
   Pydat1_t*  fPydat1;
   Pydat2_t*  fPydat2;
   Pydat3_t*  fPydat3;
   Pydat4_t*  fPydat4;
   Pydatr_t*  fPydatr;
   Pysubs_t*  fPysubs;
   Pypars_t*  fPypars;
   Pyint1_t*  fPyint1;
   Pyint2_t*  fPyint2;
   Pyint3_t*  fPyint3;
   Pyint4_t*  fPyint4;
   Pyint5_t*  fPyint5;
   Pyint6_t*  fPyint6;
   Pyint7_t*  fPyint7;
   Pyint8_t*  fPyint8;
   Pyint9_t*  fPyint9;
   Pyuppr_t*  fPyuppr;
   Pymssm_t*  fPymssm;
   Pyssmt_t*  fPyssmt;
   Pyints_t*  fPyints;
   Pybins_t*  fPybins;
   
   class  TPythia6Cleaner {
   public:
      TPythia6Cleaner();
      ~TPythia6Cleaner();
   };
   friend class TPythia6Cleaner;
   TPythia6(const TPythia6&);            
   TPythia6& operator=(const TPythia6&); 
public:
   
   TPythia6();
   virtual ~TPythia6();
   static TPythia6 *Instance();
   
   
   
   
   
   Pyjets_t*   GetPyjets        ()           { return fPyjets; }
   int         GetN             ()           { return fPyjets->N; }
   int         GetNPAD          ()           { return fPyjets->NPAD; }
   int         GetK(int ip, int i)           { return fPyjets->K[i-1][ip-1]; }
   double      GetP(int ip, int i)           { return fPyjets->P[i-1][ip-1]; }
   double      GetV(int ip, int i)           { return fPyjets->V[i-1][ip-1]; }
   void        SetN     (int n)              { fPyjets->N = n;    }
   void        SetNPAD  (int n)              { fPyjets->NPAD = n;    }
   void        SetK(int ip, int i, int k)    { fPyjets->K[i-1][ip-1] = k; }
   void        SetP(int ip, int i, double p) { fPyjets->P[i-1][ip-1] = p;    }
   void        SetV(int ip, int i, double v) { fPyjets->V[i-1][ip-1] = v;    }
   
   Pydat1_t*   GetPydat1   () { return fPydat1; }
   int         GetMSTU(int i) { return fPydat1->MSTU[i-1]; }
   double      GetPARU(int i) { return fPydat1->PARU[i-1]; }
   int         GetMSTJ(int i) { return fPydat1->MSTJ[i-1]; }
   double      GetPARJ(int i) { return fPydat1->PARJ[i-1]; }
   void        SetMSTU(int i, int m   ) { fPydat1->MSTU[i-1] = m; }
   void        SetPARU(int i, double p) { fPydat1->PARU[i-1] = p; }
   void        SetMSTJ(int i, int m   ) { fPydat1->MSTJ[i-1] = m; }
   void        SetPARJ(int i, double p) { fPydat1->PARJ[i-1] = p; }
   
   Pydat2_t*   GetPydat2           () { return fPydat2; }
   int         GetKCHG(int ip, int i) { return fPydat2->KCHG[i-1][ip-1]; }
   double      GetPMAS(int ip, int i) { return fPydat2->PMAS[i-1][ip-1]; }
   double      GetPARF        (int i) { return fPydat2->PARF[i-1]; }
   double      GetVCKM(int i,  int j) { return fPydat2->VCKM[j-1][i-1]; }
   void        SetKCHG(int ip, int i, int k   ) { fPydat2->KCHG[i-1][ip-1] = k; }
   void        SetPMAS(int ip, int i, double m) { fPydat2->PMAS[i-1][ip-1] = m; }
   void        SetPARF        (int i, double p) { fPydat2->PARF[i-1]       = p; }
   void        SetVCKM (int i, int j, double v) { fPydat2->VCKM[j-1][i-1]  = v; }
   
   Pydat3_t*   GetPydat3() { return fPydat3; }
   int         GetMDCY(int i, int j) { return fPydat3->MDCY[j-1][i-1]; }
   int         GetMDME(int i, int j) { return fPydat3->MDME[j-1][i-1]; }
   double      GetBRAT       (int i) { return fPydat3->BRAT[i-1]; }
   int         GetKFDP(int i, int j) { return fPydat3->KFDP[j-1][i-1]; }
   void        SetMDCY(int i, int j, int m) { fPydat3->MDCY[j-1][i-1] = m; }
   void        SetMDME(int i, int j, int m) { fPydat3->MDME[j-1][i-1] = m; }
   void        SetBRAT(int i, double b)     { fPydat3->BRAT[i-1]      = b; }
   void        SetKFDP(int i, int j, int k) { fPydat3->KFDP[j-1][i-1] = k; }
   
   Pydat4_t*   GetPydat4() { return fPydat4; }
   
   Pydatr_t*   GetPydatr   () { return fPydatr; }
   int         GetMRPY(int i) { return fPydatr->MRPY[i-1]; }
   double      GetRRPY(int i) { return fPydatr->RRPY[i-1]; }
   void        SetMRPY(int i, int m)    { fPydatr->MRPY[i-1] = m; }
   void        SetRRPY(int i, double r) { fPydatr->RRPY[i-1] = r; }
   
   Pysubs_t*   GetPysubs     () { return fPysubs; }
   int         GetMSEL       () { return fPysubs->MSEL; }
   int         GetMSELPD     () { return fPysubs->MSELPD; }
   int         GetMSUB  (int i) { return fPysubs->MSUB[i-1]; }
   double      GetCKIN  (int i) { return fPysubs->CKIN[i-1]; }
   Int_t       GetKFIN(int i, int j)  {return fPysubs->KFIN[j+40][i-1]; }
   void        SetMSEL   (int m)           { fPysubs->MSEL      = m; }
   void        SetMSELPD (int m)           { fPysubs->MSELPD    = m; }
   void        SetMSUB   (int i, int m)    { fPysubs->MSUB[i-1] = m; }
   void        SetCKIN   (int i, double c) { fPysubs->CKIN[i-1] = c; }
   void        SetKFIN(int i, int j, Int_t kfin=1) { fPysubs->KFIN[j+40][i-1] = kfin; }
   
   Pypars_t*   GetPypars() { return fPypars; }
   int         GetMSTP(int i) { return fPypars->MSTP[i-1]; }
   double      GetPARP(int i) { return fPypars->PARP[i-1]; }
   int         GetMSTI(int i) { return fPypars->MSTI[i-1]; }
   double      GetPARI(int i) { return fPypars->PARI[i-1]; }
   void        SetMSTP   (int i, int    m) { fPypars->MSTP[i-1] = m; }
   void        SetPARP   (int i, double p) { fPypars->PARP[i-1] = p; }
   void        SetMSTI   (int i, int    m) { fPypars->MSTI[i-1] = m; }
   void        SetPARI   (int i, double p) { fPypars->PARI[i-1] = p; }
   
   Pyint1_t*   GetPyint1() { return fPyint1; }
   int         GetMINT(int i) { return fPyint1->MINT[i-1]; }
   double      GetVINT(int i) { return fPyint1->VINT[i-1]; }
   void        SetMINT(int i, int m   ) { fPyint1->MINT[i-1] = m; }
   void        SetVINT(int i, double v) { fPyint1->VINT[i-1] = v; }
   
   Pyint2_t*   GetPyint2() { return fPyint2; }
   Pyint3_t*   GetPyint3() { return fPyint3; }
   
   Pyint4_t*   GetPyint4() { return fPyint4; }
   int         GetMWID      (int i) { return fPyint4->MWID[i-1]; }
   double      GetWIDS(int i,int j) { return fPyint4->WIDS[j-1][i-1]; }
   void        SetMWID(int i, int m)           { fPyint4->MWID[i-1]      = m; }
   void        SetWIDS(int i, int j, double w) { fPyint4->WIDS[j-1][i-1] = w; }
   
   Pyint5_t*   GetPyint5() { return fPyint5; }
   int         GetNGENPD() { return fPyint5->NGENPD; }
   void        SetNGENPD(int n) { fPyint5->NGENPD = n; }
   
   Pyint6_t*   GetPyint6   () { return fPyint6; }
   char*       GetPROC(int i) { fPyint6->PROC[i][27]=0; return fPyint6->PROC[i]; }
   Pyint7_t*   GetPyint7() { return fPyint7; }
   Pyint8_t*   GetPyint8() { return fPyint8; }
   Pyint9_t*   GetPyint9() { return fPyint9; }
   Pyuppr_t*   GetPyuppr() { return fPyuppr; }
   
   
   Pymssm_t*   GetPymssm()    { return fPymssm; }
   int         GetIMSS(int i) { return fPymssm->IMSS[i]; }
   double      GetRMSS(int i) { return fPymssm->RMSS[i]; }
   void        SetIMSS(int i, int    m) { fPymssm->IMSS[i] = m; }
   void        SetRMSS(int i, double r) { fPymssm->RMSS[i] = r; }
   
   Pyssmt_t*   GetPyssmt()           { return fPyssmt; }
   double      GetZMIX(int i, int j) { return fPyssmt->ZMIX[j-1][i-1]; }
   double      GetUMIX(int i, int j) { return fPyssmt->UMIX[j-1][i-1]; }
   double      GetVMIX(int i, int j) { return fPyssmt->VMIX[j-1][i-1]; }
   double      GetSMZ        (int i) { return fPyssmt->SMZ[i-1]; }
   double      GetSMW        (int i) { return fPyssmt->SMW[i-1]; }
   void        SetZMIX(int i, int j, double z) { fPyssmt->ZMIX[j-1][i-1] = z; }
   void        SetUMIX(int i, int j, double u) { fPyssmt->UMIX[j-1][i-1] = u; }
   void        SetSMZ (int i, double s)        { fPyssmt->SMZ[i-1]       = s; }
   void        SetSMW (int i, double s)        { fPyssmt->SMW[i-1]       = s; }
   Pyints_t*   GetPyints() { return fPyints; }
   Pybins_t*   GetPybins() { return fPybins; }
   
   void             GenerateEvent();
   void             Initialize(const char *frame, const char *beam, const char *target, float win);
   Int_t            ImportParticles(TClonesArray *particles, Option_t *option="");
   TObjArray       *ImportParticles(Option_t *option="");
   void             OpenFortranFile(int lun, char* name);
   void             CloseFortranFile(int lun);
   int              Pychge(int kf);
   int              Pycomp(int kf);
   void             Pydiff();
   void             Pyedit(int medit);
   void             Pyevnt();
   void             Py1ent(Int_t line, Int_t kf, Double_t pe, Double_t theta, Double_t phi);
   void             Pyexec();
   void             Pyhepc(int mconv);
   void             Pyinit(char* frame, char* beam, char* target, double wint);
   void             Pylist(int flag);
   double           Pymass(int kf);
   void             Pyname(int kf, char* name);
   double           Pyr(int idummy);
   void             Pyrget(int lun, int move);
   void             Pyrset(int lun, int move);
   void             Pystat(int flag);
   void             Pytest(int flag);
   void             Pyupda(int mupda, int lun);
   void             SetupTest();
   ClassDef(TPythia6,0)  
};
#endif
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.