Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update copyright lines with new year.
[simgrid.git] / examples / s4u / dht-chord / s4u-dht-chord.hpp
index 353a10c..8165e28 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2016-2019. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2016-2020. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -6,8 +6,8 @@
 #ifndef S4U_CHORD_HPP
 #define S4U_CHORD_HPP
 #include "simgrid/s4u.hpp"
-#include <random>
 #include <string>
+#include <xbt/random.hpp>
 #include <xbt/str.h>
 
 constexpr double MAX_SIMULATION_TIME              = 1000;
@@ -21,20 +21,6 @@ extern int nb_bits;
 extern int nb_keys;
 extern int timeout;
 
-extern std::default_random_engine generator;
-
-class HostChord {
-  simgrid::s4u::Host* host = nullptr;
-
-public:
-  static simgrid::xbt::Extension<simgrid::s4u::Host, HostChord> EXTENSION_ID;
-
-  explicit HostChord(simgrid::s4u::Host* ptr) : host(ptr) {}
-  HostChord(const HostChord&) = delete;
-  HostChord& operator=(const HostChord&) = delete;
-
-};
-
 /* Types of tasks exchanged between nodes. */
 enum e_message_type_t {
   FIND_SUCCESSOR,
@@ -51,16 +37,13 @@ enum e_message_type_t {
 class ChordMessage {
 public:
   e_message_type_t type;              // type of message
-  std::string issuer_host_name;       // used for logging
+  std::string issuer_host_name     = simgrid::s4u::this_actor::get_host()->get_name(); // used for logging
   int request_id     = -1;            // id (used by some types of messages)
   int request_finger = 1;             // finger parameter (used by some types of messages)
   int answer_id      = -1;            // answer (used by some types of messages)
   simgrid::s4u::Mailbox* answer_to = nullptr;       // mailbox to send an answer to (if any)
 
-  explicit ChordMessage(e_message_type_t type)
-      : type(type), issuer_host_name(simgrid::s4u::this_actor::get_host()->get_name())
-  {
-  }
+  explicit ChordMessage(e_message_type_t type) : type(type) {}
 
   static void destroy(void* message);
 };