Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
safety: give some basic logging at verbose level already
[simgrid.git] / src / mc / checker / CommunicationDeterminismChecker.hpp
index f14abb1..c10d60f 100644 (file)
@@ -1,18 +1,14 @@
-/* Copyright (c) 2016. The SimGrid Team.
- * All rights reserved.                                                     */
+/* Copyright (c) 2016-2019. 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 <list>
-#include <memory>
-#include <string>
-#include <vector>
-
 #include "src/mc/VisitedState.hpp"
 #include "src/mc/checker/Checker.hpp"
-#include "src/mc/mc_comm_pattern.h"
-#include "src/mc/mc_forward.hpp"
+#include "src/mc/mc_comm_pattern.hpp"
+
+#include <string>
+#include <vector>
 
 #ifndef SIMGRID_MC_COMMUNICATION_DETERMINISM_CHECKER_HPP
 #define SIMGRID_MC_COMMUNICATION_DETERMINISM_CHECKER_HPP
@@ -22,28 +18,29 @@ namespace mc {
 
 class XBT_PRIVATE CommunicationDeterminismChecker : public Checker {
 public:
-  CommunicationDeterminismChecker(Session& session);
+  explicit CommunicationDeterminismChecker(Session& session);
   ~CommunicationDeterminismChecker();
   void run() override;
-  RecordTrace getRecordTrace() override;
-  std::vector<std::string> getTextualTrace() override;
+  RecordTrace get_record_trace() override;
+  std::vector<std::string> get_textual_trace() override;
+
 private:
   void prepare();
-  void main();
-  void logState() override;
+  void real_run();
+  void log_state() override;
   void deterministic_comm_pattern(int process, simgrid::mc::PatternCommunication* comm, int backtracking);
   void restoreState();
 public:
   // These are used by functions which should be moved in CommunicationDeterminismChecker:
-  void get_comm_pattern(xbt_dynar_t list, smx_simcall_t request, e_mc_call_type_t call_type, int backtracking);
-  void complete_comm_pattern(xbt_dynar_t list, simgrid::mc::RemotePtr<simgrid::kernel::activity::CommImpl> comm_addr,
-                             unsigned int issuer, int backtracking);
+  void get_comm_pattern(smx_simcall_t request, e_mc_call_type_t call_type, int backtracking);
+  void complete_comm_pattern(simgrid::mc::RemotePtr<simgrid::kernel::activity::CommImpl> comm_addr, unsigned int issuer,
+                             int backtracking);
 
 private:
   /** Stack representing the position in the exploration graph */
   std::list<std::unique_ptr<simgrid::mc::State>> stack_;
-  simgrid::mc::VisitedStates visitedStates_;
-  unsigned long expandedStatesCount_ = 0;
+  simgrid::mc::VisitedStates visited_states_;
+  unsigned long expanded_states_count_ = 0;
 
   bool initial_communications_pattern_done = false;
   bool recv_deterministic                  = true;