Import Geant4 10.5.0.beta source tree
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4UImanager.cc 108488 2018-02-15 14:52:00Z gcosmo $
|
||||
// $Id: G4UImanager.cc 110270 2018-05-17 14:38:26Z gcosmo $
|
||||
//
|
||||
//
|
||||
// ---------------------------------------------------------------------
|
||||
@@ -49,28 +49,42 @@
|
||||
#include <sstream>
|
||||
#include <fstream>
|
||||
|
||||
G4ThreadLocal G4UImanager * G4UImanager::fUImanager = 0;
|
||||
G4ThreadLocal G4bool G4UImanager::fUImanagerHasBeenKilled = false;
|
||||
G4UImanager * G4UImanager::fMasterUImanager = 0;
|
||||
G4UImanager*& G4UImanager::fUImanager()
|
||||
{
|
||||
G4ThreadLocalStatic G4UImanager* _instance = nullptr;
|
||||
return _instance;
|
||||
}
|
||||
|
||||
G4bool& G4UImanager::fUImanagerHasBeenKilled()
|
||||
{
|
||||
G4ThreadLocalStatic bool _instance = false;
|
||||
return _instance;
|
||||
}
|
||||
|
||||
G4UImanager*& G4UImanager::fMasterUImanager()
|
||||
{
|
||||
static G4UImanager* _instance = nullptr;
|
||||
return _instance;
|
||||
}
|
||||
G4bool G4UImanager::doublePrecisionStr = false;
|
||||
|
||||
G4int G4UImanager::igThreadID = -1;
|
||||
|
||||
G4UImanager * G4UImanager::GetUIpointer()
|
||||
{
|
||||
if(!fUImanager)
|
||||
if(!fUImanager())
|
||||
{
|
||||
if(!fUImanagerHasBeenKilled)
|
||||
if(!fUImanagerHasBeenKilled())
|
||||
{
|
||||
fUImanager = new G4UImanager;
|
||||
fUImanager->CreateMessenger();
|
||||
fUImanager() = new G4UImanager;
|
||||
fUImanager()->CreateMessenger();
|
||||
}
|
||||
}
|
||||
return fUImanager;
|
||||
return fUImanager();
|
||||
}
|
||||
|
||||
G4UImanager * G4UImanager::GetMasterUIpointer()
|
||||
{ return fMasterUImanager; }
|
||||
{ return fMasterUImanager(); }
|
||||
|
||||
G4UImanager::G4UImanager()
|
||||
: G4VStateDependent(true),
|
||||
@@ -120,8 +134,8 @@ G4UImanager::~G4UImanager()
|
||||
delete UImessenger;
|
||||
delete treeTop;
|
||||
delete aliasList;
|
||||
fUImanagerHasBeenKilled = true;
|
||||
fUImanager = NULL;
|
||||
fUImanagerHasBeenKilled() = true;
|
||||
fUImanager() = NULL;
|
||||
if(commandStack)
|
||||
{
|
||||
commandStack->clear();
|
||||
@@ -274,8 +288,8 @@ G4int parameterNumber, G4bool reGet)
|
||||
void G4UImanager::AddNewCommand(G4UIcommand * newCommand)
|
||||
{
|
||||
treeTop->AddNewCommand( newCommand );
|
||||
if(fMasterUImanager!=0&&G4Threading::G4GetThreadId()==0)
|
||||
{ fMasterUImanager->AddWorkerCommand(newCommand); }
|
||||
if(fMasterUImanager()!=0&&G4Threading::G4GetThreadId()==0)
|
||||
{ fMasterUImanager()->AddWorkerCommand(newCommand); }
|
||||
}
|
||||
|
||||
void G4UImanager::AddWorkerCommand(G4UIcommand * newCommand)
|
||||
@@ -286,8 +300,8 @@ void G4UImanager::AddWorkerCommand(G4UIcommand * newCommand)
|
||||
void G4UImanager::RemoveCommand(G4UIcommand * aCommand)
|
||||
{
|
||||
treeTop->RemoveCommand( aCommand );
|
||||
if(fMasterUImanager!=0&&G4Threading::G4GetThreadId()==0)
|
||||
{ fMasterUImanager->RemoveWorkerCommand(aCommand); }
|
||||
if(fMasterUImanager()!=0&&G4Threading::G4GetThreadId()==0)
|
||||
{ fMasterUImanager()->RemoveWorkerCommand(aCommand); }
|
||||
}
|
||||
|
||||
void G4UImanager::RemoveWorkerCommand(G4UIcommand * aCommand)
|
||||
|
||||
Reference in New Issue
Block a user