-/* Copyright (c) 2016-2017. The SimGrid Team.
+/* Copyright (c) 2016-2018. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
Checker(Checker const&) = delete;
Checker& operator=(Checker const&) = delete;
- virtual ~Checker();
+ virtual ~Checker() = default;
/** Main function of this algorithm */
virtual void run() = 0;
/** Show the current trace/stack
*
* Could this be handled in the Session/ModelChecker instead? */
- virtual RecordTrace getRecordTrace();
+ virtual RecordTrace getRecordTrace() = 0;
/** Generate a textual execution trace of the simulated application */
- virtual std::vector<std::string> getTextualTrace();
+ virtual std::vector<std::string> getTextualTrace() = 0;
/** Log additional information about the state of the model-checker */
- virtual void logState();
+ virtual void logState() = 0;
protected:
Session& getSession() { return *session_; }
};
-XBT_PUBLIC() Checker* createLivenessChecker(Session& session);
-XBT_PUBLIC() Checker* createSafetyChecker(Session& session);
-XBT_PUBLIC() Checker* createCommunicationDeterminismChecker(Session& session);
-
+XBT_PUBLIC Checker* createLivenessChecker(Session& session);
+XBT_PUBLIC Checker* createSafetyChecker(Session& session);
+XBT_PUBLIC Checker* createCommunicationDeterminismChecker(Session& session);
}
}