#ifndef SIMGRID_S4U_ACTOR_HPP
#define SIMGRID_S4U_ACTOR_HPP
-#include <atomic>
-#include <chrono>
-#include <functional>
-#include <memory>
-#include <stdexcept>
-#include <string>
-#include <type_traits>
-#include <utility>
-#include <vector>
-
+#include <simgrid/chrono.hpp>
#include <xbt/Extendable.hpp>
#include <xbt/functional.hpp>
-#include <xbt/string.hpp>
#include <xbt/signal.hpp>
-
-#include <simgrid/chrono.hpp>
-#include <simgrid/s4u/forward.hpp>
+#include <xbt/string.hpp>
namespace simgrid {
namespace s4u {
/** Signal to others that a new actor has been created **/
static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_creation;
+ /** Signal to others that an actor has been suspended**/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_suspend;
+ /** Signal to others that an actor has been resumed **/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_resume;
+ /** Signal to others that an actor is sleeping **/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_sleep;
+ /** Signal to others that an actor wakes up for a sleep **/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_wake_up;
+ /** Signal to others that an actor is going to migrated to another host**/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_migration_start;
+ /** Signal to others that an actor is has been migrated to another host **/
+ static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_migration_end;
/** Signal indicating that the given actor is about to disappear */
static simgrid::xbt::signal<void(simgrid::s4u::ActorPtr)> on_destruction;