X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/dda7529f8f14f9674a4defb7471322b56e0d0cb0..881abd8885ef97b5157eb965c87cd71d0294aea8:/src/surf/maxmin.c diff --git a/src/surf/maxmin.c b/src/surf/maxmin.c index 3177a75fe1..0c524b8c21 100644 --- a/src/surf/maxmin.c +++ b/src/surf/maxmin.c @@ -11,6 +11,7 @@ #include "xbt/mallocator.h" #include "maxmin_private.h" #include +#include /* sprintf */ #include XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_maxmin, surf, "Logging specific to SURF (maxmin)"); @@ -202,6 +203,11 @@ double lmm_variable_getvalue(lmm_variable_t var) return (var->value); } +double lmm_variable_getbound(lmm_variable_t var) +{ + return (var->bound); +} + void lmm_expand(lmm_system_t sys, lmm_constraint_t cnst, lmm_variable_t var, double value) { @@ -273,13 +279,16 @@ int lmm_get_number_of_cnst_from_var(lmm_system_t sys, lmm_variable_t var) lmm_variable_t lmm_get_var_from_cnst(lmm_system_t sys, lmm_constraint_t cnst, - lmm_variable_t * var) + lmm_element_t * elem) { - if (!(*var)) - xbt_swag_getFirst(&(cnst->element_set)); + if (!(*elem)) + *elem = xbt_swag_getFirst(&(cnst->element_set)); else - *var = xbt_swag_getNext(*var, cnst->element_set.offset); - return *var; + *elem = xbt_swag_getNext(*elem, cnst->element_set.offset); + if(*elem) + return (*elem)->variable; + else + return NULL; } void *lmm_constraint_id(lmm_constraint_t cnst)