]> AND Private Git Repository - loba.git/blobdiff - options.h
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Use credit to try to avoid useless transfers.
[loba.git] / options.h
index dee2953c58cba17860b324de0b6f39d675033dbd..ed32b85e42271b9708e8c3a5b11260f3a093bdc2 100644 (file)
--- a/options.h
+++ b/options.h
@@ -1,6 +1,7 @@
 #ifndef OPTIONS_H
 #define OPTIONS_H
 
 #ifndef OPTIONS_H
 #define OPTIONS_H
 
+#include <csignal>              // std::sig_atomic_t
 #include <string>
 #include "cost_func.h"
 #include "named_object_list.h"
 #include <string>
 #include "cost_func.h"
 #include "named_object_list.h"
@@ -19,10 +20,11 @@ namespace opt {
     extern std::string program_name;
     extern int help_requested;
     extern bool version_requested;
     extern std::string program_name;
     extern int help_requested;
     extern bool version_requested;
+    extern int option_x;       // hidden option, for debugging purpose
 
     // Simulation parameters
     extern int log_rate;
 
     // Simulation parameters
     extern int log_rate;
-    extern bool exit_request;
+    extern volatile std::sig_atomic_t exit_request;
 
     // Platform and deployment
     extern std::string platform_file;
 
     // Platform and deployment
     extern std::string platform_file;
@@ -41,9 +43,11 @@ namespace opt {
     // Load balancing algorithm
     extern std::string loba_algo;
     extern bool bookkeeping;
     // Load balancing algorithm
     extern std::string loba_algo;
     extern bool bookkeeping;
+    extern bool egocentric;
     extern double min_transfer_amount;
     extern double max_transfer_amount;
     extern double min_lb_iter_duration;
     extern double min_transfer_amount;
     extern double max_transfer_amount;
     extern double min_lb_iter_duration;
+    extern bool integer_transfer;
 
     // Application parameters
     extern cost_func comp_cost;
 
     // Application parameters
     extern cost_func comp_cost;