Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add topological sort of configuration events
[simgrid.git] / src / mc / explo / udpor / Configuration.hpp
index 18089fa..eb365d5 100644 (file)
@@ -10,6 +10,7 @@
 #include "src/mc/explo/udpor/udpor_forward.hpp"
 
 #include <initializer_list>
+#include <vector>
 
 namespace simgrid::mc::udpor {
 
@@ -38,6 +39,10 @@ public:
    * valid, i.e. that the newly added event's dependencies are contained
    * within the configuration.
    *
+   * @param e the event to add to the configuration. If the event is
+   * already a part of the configuration, calling this method has no
+   * effect.
+   *
    * @throws an invalid argument exception is raised should the event
    * be missing one of its dependencies
    *
@@ -53,7 +58,12 @@ public:
    * we shouldn't focus so much on this (let alone the additional benefit of the
    * assertions)
    */
-  void add_event(UnfoldingEvent*);
+  void add_event(UnfoldingEvent* e);
+
+  /**
+   *
+   */
+  std::vector<UnfoldingEvent*> get_topogolically_sorted_events_of_reverse_graph() const;
 
 private:
   /**