Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[mc] Make s_mc_global_t::stacks a std::vector
[simgrid.git] / src / mc / mc_hash.hpp
diff --git a/src/mc/mc_hash.hpp b/src/mc/mc_hash.hpp
new file mode 100644 (file)
index 0000000..5362e18
--- /dev/null
@@ -0,0 +1,34 @@
+/* Copyright (c) 2007-2015. 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. */
+
+#include <stdio.h>
+#include <stdint.h>
+
+#include <vector>
+
+#include "xbt/misc.h"
+#include "mc_snapshot.h"
+
+#ifndef SIMGRID_MC_HASH_HPP
+#define SIMGRID_MC_HASH_HPP
+
+/** \brief Hash the current state
+ *  \param num_state number of states
+ *  \param stacks stacks (mc_snapshot_stak_t) used fot the stack unwinding informations
+ *  \result resulting hash
+ * */
+XBT_INTERNAL uint64_t mc_hash_processes_state(
+  int num_state, std::vector<s_mc_snapshot_stack_t> const& stacks);
+
+/** @brief Dump the stacks of the application processes
+ *
+ *   This functions is currently not used but it is quite convenient
+ *   to call from the debugger.
+ *
+ *   Does not work when an application thread is running.
+ */
+
+#endif