X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/16e87acf00914bbe8a17f80a352dda60a02894ad..0cc6b0eafa7e1eef267891d41c5d826eaad71d5f:/src/mc/explo/odpor/WakeupTree.hpp diff --git a/src/mc/explo/odpor/WakeupTree.hpp b/src/mc/explo/odpor/WakeupTree.hpp index 2a12641284..ee654c4ace 100644 --- a/src/mc/explo/odpor/WakeupTree.hpp +++ b/src/mc/explo/odpor/WakeupTree.hpp @@ -190,6 +190,9 @@ public: */ std::optional get_min_single_process_node() const; + /** @brief Describes how a tree insertion was carried out */ + enum class InsertionResult { leaf, interior_node, root }; + /** * @brief Inserts an sequence `seq` of processes into the tree * such that that this tree is a wakeup tree relative to the @@ -214,8 +217,11 @@ public: * * @invariant: It is assumed that this tree is a wakeup tree * with respect to the given execution `E` + * + * @return Whether a sequence equivalent to `seq` is already contained + * as a leaf node in the tree */ - void insert(const Execution& E, const PartialExecution& seq); + InsertionResult insert(const Execution& E, const PartialExecution& seq); }; } // namespace simgrid::mc::odpor