- TRY {
- exit_status = EXIT_FAILURE_INIT; // =====
-
- // Register the default function of an agent
- // MSG_function_register("simulation_main", simulation_main);
- MSG_function_register_default(simulation_main);
-
- // Create the platform and the application.
- XBT_DEBUG("Loading platform file...");
- MSG_create_environment(opt::platform_file.c_str());
- XBT_DEBUG("Creating hostdata...");
- hostdata::create();
- XBT_INFO("Loaded description of %zd hosts.", hostdata::size());
- XBT_DEBUG("Deploying processes...");
- if (opt::auto_depl::enabled) {
- if (!opt::auto_depl::nhosts)
- opt::auto_depl::nhosts = hostdata::size();
- if (opt::auto_depl::nhosts > hostdata::size()) {
- XBT_WARN("%u hosts is too much: limiting to %zu",
- opt::auto_depl::nhosts, hostdata::size());
- opt::auto_depl::nhosts = hostdata::size();
- }
- if (opt::auto_depl::load == 0.0) {
- XBT_WARN("Initial load is zero! "
- "Falling back on old behaviour (load = nhosts).");
- opt::auto_depl::load = opt::auto_depl::nhosts;
- } else if (opt::auto_depl::load < 0.0)
- opt::auto_depl::load =
- -opt::auto_depl::load * opt::auto_depl::nhosts;
- double iload = trunc(opt::auto_depl::load);
- if (opt::integer_transfer && opt::auto_depl::load != iload) {
- XBT_WARN("Total load %g is not an integer. Truncate it.",
- opt::auto_depl::load);
- opt::auto_depl::load = iload;
- }
- MY_launch_application(); // it is already opt::* aware...
- } else {
- MSG_launch_application(opt::deployment_file.c_str());
+ // Register the default function of an agent
+ // MSG_function_register("simulation_main", simulation_main);
+ MSG_function_register_default(simulation_main);
+
+ // Create the platform and the application.
+ XBT_DEBUG("Loading platform file...");
+ check_file_access(opt::platform_file);
+ MSG_create_environment(opt::platform_file.c_str());
+ XBT_DEBUG("Creating hostdata...");
+ hostdata::create();
+ XBT_INFO("Loaded description of %zd hosts.", hostdata::size());
+ XBT_DEBUG("Deploying processes...");
+ if (opt::auto_depl::enabled) {
+ if (!opt::auto_depl::nhosts)
+ opt::auto_depl::nhosts = hostdata::size();
+ if (opt::auto_depl::nhosts > hostdata::size()) {
+ XBT_WARN("%u hosts is too much: limiting to %zu",
+ opt::auto_depl::nhosts, hostdata::size());
+ opt::auto_depl::nhosts = hostdata::size();