Geant4-11
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pyG4ParticleDefinition.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26// ====================================================================
27// pyG4ParticleDefinition.cc
28//
29// 2005 Q
30// ====================================================================
31#include <boost/python.hpp>
32#include "G4Version.hh"
34#include "G4ParticleTable.hh"
35#include "G4DecayTable.hh"
36#include "G4ProcessManager.hh"
37
38using namespace boost::python;
39
40// ====================================================================
41// module definition
42// ====================================================================
44{
45 class_<G4ParticleDefinition, G4ParticleDefinition*, boost::noncopyable>
46 ("G4ParticleDefinition", "particle definition", no_init)
47 // ---
48 .def("GetParticleName", &G4ParticleDefinition::GetParticleName,
49 return_value_policy<return_by_value>())
50 .def("GetPDGMass", &G4ParticleDefinition::GetPDGMass)
51 .def("GetPDGWidth", &G4ParticleDefinition::GetPDGWidth)
52 .def("GetPDGCharge", &G4ParticleDefinition::GetPDGCharge)
53 .def("GetPDGSpin", &G4ParticleDefinition::GetPDGSpin)
54 .def("GetPDGiSpin", &G4ParticleDefinition::GetPDGiSpin)
55 .def("GetPDGiParity", &G4ParticleDefinition::GetPDGiParity)
56 .def("GetPDGiConjugation", &G4ParticleDefinition::GetPDGiConjugation)
57 .def("GetPDGIsospin", &G4ParticleDefinition::GetPDGIsospin)
58 .def("GetPDGIsospin3", &G4ParticleDefinition::GetPDGIsospin3)
59 .def("GetPDGiIsospin", &G4ParticleDefinition::GetPDGiIsospin)
60 .def("GetPDGiIsospin3", &G4ParticleDefinition::GetPDGiIsospin3)
61 .def("GetPDGiGParity", &G4ParticleDefinition::GetPDGiGParity)
62 .def("GetParticleType", &G4ParticleDefinition::GetParticleType,
63 return_value_policy<return_by_value>())
64 .def("GetParticleSubType", &G4ParticleDefinition::GetParticleSubType,
65 return_value_policy<return_by_value>())
66 .def("GetLeptonNumber", &G4ParticleDefinition::GetLeptonNumber)
67 .def("GetBaryonNumber", &G4ParticleDefinition::GetBaryonNumber)
68 .def("GetPDGEncoding", &G4ParticleDefinition::GetPDGEncoding)
69 .def("GetAntiPDGEncoding", &G4ParticleDefinition::GetAntiPDGEncoding)
70 .def("GetQuarkContent", &G4ParticleDefinition::GetQuarkContent)
71 .def("GetAntiQuarkContent",&G4ParticleDefinition::GetAntiQuarkContent)
72 .def("IsShortLived", &G4ParticleDefinition::IsShortLived)
73 .def("GetPDGStable", &G4ParticleDefinition::GetPDGStable)
74 .def("SetPDGStable", &G4ParticleDefinition::SetPDGStable)
75 .def("GetPDGLifeTime", &G4ParticleDefinition::GetPDGLifeTime)
76 .def("SetPDGLifeTime", &G4ParticleDefinition::SetPDGLifeTime)
77 .def("GetDecayTable", &G4ParticleDefinition::GetDecayTable,
78 return_internal_reference<>())
79 .def("SetDecayTable", &G4ParticleDefinition::SetDecayTable)
80 .def("GetProcessManager", &G4ParticleDefinition::GetProcessManager,
81 return_internal_reference<>())
82 .def("SetProcessManager", &G4ParticleDefinition::SetProcessManager)
83 // cludge!! (G4ParticleTable object is sigleton!!)
84 .def("GetParticleTable", &G4ParticleDefinition::GetParticleTable,
85 return_value_policy<reference_existing_object>())
86 .def("DumpTable", &G4ParticleDefinition::DumpTable)
87#if G4VERSION_NUMBER >= 701
88 .def("GetAtomicNumber", &G4ParticleDefinition::GetAtomicNumber)
89 .def("GetAtomicMass", &G4ParticleDefinition::GetAtomicMass)
90#endif
91 .def("SetVerboseLevel", &G4ParticleDefinition::SetVerboseLevel)
92 .def("GetVerboseLevel", &G4ParticleDefinition::GetVerboseLevel)
93 .def("SetApplyCutsFlag", &G4ParticleDefinition::SetApplyCutsFlag)
94 .def("GetApplyCutsFlag", &G4ParticleDefinition::GetApplyCutsFlag)
95 ;
96}
97
G4ProcessManager * GetProcessManager() const
G4bool GetPDGStable() const
G4double GetPDGIsospin() const
G4int GetAtomicNumber() const
const G4String & GetParticleType() const
G4int GetVerboseLevel() const
G4int GetAtomicMass() const
void SetPDGStable(const G4bool aFlag)
G4int GetQuarkContent(G4int flavor) const
void SetVerboseLevel(G4int value)
G4double GetPDGWidth() const
G4double GetPDGCharge() const
void SetPDGLifeTime(G4double aLifeTime)
G4DecayTable * GetDecayTable() const
G4ParticleTable * GetParticleTable() const
void SetDecayTable(G4DecayTable *aDecayTable)
G4double GetPDGLifeTime() const
G4bool GetApplyCutsFlag() const
const G4String & GetParticleName() const
G4double GetPDGIsospin3() const
void SetProcessManager(G4ProcessManager *aProcessManager)
const G4String & GetParticleSubType() const
G4int GetAntiQuarkContent(G4int flavor) const
void export_G4ParticleDefinition()