Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Don't compute the dependencies locally in the checker, but through the observers...
[simgrid.git] / src / mc / mc_state.hpp
index ec53b61..6892324 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2007-2020. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2007-2022. 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. */
@@ -27,6 +27,9 @@ public:
   /** The simcall which was executed, going out of that state */
   s_smx_simcall executed_req_;
 
+  /** Observer of the transition leading to that sate */
+  RemotePtr<kernel::actor::SimcallObserver> remote_observer_;
+
   /* Internal translation of the executed_req simcall
    *
    * Simcall::COMM_TESTANY is translated to a Simcall::COMM_TEST
@@ -46,11 +49,8 @@ public:
 
   explicit State(unsigned long state_number);
 
-  std::size_t interleave_size() const;
-  void add_interleaving_set(const simgrid::kernel::actor::ActorImpl* actor)
-  {
-    this->actor_states_[actor->get_pid()].consider();
-  }
+  std::size_t count_todo() const;
+  void mark_todo(const simgrid::kernel::actor::ActorImpl* actor) { this->actor_states_[actor->get_pid()].mark_todo(); }
   Transition get_transition() const;
 
 private: