#include <simgrid_config.h> /* HAVE_MC ? */
#include <xbt.h>
+#include "xbt/automaton.h"
#ifndef SIMGRID_MODELCHECKER_H
#define SIMGRID_MODELCHECKER_H
#ifdef HAVE_MC
+
extern int _surf_do_model_check;
#define MC_IS_ENABLED _surf_do_model_check
+
+XBT_PUBLIC(void) MC_assert(int);
+XBT_PUBLIC(void) MC_assert_stateful(int);
+XBT_PUBLIC(int) MC_random(int min, int max);
+XBT_PUBLIC(void) MC_diff(void);
+XBT_PUBLIC(xbt_automaton_t) MC_create_automaton(const char *file);
+
#else
+
#define MC_IS_ENABLED 0
+#define MC_assert(a) xbt_assert(a)
+#define MC_assert_stateful(a) xbt_assert(a)
+
#endif
-XBT_PUBLIC(void) MC_assert(int);
-XBT_PUBLIC(void) MC_assert_stateful(int);
-XBT_PUBLIC(int) MC_random(int min, int max);
-XBT_PUBLIC(void) MC_diff();
#endif /* SIMGRID_MODELCHECKER_H */