47{
48
49 if (pTable == nullptr) {
51 }
52 else {
53 theParticleTable = pTable;
54 }
55
56
57 thisDirectory = new G4UIdirectory("/particle/");
58 thisDirectory->SetGuidance("Particle control commands.");
59
60
61 selectCmd = new G4UIcmdWithAString("/particle/select", this);
62 selectCmd->SetGuidance("Select particle ");
63 selectCmd->SetDefaultValue("none");
64 selectCmd->SetParameterName("particle name", false);
66
67
68 listCmd = new G4UIcmdWithAString("/particle/list", this);
69 listCmd->SetGuidance("List name of particles.");
70 listCmd->SetGuidance(" all(default)/lepton/baryon/meson/nucleus/quarks");
71 listCmd->SetParameterName("particle type", true);
72 listCmd->SetDefaultValue("all");
73 listCmd->SetCandidates("all lepton baryon meson nucleus quarks");
75
76
77 findCmd = new G4UIcmdWithAnInteger("/particle/find", this);
78 findCmd->SetGuidance("Find particle by encoding");
79 findCmd->SetDefaultValue(0);
80 findCmd->SetParameterName("encoding", false);
82
83
84 createAllIonCmd = new G4UIcmdWithoutParameter("/particle/createAllIon", this);
85 createAllIonCmd->SetGuidance("Create All ions (ground state)");
87 createAllIonCmd->SetToBeBroadcasted(false);
88
89
90 createAllIsomerCmd = new G4UIcmdWithoutParameter("/particle/createAllIsomer", this);
91 createAllIsomerCmd->SetGuidance("Create All isomers");
93 createAllIsomerCmd->SetToBeBroadcasted(false);
94
95
96 verboseCmd = new G4UIcmdWithAnInteger("/particle/verbose", this);
97 verboseCmd->SetGuidance("Set Verbose level of particle table.");
98 verboseCmd->SetGuidance(" 0 : Silent (default)");
99 verboseCmd->SetGuidance(" 1 : Display warning messages");
100 verboseCmd->SetGuidance(" 2 : Display more");
101 verboseCmd->SetParameterName("verbose_level", true);
102 verboseCmd->SetDefaultValue(0);
103 verboseCmd->SetRange("verbose_level >=0");
104
105
106 fParticlePropertyMessenger = new G4ParticlePropertyMessenger(theParticleTable);
107}
static G4ParticleTable * GetParticleTable()