if (!s) return NULL;
memset(s, 0, sizeof(*s));
+ s->utilization = -1;
return s;
}
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);
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;
};
}
*contracts_out = contracts;
- *utilization = frm->utilization;
+ *utilization = frm->scenario->utilization;
err:;
}
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;
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,