54 data.resize(n,
nullptr);
61 for(
size_t i=0; i<tLength; ++i) {
62 for(
size_t j = i+1; j<tLength; ++j) {
63 if(data[j] == data[i]) { data[j] =
nullptr; }
84 if(ptr != data[idx]) { data[idx] = ptr; }
86 G4cout <<
"### G4EmDataHandler::UpdateTable fail for idx=" << idx
87 <<
" length=" << tLength <<
G4endl;
97 data.push_back(
nullptr);
113 if(ptr != data[idx]) {
130 if(i < tLength &&
nullptr != data[i]) {
131 data[i]->clearAndDestroy();
145 if(
nullptr != data[idx]) {
146 yes = data[idx]->StorePhysicsTable(fname, ascii);
149 G4cout <<
"### Physics table is stored for "
151 <<
" <" << fname <<
"> " <<
G4endl;
153 G4cout <<
"### Fail to store Physics Table for "
155 <<
" <" << fname <<
"> " <<
G4endl;
173 G4cout <<
"### Physics table " << idx <<
" for "
175 <<
" is retrieved from <" << fname <<
">"
178 }
else if (1 < param->
Verbose()) {
179 G4cout <<
"### Fail to retrieve physics table " << idx <<
" for "
181 << fname <<
">" <<
G4endl;
190 masterProcess.push_back(ptr);
197 return (idx < masterProcess.size()) ? masterProcess[idx] :
nullptr;
G4GLOB_DLL std::ostream G4cout
void SetMasterProcess(const G4VEmProcess *)
void CleanTable(size_t idx)
G4PhysicsTable * MakeTable(size_t idx)
G4bool RetrievePhysicsTable(size_t idx, const G4ParticleDefinition *part, const G4String &fname, G4bool ascii, G4bool spline)
void UpdateTable(G4PhysicsTable *, size_t idx)
const G4VEmProcess * GetMasterProcess(size_t idx) const
G4PhysicsTable * Table(size_t idx) const
size_t SetTable(G4PhysicsTable *)
G4EmDataHandler(size_t nTable)
G4bool StorePhysicsTable(size_t idx, const G4ParticleDefinition *part, const G4String &fname, G4bool ascii)
static G4EmParameters * Instance()
const G4String & GetParticleName() const
static G4PhysicsTable * PreparePhysicsTable(G4PhysicsTable *physTable)
static G4bool RetrievePhysicsTable(G4PhysicsTable *physTable, const G4String &fileName, G4bool ascii, G4bool spline)