X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/loba.git/blobdiff_plain/014983949544db9a324cece29a0ccc46b1e3e1f3..a36cada5a2972f79e94880ecce4e42b7af44ec56:/options.cpp diff --git a/options.cpp b/options.cpp index f881ad3..668aed3 100644 --- a/options.cpp +++ b/options.cpp @@ -26,7 +26,7 @@ namespace opt { // Automatic deployment namespace auto_depl { bool enabled = false; - std::string topology; + std::string topology("clique"); unsigned nhosts = 0; double load = 0.0; } @@ -52,16 +52,16 @@ namespace opt { topologies_type topologies; topologies_type::topologies_type() { + NOL_INSERT("btree", "binary tree topologym intiial load at root", + deployment_btree); + NOL_INSERT("clique", "all connected topology", deployment_clique); + NOL_INSERT("hcube", "hypercube topology", deployment_hcube); NOL_INSERT("line", "line topology, initial load at one end", deployment_line); NOL_INSERT("ring", "ring topology", deployment_ring); NOL_INSERT("star", "star topology, initial load at center", deployment_star); - NOL_INSERT("clique", "all connected topology", deployment_clique); - NOL_INSERT("btree", "binary tree topologym intiial load at root", - deployment_btree); - // NOL_INSERT("torus", "torus topology", deployment_torus); - NOL_INSERT("hcube", "hypercube topology", deployment_hcube); + NOL_INSERT("torus", "torus topology", deployment_torus); } } // namespace opt @@ -138,7 +138,6 @@ int opt::parse_args(int* argc, char* argv[]) break; } } - opt::auto_depl::enabled = !opt::auto_depl::topology.empty(); if (opt::version_requested || opt::help_requested) return 1; @@ -149,14 +148,10 @@ int opt::parse_args(int* argc, char* argv[]) ERROR0("missing parameter -- "); result = 0; } - if (!opt::auto_depl::enabled) { - if (optind < *argc) { - opt::deployment_file = argv[optind++]; - } else { - ERROR0("missing parameter -- "); - result = 0; - } + if (optind < *argc) { + opt::deployment_file = argv[optind++]; } + opt::auto_depl::enabled = opt::deployment_file.empty(); while (optind < *argc) { ERROR1("unused parameter -- \"%s\"", argv[optind++]); @@ -205,13 +200,11 @@ void opt::usage() std::clog << "Usage: " << opt::program_name - << " [options] \n"; - std::clog << " " << opt::program_name - << " [options] -T type \n"; + << " [options] []\n"; std::clog << "\nGlobal options\n"; std::clog << o("-h") - << "print help and exit (use -hh for extended help)\n"; + << "print help and exit (use -hh or -hhh for extended help)\n"; if (opt::help_requested < 1) return; @@ -225,7 +218,8 @@ void opt::usage() std::clog << "\nAutomatic deployment options\n"; std::clog << o("-T name") - << "enable automatic deployment with selected topology\n"; + << "enable automatic deployment with selected topology" + << " (" << opt::auto_depl::topology << ")\n"; if (opt::help_requested > 1) so_list(opt::topologies); std::clog << o("-L value") @@ -254,6 +248,20 @@ void opt::usage() << "maximum number of iterations, 0 for infinity" << " (" << opt::maxiter << ")\n"; + if (opt::help_requested < 3) + return; + + std::clog << "\nLogging support\n" + << " See SimGrid documentation on:\n" + << " http://simgrid.gforge.inria.fr/doc/group__XBT__log.html#log_user\n" + << " Existing categories are:\n" + << " simu : root of following categories\n" + << " main : messages from global infrastructure\n" + << " depl : messages from auto deployment (inherited from main)\n" + << " comm : messages from asynchronous pipes\n" + << " proc : messages from base process class\n" + << " loba : messages from load-balancer\n"; + #undef so_list #undef so #undef o