CMS 3D CMS Logo

HijingPythiaWrapper.h
Go to the documentation of this file.
1 #ifndef gen_HijingPythiaWrapper_h
2 #define gen_HijingPythiaWrapper_h
3 
5 #include "HepMC/PythiaWrapper6_4.h"
6 
7 extern "C" {
8 void py1ent_(int& ip, int& kf, double& pe, double& the, double& phi);
9 double pymass_(int&);
10 void pyexec_();
11 int pycomp_(int&);
12 void pyglfr_();
13 void pyglrhad_();
14 void pystlfr_();
15 void pystrhad_();
16 void pygive_(const char*, int);
17 void pydecy_(int& ip);
18 void pyrobo_(int&, int&, double&, double&, double&, double&, double&);
19 
20 void txgive_(const char*, int);
21 void txgive_init_(void);
22 
23 // static bool call_pygive(const std::string &line)
24 // {
25 // int numWarn = pydat1.mstu[26]; // # warnings
26 // int numErr = pydat1.mstu[22]; // # errors
27 //
28 // pygive_(line.c_str(), line.length());
29 //
30 // return pydat1.mstu[26] == numWarn &&
31 // pydat1.mstu[22] == numErr;
32 // }
33 }
34 
35 #define PYCOMP pycomp_
36 extern "C" {
37 int PYCOMP(int& length);
38 }
39 
40 #define LUGIVE pygive_
41 extern "C" {
42 void LUGIVE(const char*, int length);
43 }
44 
45 /*
46 extern "C" {
47  double ran_(int*){
48  return gen::pyr_(0);
49  }
50 }
51 */
52 
53 inline float ranff_(unsigned int* iseed) {
54  (*iseed) = (69069 * (*iseed) + 1) & 0xffffffffUL;
55  return (*iseed) / 4294967296.0;
56 }
57 
58 /*
59 
60 #include "CLHEP/Random/RandomEngine.h"
61 extern CLHEP::HepRandomEngine* randomEngine;
62 extern "C" {
63  double pyr_(int* idummy);
64 }
65 
66 CLHEP::HepRandomEngine* randomEngine;
67 
68 double pyr_(int *idummy)
69 {
70  // getInstance will throw if no one used enter/leave
71  // or this is the wrong caller class, like e.g. Herwig6Instance
72  return randomEngine->flat();
73 }
74 
75 */
76 
77 #endif
pystlfr_
void pystlfr_()
txgive_init_
void txgive_init_(void)
pystrhad_
void pystrhad_()
ranff_
float ranff_(unsigned int *iseed)
Definition: HijingPythiaWrapper.h:53
pydecy_
void pydecy_(int &ip)
pycomp_
int pycomp_(int &)
pyglfr_
void pyglfr_()
pyglrhad_
void pyglrhad_()
LUGIVE
#define LUGIVE
Definition: HijingPythiaWrapper.h:40
pygive_
void pygive_(const char *, int)
iseed
int iseed
Definition: AMPTWrapper.h:134
py1ent_
void py1ent_(int &ip, int &kf, double &pe, double &the, double &phi)
PVValHelper::phi
Definition: PVValidationHelpers.h:69
PYCOMP
#define PYCOMP
Definition: HijingPythiaWrapper.h:35
pymass_
double pymass_(int &)
txgive_
void txgive_(const char *, int)
Pythia6Service.h
pyexec_
void pyexec_()
pyrobo_
void pyrobo_(int &, int &, double &, double &, double &, double &, double &)