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

Private GIT Repository
Remove usage of std::bind.
[loba.git] / deployment.h
index cba191b62536b568c5a4853cecb783cde74b6840..e1e0d92c33d551046c7ca51aa8dffd68123c7436 100644 (file)
@@ -3,11 +3,14 @@
 
 #include <vector>
 
 
 #include <vector>
 
+// Deploy an application automatically, according to the global parameters
 void MY_launch_application();
 
 void MY_launch_application();
 
+// Base class for deployment generators...
 class deployment_generator {
 public:
     deployment_generator();
 class deployment_generator {
 public:
     deployment_generator();
+    virtual ~deployment_generator() { }
 
     size_t size() const { return hosts.size(); }
     void set_load(int host, double load);
 
     size_t size() const { return hosts.size(); }
     void set_load(int host, double load);
@@ -15,10 +18,13 @@ public:
     void set_link(int host1, int host2);
 
     virtual void generate() = 0;
     void set_link(int host1, int host2);
 
     virtual void generate() = 0;
+    void distribute_load();
     void deploy();
 
 private:
     struct host_parameters {
     void deploy();
 
 private:
     struct host_parameters {
+        host_parameters(): load(0.0) { }
+
         double load;
         std::vector<int> neighbors;
     };
         double load;
         std::vector<int> neighbors;
     };