X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/58d95ccaa27bb984b83885dc0bd37d945d946944..9d7dca1d2de1e6d67027e4ba33fefe1eb09550e3:/src/mc/Checker.hpp diff --git a/src/mc/Checker.hpp b/src/mc/Checker.hpp index db9c2aeb48..70a9031b86 100644 --- a/src/mc/Checker.hpp +++ b/src/mc/Checker.hpp @@ -13,6 +13,7 @@ #include "src/mc/mc_forward.hpp" #include "src/mc/mc_record.h" +#include "src/mc/Session.hpp" namespace simgrid { namespace mc { @@ -20,7 +21,7 @@ namespace mc { /** A model-checking algorithm * * The goal is to move the data/state/configuration of a model-checking - * algorihms in subclasses. Implementing this interface will probably + * algorithms in subclasses. Implementing this interface will probably * not be really mandatory, you might be able to write your * model-checking algorithm as plain imperative code instead. * @@ -46,11 +47,17 @@ public: * Could this be handled in the Session/ModelChecker instead? */ virtual RecordTrace getRecordTrace(); + virtual std::vector getTextualTrace(); + virtual void logState(); protected: Session& getSession() { return *session_; } }; +XBT_PUBLIC() Checker* createLivenessChecker(Session& session); +XBT_PUBLIC() Checker* createSafetyChecker(Session& session); +XBT_PUBLIC() Checker* createCommunicationDeterminismChecker(Session& session); + } }