7 int b[N] = { 10, 20, 30 };
9 int main(int argc, char *argv[])
12 frsh_contract_t contract[N];
13 frsh_vres_id_t vres[N];
14 frsh_rel_time_t budget, period, deadline;
15 frsh_signal_info_t si;
19 if (ret) PERROR_AND_EXIT(ret, "frsh_init");
21 /* Negotiate N contracts */
23 ret = frsh_contract_init(&contract[i]);
24 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_init");
26 ret = frsh_contract_set_resource_and_label(
28 DUMMY_RESOURCE_TYPE, DUMMY_RESOURCE_ID,
30 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_set_resource_and_label");
32 budget = fosa_msec_to_rel_time(b[i]);
33 period = fosa_msec_to_rel_time(100);
34 deadline = fosa_msec_to_rel_time(50);
35 ret = frsh_contract_set_basic_params(&contract[i],
40 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_set_basic_params");
42 ret = frsh_contract_set_timing_reqs(&contract[i],
45 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_set_timing_reqs");
47 ret = frsh_contract_negotiate(&contract[i], &vres[i]);
48 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_negotiate");
51 budget = fosa_msec_to_rel_time(2*b[i]);
52 period = fosa_msec_to_rel_time(110);
53 ret = frsh_contract_set_basic_params(&contract[i],
58 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_set_basic_params reneg");
60 ret = frsh_contract_renegotiate_sync(&contract[i], vres[i]);
64 /* Cancel N contracts */
66 ret = frsh_contract_cancel(vres[i]);
67 if (ret) PERROR_AND_EXIT(ret, "frsh_contract_cancel");