Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use `std::shared_ptr<Transition>` for Execution
[simgrid.git] / src / mc / explo / odpor / odpor_forward.hpp
index 65810615b94b145bb7fc0aa6b426f4bd3f365653..11161c640a72694a1944d72613d2836e15f2205f 100644 (file)
 #define SIMGRID_MC_ODPOR_FORWARD_HPP
 
 #include "src/mc/mc_forward.hpp"
+#include <list>
+#include <memory>
 #include <simgrid/forward.h>
 
 namespace simgrid::mc::odpor {
 
+using PartialExecution  = std::list<std::shared_ptr<Transition>>;
+using ExecutionSequence = std::list<const Transition*>;
+
 class Event;
 class Execution;
-class ExecutionSequence;
-class ExecutionView;
 class WakeupTree;
+class WakeupTreeNode;
+class WakeupTreeIterator;
 
 } // namespace simgrid::mc::odpor
 
+namespace simgrid::mc {
+
+// Permit ODPOR or SDPOR to be used as namespaces
+// Many of the structures overlap, so it doesn't
+// make sense to some in one and not the other.
+// Having one for each algorithm makes the corresponding
+// code easier to read
+namespace sdpor = simgrid::mc::odpor;
+
+} // namespace simgrid::mc
+
 #endif