X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c00d9de77c55596919956e198769dee003776c71..639e88c95c355661b56405f608d54c27d24ac7c5:/src/mc/Transition.hpp diff --git a/src/mc/Transition.hpp b/src/mc/Transition.hpp new file mode 100644 index 0000000000..c0a6d0af6e --- /dev/null +++ b/src/mc/Transition.hpp @@ -0,0 +1,38 @@ +/* Copyright (c) 2015-2016. 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 SIMGRID_MC_TRANSITION_HPP +#define SIMGRID_MC_TRANSITION_HPP + +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 Transition { + int pid = 0; + + /* Which transition was executed for this simcall + * + * Some simcalls can lead to different transitions: + * + * * waitany/testany can trigger on different messages; + * + * * random can produce different values. + */ + int argument = 0; +}; + +} +} + +#endif