57int main(
int argc,
char** argv)
71 for ( G4int i=1; i<argc; i=i+2 ) {
72 if (
G4String(argv[i]) ==
"-m" ) macro = argv[i+1];
73 else if (
G4String(argv[i]) ==
"-u" ) session = argv[i+1];
75 else if (
G4String(argv[i]) ==
"-t" ) {
76 nThreads = G4UIcommand::ConvertToInt(argv[i+1]);
88 if ( ! macro.size() ) {
99 G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default);
100#ifdef G4MULTITHREADED
101 if ( nThreads > 0 ) {
102 runManager->SetNumberOfThreads(nThreads);
109 runManager->SetUserInitialization(detConstruction);
112 runManager->SetUserInitialization(physicsList);
115 runManager->SetUserInitialization(actionInitialization);
122 visManager->Initialize();
125 auto UImanager = G4UImanager::GetUIpointer();
129 if ( macro.size() ) {
131 G4String command =
"/control/execute ";
132 UImanager->ApplyCommand(command+macro);
136 UImanager->ApplyCommand(
"/control/execute init_vis.mac");
138 UImanager->ApplyCommand(
"/control/execute gui.mac");