]> rtime.felk.cvut.cz Git - frescor/frsh.git/commitdiff
FRM: Utilization for GUI moved to scenarie, where admission test can access it
authorMichal Sojka <sojkam1@fel.cvut.cz>
Wed, 11 Feb 2009 08:15:47 +0000 (09:15 +0100)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Wed, 11 Feb 2009 08:15:47 +0000 (09:15 +0100)
fres/resmng/fres_sa_scenario.c
fres/resmng/fres_sa_scenario.h
fres/resmng/frm_generic.c
fres/resmng/frm_generic.h

index 7adb297351c8ac98f0a11725038b48ead4815ef4..3096e3b6395e9b7bf70fae9709b9d096aab9ef67 100644 (file)
@@ -100,6 +100,7 @@ fres_sa_scenario_new(void)
        if (!s) return NULL;
 
        memset(s, 0, sizeof(*s));
+       s->utilization = -1;
 
        return s;
 }
@@ -133,6 +134,7 @@ fres_sa_scenario_duplicate(const struct fres_sa_scenario *src)
        if (!dst) goto err;
 
        dst->num_contracts = src->num_contracts;
+       dst->utilization = src->utilization;
        gavl_cust_for_each(fres_sa_scenario_contract,
                           src, c1) {
                c2 = fres_sa_contract_duplicate(c1);
index db74a7d9496a881fbe81da5a8b14d1bf3a737dd9..ad1966b67aa121e9827ee6ce17671afd9b47987c 100644 (file)
@@ -65,6 +65,7 @@ struct fres_sa_contract {
 struct fres_sa_scenario {
        gavl_cust_root_field_t contracts; /**< GAVL tree of contracts. */
        unsigned num_contracts; /**< The number if contracts in scenario */
+       int utilization;        /**< Utilization (0-100) used by GUI */
        void *priv;
 };
 
index 147cd523d0e8b44e91200e591165d64e6480799f..b05858c1f522dfadd8cdd767667af347392a7229 100644 (file)
@@ -192,7 +192,7 @@ static void get_contracts(fres_resource_manager obj,
                                        
        }
        *contracts_out = contracts;
-       *utilization = frm->utilization;
+       *utilization = frm->scenario->utilization;
 err:;
 }
 
@@ -229,7 +229,6 @@ fres_resource_manager frm_register(forb_orb orb, struct frm_data *frm_data,
        memset(frm_data, 0, sizeof(*frm_data));
        frm_data->desc = desc;
        frm_data->scenario = fres_sa_scenario_new();
-       frm_data->utilization = -1;
        if (!frm_data->scenario) {
                save_errno(ul_logerr("fres_sa_scenario_new failed\n"));
                goto err;
index 43ea137edd88aa3ce1829db52e7a8aae5b421f91..9ba994577427128ef425dfadf5ab08ad6d64c4ef 100644 (file)
@@ -53,7 +53,6 @@ struct fres_res_manager {
 struct frm_data {
        struct fres_sa_scenario *scenario;
        const struct fres_res_manager *desc;
-       int utilization;        /**< Utilization (0-100) used by GUI */
 };
 
 fres_resource_manager frm_register(forb_orb orb, struct frm_data *frm_data,