38 fIons(new TObjArray()),
39 fParticles( new TObjArray()),
40 ListOfModules(new TObjArray()),
43 fLoaderName( new TString("TGeo")),
44 fPythiaDecayer(kFALSE),
45 fPythiaDecayerConfig(""),
51 fMeshList( new TObjArray() ),
57 Fatal(
"FairRun",
"Singleton instance already exists.");
131 GeoInterFace->setMediaFile(
MatFname.Data());
132 GeoInterFace->readMedia();
183 TIter next(containerList);
185 TObjArray* ContList=
new TObjArray();
187 ContList->Add(
new TObjString(cont->GetName()));
204 fField->FillParContainer();
211 TString work = getenv(
"VMCWORKDIR");
212 TString work_config=work+
"/gconfig/";
213 TString config_dir= getenv(
"CONFIG_DIR");
214 if (!config_dir.EndsWith(
"/")) { config_dir+=
"/"; }
216 if(strcmp(GetName(),
"TFluka") == 0 ) {
217 TString flexec=
"run_fluka.sh";
218 if (TString(gSystem->FindFile(config_dir.Data(),flexec)) != TString(
"")) {
221 flexec=work_config+
"run_fluka.sh";
223 gSystem->Exec(flexec.Data());
226 TString macrodir = getenv(
"PWD");
227 cout << macrodir << endl;
228 flout = macrodir +
"/fluka_out" ;
229 gSystem->cd(flout.Data());
238 TString work = getenv(
"VMCWORKDIR");
240 TString work_config=work+
"/gconfig/";
241 TString config_dir= getenv(
"CONFIG_DIR");
242 Bool_t AbsPath=kFALSE;
243 if (!config_dir.EndsWith(
"/")) { config_dir+=
"/"; }
254 if(strcmp(GetName(),
"TGeant4") == 0 ) {
258 g4Macro=
"g4Config.C";
272 if (!AbsPath && TString(gSystem->FindFile(config_dir.Data(),g4Macro)) != TString(
"")) {
280 }
else if(strcmp(GetName(),
"TGeant3") == 0 ) {
283 TString g3Macro=
"g3Config.C";
285 g3Macro=
"g3Config.C";
300 if (!AbsPath && TString(gSystem->FindFile(config_dir.Data(),g3Macro)) != TString(
"")) {
311 }
else if(strcmp(GetName(),
"TFluka") == 0 ) {
313 TString flMacro=
"flConfig.C";
315 flMacro=
"flConfig.C";
329 if (!AbsPath && TString(gSystem->FindFile(config_dir.Data(),flMacro)) != TString(
"")) {
339 if (TString(gSystem->FindFile(config_dir.Data(),cuts)) != TString(
"")) {
351 gROOT->LoadMacro(ConfigMacro.Data());
353 gROOT->ProcessLine(
"Config()");
356 gROOT->LoadMacro(cuts);
358 gROOT->ProcessLine(
"SetCuts()");
361 fApp->
InitMC(ConfigMacro.Data(), cuts.Data());
389 TString work = getenv(
"GEOMPATH");
391 work = getenv(
"VMCWORKDIR");
392 Mat=work+
"/geometry/";
395 if (!Mat.EndsWith(
"/")) { Mat+=
"/"; }
403 if ( strncmp(fName,
"TGeant3",7) == 0 ) {