32 #ifdef G4LIB_USE_PYTHIA
34 #include "HepMCG4PythiaInterface.hh"
35 #include "HepMCG4PythiaMessenger.hh"
37 #include "HepMC/GenEvent.h"
38 #include "HepMC/PythiaWrapper6_4.h"
42 #define pygive pygive_
43 #define pyrget pyrget_
44 #define pyrset pyrset_
47 void pygive(
const char*,
int);
48 void pyrget(
int*,
int*);
49 void pyrset(
int*,
int*);
52 void call_pygive(
G4String s) { pygive(s.c_str(), s.length()); }
53 void call_pyrget(
int a,
int b) { pyrget(&a, &b); }
54 void call_pyrset(
int a,
int b) { pyrset(&a, &b); }
58 : verbose(0), mpylist(0)
60 #ifdef NEED_INITPYDATA
86 call_pyinit(frame.c_str(), beam.c_str(), target.c_str(), win);
98 pydatr.mrpy[1-1]= iseed;
104 call_pyrget(lun, move);
110 call_pyrset(lun, move);
116 ostr <<
"# Pythia random numbers status" <<
G4endl;
117 for (
G4int j=0; j<6; j++) {
118 ostr <<
"pydatr.mrpy[" << j <<
"]= " << pydatr.mrpy[j] <<
G4endl;
120 for (
G4int k=0; k<100; k++) {
121 ostr <<
"pydatr.rrpy[" << k <<
"]= " << pydatr.rrpy[k] <<
G4endl;
128 G4cout <<
"set user parameters of PYTHIA common." << G4endl
129 <<
"nothing to be done in default."
143 HepMC::GenEvent* evt=
hepevtio.read_next_event();
144 evt-> set_event_number(nevent++);
void print(G4double elem)
void CallPygive(G4String par)
std::vector< ExP01TrackerHit * > a
void CallPyinit(G4String frame, G4String beam, G4String target, G4double win)
~HepMCG4PythiaInterface()
HepMC::IO_HEPEVT hepevtio
HepMCG4PythiaMessenger * messenger
virtual void Print() const
void CallPystat(G4int istat)
virtual HepMC::GenEvent * GenerateHepMCEvent()
void PrintRandomStatus(std::ostream &ostr=G4cout) const
virtual void SetUserParameters()
G4GLOB_DLL std::ostream G4cout
void CallPyrset(G4int lun, G4int move)
void CallPyrget(G4int lun, G4int move)
void SetRandomSeed(G4int iseed)