X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=promise.cc;h=df86090a2335ff3e17c69d33a98c9d370903f199;hb=144f1b806679fd9030147f554513d7fce36f65dc;hp=29e261f04086dca1891d12934bb75596af03000a;hpb=19a4794da8f07346ee407bdee032eeaf59fe0e9a;p=model-checker.git diff --git a/promise.cc b/promise.cc index 29e261f..df86090 100644 --- a/promise.cc +++ b/promise.cc @@ -2,17 +2,19 @@ #include #include "promise.h" -#include "model.h" +#include "execution.h" #include "schedule.h" #include "action.h" #include "threads-model.h" /** * @brief Promise constructor + * @param execution The execution which is creating this Promise * @param read The read which reads from a promised future value * @param fv The future value that is promised */ -Promise::Promise(ModelAction *read, struct future_value fv) : +Promise::Promise(const ModelExecution *execution, ModelAction *read, struct future_value fv) : + execution(execution), num_available_threads(0), fv(fv), readers(1, read), @@ -170,5 +172,5 @@ bool Promise::same_location(const ModelAction *act) const /** @brief Get this Promise's index within the execution's promise array */ int Promise::get_index() const { - return model->get_promise_number(this); + return execution->get_promise_number(this); }