Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Compare file prefix only.
[simgrid.git] / src / mc / mc_record.h
index db7636f..56a3410 100644 (file)
@@ -1,10 +1,10 @@
-/* Copyright (c) 2014-2015. The SimGrid Team.
- * All rights reserved.                                                     */
+/* Copyright (c) 2014-2017. 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. */
 
-/** \file
+/** \file mc_record.h
+ *
  *  This file contains the MC replay/record functionnality.
  *  A MC path may be recorded by using ``-cfg=model-check/record:1`'`.
  *  The path is written in the log output and an be replayed with MC disabled
 #ifndef SIMGRID_MC_RECORD_H
 #define SIMGRID_MC_RECORD_H
 
-#include <string>
-#include <vector>
+#include "src/mc/Transition.hpp"
+#include "xbt/base.h"
 
-#include <xbt/base.h>
+#include <vector>
 
 namespace simgrid {
 namespace mc {
 
-/** An element in the recorded path
- *
- *  At each decision point, we need to record which process transition
- *  is trigerred and potentially which value is associated with this
- *  transition. The value is used to find which communication is triggerred
- *  in things like waitany and for associating a given value of MC_random()
- *  calls.
- */
-struct RecordTraceElement {
-  int pid = 0;
-  int value = 0;
-  RecordTraceElement() {}
-  RecordTraceElement(int pid, int value) : pid(pid), value(value) {}
-};
-
-typedef std::vector<RecordTraceElement> RecordTrace;
+typedef std::vector<Transition> RecordTrace;
 
-/** Convert a string representation of the path into a array of `simgrid::mc::RecordTraceElement`
+/** Convert a string representation of the path into a array of `simgrid::mc::Transition`
  */
 XBT_PRIVATE RecordTrace parseRecordTrace(const char* data);
 XBT_PRIVATE std::string traceToString(simgrid::mc::RecordTrace const& trace);