X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b487d5a9259b88670b8cd97e9c16e4b000c11008..e6ca184e99d50d0ee8fe405a83ee5277e2ecfce6:/src/mc/mc_safety.h diff --git a/src/mc/mc_safety.h b/src/mc/mc_safety.h index b8aa3b4a05..46c5ec95dc 100644 --- a/src/mc/mc_safety.h +++ b/src/mc/mc_safety.h @@ -1,17 +1,21 @@ -/* Copyright (c) 2007-2014. The SimGrid Team. +/* 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. */ -#ifndef MC_SAFETY_H -#define MC_SAFETY_H +#ifndef SIMGRID_MC_SAFETY_H +#define SIMGRID_MC_SAFETY_H #include #include -#include -#include "mc_interface.h" + +#include +#include + +#include "src/mc/mc_forward.hpp" +#include "src/mc/mc_state.h" SG_BEGIN_DECL() @@ -21,13 +25,11 @@ typedef enum { e_mc_reduce_dpor } e_mc_reduce_t; -extern e_mc_reduce_t mc_reduce_kind; -extern xbt_dict_t first_enabled_state; +extern XBT_PRIVATE e_mc_reduce_t mc_reduce_kind; -void MC_pre_modelcheck_safety(void); -void MC_modelcheck_safety(void); +int MC_modelcheck_safety(void); -typedef struct s_mc_visited_state{ +typedef struct XBT_PRIVATE s_mc_visited_state{ mc_snapshot_t system_state; size_t heap_bytes_used; int nb_processes; @@ -35,10 +37,10 @@ typedef struct s_mc_visited_state{ int other_num; // dot_output for }s_mc_visited_state_t, *mc_visited_state_t; -extern xbt_dynar_t visited_states; -mc_visited_state_t is_visited_state(void); -void visited_state_free(mc_visited_state_t state); -void visited_state_free_voidp(void *s); +extern XBT_PRIVATE xbt_dynar_t visited_states; +XBT_PRIVATE mc_visited_state_t is_visited_state(mc_state_t graph_state); +XBT_PRIVATE void visited_state_free(mc_visited_state_t state); +XBT_PRIVATE void visited_state_free_voidp(void *s); SG_END_DECL()