36#include <boost/python.hpp> 
   41using namespace boost::python;
 
   52  MedicalBeam* medicalbeam= 
new MedicalBeam();
 
   53  runMgr-> SetUserAction(medicalbeam);
 
   66    beam-> SetParticleDefinition(pd);
 
   68    G4cout << 
"*** \"" << 
pname << 
"\" is not registered " 
   69           << 
"in available particle list" << 
G4endl;
 
   79  if(pd==0) 
return std::string(
"None");
 
   80  else return (pd-> GetParticleName()).c_str();
 
   87  G4double fx= extract<double>(listXY[0]);
 
   88  G4double fy= extract<double>(listXY[1]);
 
   89  beam-> SetFieldXY(fx, fy);
 
   99  listFieldXY.append(beam-> GetFieldX());
 
  100  listFieldXY.append(beam-> GetFieldY());
 
  114  class_<MedicalBeam, MedicalBeam*,
 
  115    bases<G4VUserPrimaryGeneratorAction> >
 
  116    (
"MedicalBeam", 
"primary generator action with medical beam")
 
  153  enum_<MedicalBeam::FieldShape>(
"FieldShape")
 
  160      return_value_policy<reference_existing_object>());
 
G4GLOB_DLL std::ostream G4cout
 
static G4ParticleTable * GetParticleTable()
 
static G4RunManager * GetRunManager()
 
void SetFieldR(G4double r)
 
G4double GetKineticE() const
 
void SetSSD(G4double ssd)
 
void SetKineticE(G4double e)
 
G4double GetFieldR() const
 
G4double GetFieldX() const
 
void SetFieldShape(FieldShape shape)
 
G4double GetFieldY() const
 
FieldShape GetFieldShape() const
 
void SetSourcePosition(const G4ThreeVector &pos)
 
G4ThreeVector GetSourcePosition() const
 
void f_SetFieldXY(MedicalBeam *beam, const list &listXY)
 
std::string GetParticleByName(MedicalBeam *beam)
 
MedicalBeam * Construct()
 
void SetParticleByName(MedicalBeam *beam, const std::string &pname)
 
list f_GetFieldXY(MedicalBeam *beam)
 
BOOST_PYTHON_MODULE(_MedicalBeam)