X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/29d1a6f84e39a8d2dcc58a22b7655913242d03a6..71855c3d4eb59aa687b05fa351bb09df42495a43:/src/simdag/private.h diff --git a/src/simdag/private.h b/src/simdag/private.h index 734f10fb01..bd3c2ce45e 100644 --- a/src/simdag/private.h +++ b/src/simdag/private.h @@ -63,6 +63,7 @@ typedef struct SD_workstation { typedef struct SD_task { s_xbt_swag_hookup_t state_hookup; xbt_swag_t state_set; + e_SD_task_state_t state; void *data; /* user data */ char *name; double amount; @@ -112,43 +113,42 @@ void __SD_task_really_run(SD_task_t task); int __SD_task_try_to_run(SD_task_t task); void __SD_task_just_done(SD_task_t task); -/* Functions to test if the task is in a given state. - These functions are faster than using SD_task_get_state() */ +/* Functions to test if the task is in a given state. */ /* Returns whether the given task is scheduled or ready. */ -static _XBT_INLINE int __SD_task_is_scheduled_or_ready(SD_task_t task) { +static XBT_INLINE int __SD_task_is_scheduled_or_ready(SD_task_t task) { return task->state_set == sd_global->scheduled_task_set || task->state_set == sd_global->ready_task_set; } /* Returns whether the state of the given task is SD_NOT_SCHEDULED. */ -static _XBT_INLINE int __SD_task_is_not_scheduled(SD_task_t task) { +static XBT_INLINE int __SD_task_is_not_scheduled(SD_task_t task) { return task->state_set == sd_global->not_scheduled_task_set; } /* Returns whether the state of the given task is SD_SCHEDULED. */ -static _XBT_INLINE int __SD_task_is_scheduled(SD_task_t task) { +static XBT_INLINE int __SD_task_is_scheduled(SD_task_t task) { return task->state_set == sd_global->scheduled_task_set; } /* Returns whether the state of the given task is SD_READY. */ -static _XBT_INLINE int __SD_task_is_ready(SD_task_t task) { +static XBT_INLINE int __SD_task_is_ready(SD_task_t task) { return task->state_set == sd_global->ready_task_set; } /* Returns whether the state of the given task is SD_IN_FIFO. */ -static _XBT_INLINE int __SD_task_is_in_fifo(SD_task_t task) { +static XBT_INLINE int __SD_task_is_in_fifo(SD_task_t task) { return task->state_set == sd_global->in_fifo_task_set; } /* Returns whether the state of the given task is SD_READY or SD_IN_FIFO. */ -static _XBT_INLINE int __SD_task_is_ready_or_in_fifo(SD_task_t task) { +static XBT_INLINE int __SD_task_is_ready_or_in_fifo(SD_task_t task) { return task->state_set == sd_global->ready_task_set || task->state_set == sd_global->in_fifo_task_set; } /* Returns whether the state of the given task is SD_RUNNING. */ -static _XBT_INLINE int __SD_task_is_running(SD_task_t task) { +static XBT_INLINE int __SD_task_is_running(SD_task_t task) { return task->state_set == sd_global->running_task_set; }