X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/48404c66fc4d8248308db1d1398cb79a6763077e..081c68fbba3ebbb3bdd5471d46201d9f7731ae94:/src/simdag/sd_task.c diff --git a/src/simdag/sd_task.c b/src/simdag/sd_task.c index 472e3327d3..2957509b3a 100644 --- a/src/simdag/sd_task.c +++ b/src/simdag/sd_task.c @@ -494,16 +494,16 @@ void SD_task_dump(SD_task_t task) XBT_INFO("Displaying task %s", SD_task_get_name(task)); statename = bprintf("%s %s %s %s %s %s %s %s", - (task->state & SD_NOT_SCHEDULED ? "not scheduled" : + (task->state == SD_NOT_SCHEDULED ? "not scheduled" : ""), - (task->state & SD_SCHEDULABLE ? "schedulable" : ""), - (task->state & SD_SCHEDULED ? "scheduled" : ""), - (task->state & SD_RUNNABLE ? "runnable" : + (task->state == SD_SCHEDULABLE ? "schedulable" : ""), + (task->state == SD_SCHEDULED ? "scheduled" : ""), + (task->state == SD_RUNNABLE ? "runnable" : "not runnable"), - (task->state & SD_IN_FIFO ? "in fifo" : ""), - (task->state & SD_RUNNING ? "running" : ""), - (task->state & SD_DONE ? "done" : ""), - (task->state & SD_FAILED ? "failed" : "")); + (task->state == SD_IN_FIFO ? "in fifo" : ""), + (task->state == SD_RUNNING ? "running" : ""), + (task->state == SD_DONE ? "done" : ""), + (task->state == SD_FAILED ? "failed" : "")); XBT_INFO(" - state: %s", statename); free(statename); @@ -654,6 +654,23 @@ void SD_task_dependency_add(const char *name, void *data, SD_task_t src, __SD_task_set_state(dst, SD_SCHEDULED); } } +/** + * \brief Returns the name given as input when dependency has been created.. + * + * \param src a task + * \param dst a task depending on \a src + * + */ +const char *SD_task_dependency_get_name(SD_task_t src, SD_task_t dst){ + unsigned int i; + SD_dependency_t dependency; + + xbt_dynar_foreach(src->tasks_after, i, dependency){ + if (dependency->dst == dst) + return dependency->name; + } + return NULL; +} /** * \brief Indicates whether there is a dependency between two tasks.