X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/3472d37b8ae12bc794f7094dc72671677b1b68f9..40ee10e13b61bfb28374d96ade010a262b5abd44:/include/simgrid/modelchecker.h diff --git a/include/simgrid/modelchecker.h b/include/simgrid/modelchecker.h index 30d97c3efe..09566a3b82 100644 --- a/include/simgrid/modelchecker.h +++ b/include/simgrid/modelchecker.h @@ -1,36 +1,28 @@ /* simgrid/modelchecker.h - Formal Verification made possible in SimGrid */ -/* Copyright (c) 2008-2012. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2008-2023. 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 /* HAVE_MC ? */ -#include -#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); +#include /* size_t */ +#include -#else +SG_BEGIN_DECL -#define MC_IS_ENABLED 0 -#define MC_assert(a) xbt_assert(a) -#define MC_assert_stateful(a) xbt_assert(a) +/** Explore every branches where that function returns a value between min and max (inclusive) */ +XBT_PUBLIC int MC_random(int min, int max); -#endif +/** Assertion for the model-checker: Defines a safety property to verify */ +XBT_PUBLIC void MC_assert(int); +/** Check whether the model-checker is currently active, ie if this process was started with simgrid-mc. + * It is off in simulation or when replaying MC traces (see MC_record_replay_is_active()) */ +XBT_PUBLIC int MC_is_active(); +SG_END_DECL #endif /* SIMGRID_MODELCHECKER_H */