1 /*********************************************
2 * File Generated by src/simix/simcalls.py *
3 * from src/simix/simcalls.in *
4 * Do not modify this file, add new simcalls *
5 * in src/simix/simcalls.in *
6 *********************************************/
8 case SIMCALL_HOST_GET_BY_NAME:
9 simcall->result.dp = SIMIX_pre_host_get_by_name(simcall , simcall->args[0].cc);
10 SIMIX_simcall_answer(simcall);
13 case SIMCALL_HOST_GET_NAME:
14 simcall->result.cc = SIMIX_pre_host_get_name(simcall , (smx_host_t) simcall->args[0].dp);
15 SIMIX_simcall_answer(simcall);
19 SIMIX_pre_host_on(simcall , (smx_host_t) simcall->args[0].dp);
20 SIMIX_simcall_answer(simcall);
23 case SIMCALL_HOST_OFF:
24 SIMIX_pre_host_off(simcall , (smx_host_t) simcall->args[0].dp);
25 SIMIX_simcall_answer(simcall);
28 case SIMCALL_HOST_GET_PROPERTIES:
29 simcall->result.dp = SIMIX_pre_host_get_properties(simcall , (smx_host_t) simcall->args[0].dp);
30 SIMIX_simcall_answer(simcall);
33 case SIMCALL_HOST_GET_CORE:
34 simcall->result.i = SIMIX_pre_host_get_core(simcall , (smx_host_t) simcall->args[0].dp);
35 SIMIX_simcall_answer(simcall);
38 case SIMCALL_HOST_GET_PROCESS_LIST:
39 simcall->result.dp = SIMIX_pre_host_get_process_list(simcall , (smx_host_t) simcall->args[0].dp);
40 SIMIX_simcall_answer(simcall);
43 case SIMCALL_HOST_GET_SPEED:
44 simcall->result.d = SIMIX_pre_host_get_speed(simcall , (smx_host_t) simcall->args[0].dp);
45 SIMIX_simcall_answer(simcall);
48 case SIMCALL_HOST_GET_AVAILABLE_SPEED:
49 simcall->result.d = SIMIX_pre_host_get_available_speed(simcall , (smx_host_t) simcall->args[0].dp);
50 SIMIX_simcall_answer(simcall);
53 case SIMCALL_HOST_GET_STATE:
54 simcall->result.i = SIMIX_pre_host_get_state(simcall , (smx_host_t) simcall->args[0].dp);
55 SIMIX_simcall_answer(simcall);
58 case SIMCALL_HOST_GET_CURRENT_POWER_PEAK:
59 simcall->result.d = SIMIX_pre_host_get_current_power_peak(simcall , (smx_host_t) simcall->args[0].dp);
60 SIMIX_simcall_answer(simcall);
63 case SIMCALL_HOST_GET_POWER_PEAK_AT:
64 simcall->result.d = SIMIX_pre_host_get_power_peak_at(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].i);
65 SIMIX_simcall_answer(simcall);
68 case SIMCALL_HOST_GET_NB_PSTATES:
69 simcall->result.i = SIMIX_pre_host_get_nb_pstates(simcall , (smx_host_t) simcall->args[0].dp);
70 SIMIX_simcall_answer(simcall);
73 case SIMCALL_HOST_SET_POWER_PEAK_AT:
74 SIMIX_pre_host_set_power_peak_at(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].i);
75 SIMIX_simcall_answer(simcall);
78 case SIMCALL_HOST_GET_CONSUMED_ENERGY:
79 simcall->result.d = SIMIX_pre_host_get_consumed_energy(simcall , (smx_host_t) simcall->args[0].dp);
80 SIMIX_simcall_answer(simcall);
83 case SIMCALL_HOST_EXECUTE:
84 simcall->result.dp = SIMIX_pre_host_execute(simcall , simcall->args[0].cc, (smx_host_t) simcall->args[1].dp, simcall->args[2].d, simcall->args[3].d, simcall->args[4].d, simcall->args[5].ul);
85 SIMIX_simcall_answer(simcall);
88 case SIMCALL_HOST_PARALLEL_EXECUTE:
89 simcall->result.dp = SIMIX_pre_host_parallel_execute(simcall , simcall->args[0].cc, simcall->args[1].i, (smx_host_t*) simcall->args[2].dp, (double*) simcall->args[3].dp, (double*) simcall->args[4].dp, simcall->args[5].d, simcall->args[6].d);
90 SIMIX_simcall_answer(simcall);
93 case SIMCALL_HOST_EXECUTION_DESTROY:
94 SIMIX_pre_host_execution_destroy(simcall , (smx_action_t) simcall->args[0].dp);
95 SIMIX_simcall_answer(simcall);
98 case SIMCALL_HOST_EXECUTION_CANCEL:
99 SIMIX_pre_host_execution_cancel(simcall , (smx_action_t) simcall->args[0].dp);
100 SIMIX_simcall_answer(simcall);
103 case SIMCALL_HOST_EXECUTION_GET_REMAINS:
104 simcall->result.d = SIMIX_pre_host_execution_get_remains(simcall , (smx_action_t) simcall->args[0].dp);
105 SIMIX_simcall_answer(simcall);
108 case SIMCALL_HOST_EXECUTION_GET_STATE:
109 simcall->result.i = SIMIX_pre_host_execution_get_state(simcall , (smx_action_t) simcall->args[0].dp);
110 SIMIX_simcall_answer(simcall);
113 case SIMCALL_HOST_EXECUTION_SET_PRIORITY:
114 SIMIX_pre_host_execution_set_priority(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
115 SIMIX_simcall_answer(simcall);
118 case SIMCALL_HOST_EXECUTION_SET_BOUND:
119 SIMIX_pre_host_execution_set_bound(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
120 SIMIX_simcall_answer(simcall);
123 case SIMCALL_HOST_EXECUTION_SET_AFFINITY:
124 SIMIX_pre_host_execution_set_affinity(simcall , (smx_action_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp, simcall->args[2].ul);
125 SIMIX_simcall_answer(simcall);
128 case SIMCALL_HOST_EXECUTION_WAIT:
129 SIMIX_pre_host_execution_wait(simcall , (smx_action_t) simcall->args[0].dp);
132 case SIMCALL_HOST_GET_MOUNTED_STORAGE_LIST:
133 simcall->result.dp = SIMIX_pre_host_get_mounted_storage_list(simcall , (smx_host_t) simcall->args[0].dp);
134 SIMIX_simcall_answer(simcall);
137 case SIMCALL_HOST_GET_ATTACHED_STORAGE_LIST:
138 simcall->result.dp = SIMIX_pre_host_get_attached_storage_list(simcall , (smx_host_t) simcall->args[0].dp);
139 SIMIX_simcall_answer(simcall);
142 case SIMCALL_HOST_GET_PARAMS:
143 SIMIX_pre_host_get_params(simcall , (smx_host_t) simcall->args[0].dp, (ws_params_t) simcall->args[1].dp);
144 SIMIX_simcall_answer(simcall);
147 case SIMCALL_HOST_SET_PARAMS:
148 SIMIX_pre_host_set_params(simcall , (smx_host_t) simcall->args[0].dp, (ws_params_t) simcall->args[1].dp);
149 SIMIX_simcall_answer(simcall);
152 case SIMCALL_VM_CREATE:
153 simcall->result.dp = SIMIX_pre_vm_create(simcall , simcall->args[0].cc, (smx_host_t) simcall->args[1].dp);
154 SIMIX_simcall_answer(simcall);
157 case SIMCALL_VM_START:
158 SIMIX_pre_vm_start(simcall , (smx_host_t) simcall->args[0].dp);
159 SIMIX_simcall_answer(simcall);
162 case SIMCALL_VM_GET_STATE:
163 simcall->result.i = SIMIX_pre_vm_get_state(simcall , (smx_host_t) simcall->args[0].dp);
164 SIMIX_simcall_answer(simcall);
167 case SIMCALL_VM_MIGRATE:
168 SIMIX_pre_vm_migrate(simcall , (smx_host_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
169 SIMIX_simcall_answer(simcall);
172 case SIMCALL_VM_GET_PM:
173 simcall->result.dp = SIMIX_pre_vm_get_pm(simcall , (smx_host_t) simcall->args[0].dp);
174 SIMIX_simcall_answer(simcall);
177 case SIMCALL_VM_SET_BOUND:
178 SIMIX_pre_vm_set_bound(simcall , (smx_host_t) simcall->args[0].dp, simcall->args[1].d);
179 SIMIX_simcall_answer(simcall);
182 case SIMCALL_VM_SET_AFFINITY:
183 SIMIX_pre_vm_set_affinity(simcall , (smx_host_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp, simcall->args[2].ul);
184 SIMIX_simcall_answer(simcall);
187 case SIMCALL_VM_DESTROY:
188 SIMIX_pre_vm_destroy(simcall , (smx_host_t) simcall->args[0].dp);
189 SIMIX_simcall_answer(simcall);
192 case SIMCALL_VM_SUSPEND:
193 SIMIX_pre_vm_suspend(simcall , (smx_host_t) simcall->args[0].dp);
194 SIMIX_simcall_answer(simcall);
197 case SIMCALL_VM_RESUME:
198 SIMIX_pre_vm_resume(simcall , (smx_host_t) simcall->args[0].dp);
199 SIMIX_simcall_answer(simcall);
202 case SIMCALL_VM_SHUTDOWN:
203 SIMIX_pre_vm_shutdown(simcall , (smx_host_t) simcall->args[0].dp);
204 SIMIX_simcall_answer(simcall);
207 case SIMCALL_VM_SAVE:
208 SIMIX_pre_vm_save(simcall , (smx_host_t) simcall->args[0].dp);
209 SIMIX_simcall_answer(simcall);
212 case SIMCALL_VM_RESTORE:
213 SIMIX_pre_vm_restore(simcall , (smx_host_t) simcall->args[0].dp);
214 SIMIX_simcall_answer(simcall);
217 case SIMCALL_PROCESS_CREATE:
218 SIMIX_pre_process_create(simcall , (smx_process_t*) simcall->args[0].dp, simcall->args[1].cc, (xbt_main_func_t) simcall->args[2].fp, simcall->args[3].dp, simcall->args[4].cc, simcall->args[5].d, simcall->args[6].i, (char**) simcall->args[7].dp, (xbt_dict_t) simcall->args[8].dp, simcall->args[9].i);
219 SIMIX_simcall_answer(simcall);
222 case SIMCALL_PROCESS_KILL:
223 SIMIX_pre_process_kill(simcall , (smx_process_t) simcall->args[0].dp);
224 SIMIX_simcall_answer(simcall);
227 case SIMCALL_PROCESS_KILLALL:
228 SIMIX_pre_process_killall(simcall , simcall->args[0].i);
229 SIMIX_simcall_answer(simcall);
232 case SIMCALL_PROCESS_CLEANUP:
233 SIMIX_pre_process_cleanup(simcall , (smx_process_t) simcall->args[0].dp);
234 SIMIX_simcall_answer(simcall);
237 case SIMCALL_PROCESS_CHANGE_HOST:
238 SIMIX_pre_process_change_host(simcall , (smx_process_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
239 SIMIX_simcall_answer(simcall);
242 case SIMCALL_PROCESS_SUSPEND:
243 SIMIX_pre_process_suspend(simcall , (smx_process_t) simcall->args[0].dp);
246 case SIMCALL_PROCESS_RESUME:
247 SIMIX_pre_process_resume(simcall , (smx_process_t) simcall->args[0].dp);
248 SIMIX_simcall_answer(simcall);
251 case SIMCALL_PROCESS_COUNT:
252 simcall->result.i = SIMIX_pre_process_count(simcall );
253 SIMIX_simcall_answer(simcall);
256 case SIMCALL_PROCESS_GET_PID:
257 simcall->result.i = SIMIX_pre_process_get_PID(simcall , (smx_process_t) simcall->args[0].dp);
258 SIMIX_simcall_answer(simcall);
261 case SIMCALL_PROCESS_GET_PPID:
262 simcall->result.i = SIMIX_pre_process_get_PPID(simcall , (smx_process_t) simcall->args[0].dp);
263 SIMIX_simcall_answer(simcall);
266 case SIMCALL_PROCESS_GET_DATA:
267 simcall->result.dp = SIMIX_pre_process_get_data(simcall , (smx_process_t) simcall->args[0].dp);
268 SIMIX_simcall_answer(simcall);
271 case SIMCALL_PROCESS_SET_DATA:
272 SIMIX_pre_process_set_data(simcall , (smx_process_t) simcall->args[0].dp, simcall->args[1].dp);
273 SIMIX_simcall_answer(simcall);
276 case SIMCALL_PROCESS_GET_HOST:
277 simcall->result.dp = SIMIX_pre_process_get_host(simcall , (smx_process_t) simcall->args[0].dp);
278 SIMIX_simcall_answer(simcall);
281 case SIMCALL_PROCESS_GET_NAME:
282 simcall->result.cc = SIMIX_pre_process_get_name(simcall , (smx_process_t) simcall->args[0].dp);
283 SIMIX_simcall_answer(simcall);
286 case SIMCALL_PROCESS_IS_SUSPENDED:
287 simcall->result.i = SIMIX_pre_process_is_suspended(simcall , (smx_process_t) simcall->args[0].dp);
288 SIMIX_simcall_answer(simcall);
291 case SIMCALL_PROCESS_GET_PROPERTIES:
292 simcall->result.dp = SIMIX_pre_process_get_properties(simcall , (smx_process_t) simcall->args[0].dp);
293 SIMIX_simcall_answer(simcall);
296 case SIMCALL_PROCESS_SLEEP:
297 SIMIX_pre_process_sleep(simcall , simcall->args[0].d);
300 case SIMCALL_PROCESS_ON_EXIT:
301 SIMIX_pre_process_on_exit(simcall , (smx_process_t) simcall->args[0].dp, (int_f_pvoid_t) simcall->args[1].fp, simcall->args[2].dp);
302 SIMIX_simcall_answer(simcall);
305 case SIMCALL_PROCESS_AUTO_RESTART_SET:
306 SIMIX_pre_process_auto_restart_set(simcall , (smx_process_t) simcall->args[0].dp, simcall->args[1].i);
307 SIMIX_simcall_answer(simcall);
310 case SIMCALL_PROCESS_RESTART:
311 simcall->result.dp = SIMIX_pre_process_restart(simcall , (smx_process_t) simcall->args[0].dp);
312 SIMIX_simcall_answer(simcall);
315 case SIMCALL_RDV_CREATE:
316 simcall->result.dp = SIMIX_pre_rdv_create(simcall , simcall->args[0].cc);
317 SIMIX_simcall_answer(simcall);
320 case SIMCALL_RDV_DESTROY:
321 SIMIX_pre_rdv_destroy(simcall , (smx_rdv_t) simcall->args[0].dp);
322 SIMIX_simcall_answer(simcall);
325 case SIMCALL_RDV_COMM_COUNT_BY_HOST:
326 simcall->result.ui = SIMIX_pre_rdv_comm_count_by_host(simcall , (smx_rdv_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp);
327 SIMIX_simcall_answer(simcall);
330 case SIMCALL_RDV_GET_HEAD:
331 simcall->result.dp = SIMIX_pre_rdv_get_head(simcall , (smx_rdv_t) simcall->args[0].dp);
332 SIMIX_simcall_answer(simcall);
335 case SIMCALL_RDV_SET_RECEIVER:
336 SIMIX_pre_rdv_set_receiver(simcall , (smx_rdv_t) simcall->args[0].dp, (smx_process_t) simcall->args[1].dp);
337 SIMIX_simcall_answer(simcall);
340 case SIMCALL_RDV_GET_RECEIVER:
341 simcall->result.dp = SIMIX_pre_rdv_get_receiver(simcall , (smx_rdv_t) simcall->args[0].dp);
342 SIMIX_simcall_answer(simcall);
345 case SIMCALL_COMM_IPROBE:
346 simcall->result.dp = SIMIX_pre_comm_iprobe(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].i, simcall->args[2].i, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp);
347 SIMIX_simcall_answer(simcall);
350 case SIMCALL_COMM_SEND:
351 SIMIX_pre_comm_send(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].d, simcall->args[2].d, simcall->args[3].dp, simcall->args[4].sz, (simix_match_func_t) simcall->args[5].fp, simcall->args[6].dp, simcall->args[7].d);
354 case SIMCALL_COMM_ISEND:
355 simcall->result.dp = SIMIX_pre_comm_isend(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].d, simcall->args[2].d, simcall->args[3].dp, simcall->args[4].sz, (simix_match_func_t) simcall->args[5].fp, (simix_clean_func_t) simcall->args[6].fp, simcall->args[7].dp, simcall->args[8].i);
356 SIMIX_simcall_answer(simcall);
359 case SIMCALL_COMM_RECV:
360 SIMIX_pre_comm_recv(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp, simcall->args[5].d, simcall->args[6].d);
363 case SIMCALL_COMM_IRECV:
364 simcall->result.dp = SIMIX_pre_comm_irecv(simcall , (smx_rdv_t) simcall->args[0].dp, simcall->args[1].dp, (size_t*) simcall->args[2].dp, (simix_match_func_t) simcall->args[3].fp, simcall->args[4].dp, simcall->args[5].d);
365 SIMIX_simcall_answer(simcall);
368 case SIMCALL_COMM_CANCEL:
369 SIMIX_pre_comm_cancel(simcall , (smx_action_t) simcall->args[0].dp);
370 SIMIX_simcall_answer(simcall);
373 case SIMCALL_COMM_WAITANY:
374 SIMIX_pre_comm_waitany(simcall , (xbt_dynar_t) simcall->args[0].dp);
377 case SIMCALL_COMM_WAIT:
378 SIMIX_pre_comm_wait(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].d);
381 case SIMCALL_COMM_TEST:
382 SIMIX_pre_comm_test(simcall , (smx_action_t) simcall->args[0].dp);
385 case SIMCALL_COMM_TESTANY:
386 SIMIX_pre_comm_testany(simcall , (xbt_dynar_t) simcall->args[0].dp);
389 case SIMCALL_COMM_GET_REMAINS:
390 simcall->result.d = SIMIX_pre_comm_get_remains(simcall , (smx_action_t) simcall->args[0].dp);
391 SIMIX_simcall_answer(simcall);
394 case SIMCALL_COMM_GET_STATE:
395 simcall->result.i = SIMIX_pre_comm_get_state(simcall , (smx_action_t) simcall->args[0].dp);
396 SIMIX_simcall_answer(simcall);
399 case SIMCALL_COMM_GET_SRC_DATA:
400 simcall->result.dp = SIMIX_pre_comm_get_src_data(simcall , (smx_action_t) simcall->args[0].dp);
401 SIMIX_simcall_answer(simcall);
404 case SIMCALL_COMM_GET_DST_DATA:
405 simcall->result.dp = SIMIX_pre_comm_get_dst_data(simcall , (smx_action_t) simcall->args[0].dp);
406 SIMIX_simcall_answer(simcall);
409 case SIMCALL_COMM_GET_SRC_PROC:
410 simcall->result.dp = SIMIX_pre_comm_get_src_proc(simcall , (smx_action_t) simcall->args[0].dp);
411 SIMIX_simcall_answer(simcall);
414 case SIMCALL_COMM_GET_DST_PROC:
415 simcall->result.dp = SIMIX_pre_comm_get_dst_proc(simcall , (smx_action_t) simcall->args[0].dp);
416 SIMIX_simcall_answer(simcall);
419 case SIMCALL_MUTEX_INIT:
420 simcall->result.dp = SIMIX_pre_mutex_init(simcall );
421 SIMIX_simcall_answer(simcall);
424 case SIMCALL_MUTEX_DESTROY:
425 SIMIX_pre_mutex_destroy(simcall , (smx_mutex_t) simcall->args[0].dp);
426 SIMIX_simcall_answer(simcall);
429 case SIMCALL_MUTEX_LOCK:
430 SIMIX_pre_mutex_lock(simcall , (smx_mutex_t) simcall->args[0].dp);
433 case SIMCALL_MUTEX_TRYLOCK:
434 simcall->result.i = SIMIX_pre_mutex_trylock(simcall , (smx_mutex_t) simcall->args[0].dp);
435 SIMIX_simcall_answer(simcall);
438 case SIMCALL_MUTEX_UNLOCK:
439 SIMIX_pre_mutex_unlock(simcall , (smx_mutex_t) simcall->args[0].dp);
440 SIMIX_simcall_answer(simcall);
443 case SIMCALL_COND_INIT:
444 simcall->result.dp = SIMIX_pre_cond_init(simcall );
445 SIMIX_simcall_answer(simcall);
448 case SIMCALL_COND_DESTROY:
449 SIMIX_pre_cond_destroy(simcall , (smx_cond_t) simcall->args[0].dp);
450 SIMIX_simcall_answer(simcall);
453 case SIMCALL_COND_SIGNAL:
454 SIMIX_pre_cond_signal(simcall , (smx_cond_t) simcall->args[0].dp);
455 SIMIX_simcall_answer(simcall);
458 case SIMCALL_COND_WAIT:
459 SIMIX_pre_cond_wait(simcall , (smx_cond_t) simcall->args[0].dp, (smx_mutex_t) simcall->args[1].dp);
462 case SIMCALL_COND_WAIT_TIMEOUT:
463 SIMIX_pre_cond_wait_timeout(simcall , (smx_cond_t) simcall->args[0].dp, (smx_mutex_t) simcall->args[1].dp, simcall->args[2].d);
466 case SIMCALL_COND_BROADCAST:
467 SIMIX_pre_cond_broadcast(simcall , (smx_cond_t) simcall->args[0].dp);
468 SIMIX_simcall_answer(simcall);
471 case SIMCALL_SEM_INIT:
472 simcall->result.dp = SIMIX_pre_sem_init(simcall , simcall->args[0].i);
473 SIMIX_simcall_answer(simcall);
476 case SIMCALL_SEM_DESTROY:
477 SIMIX_pre_sem_destroy(simcall , (smx_sem_t) simcall->args[0].dp);
478 SIMIX_simcall_answer(simcall);
481 case SIMCALL_SEM_RELEASE:
482 SIMIX_pre_sem_release(simcall , (smx_sem_t) simcall->args[0].dp);
483 SIMIX_simcall_answer(simcall);
486 case SIMCALL_SEM_WOULD_BLOCK:
487 simcall->result.i = SIMIX_pre_sem_would_block(simcall , (smx_sem_t) simcall->args[0].dp);
488 SIMIX_simcall_answer(simcall);
491 case SIMCALL_SEM_ACQUIRE:
492 SIMIX_pre_sem_acquire(simcall , (smx_sem_t) simcall->args[0].dp);
495 case SIMCALL_SEM_ACQUIRE_TIMEOUT:
496 SIMIX_pre_sem_acquire_timeout(simcall , (smx_sem_t) simcall->args[0].dp, simcall->args[1].d);
499 case SIMCALL_SEM_GET_CAPACITY:
500 simcall->result.i = SIMIX_pre_sem_get_capacity(simcall , (smx_sem_t) simcall->args[0].dp);
501 SIMIX_simcall_answer(simcall);
504 case SIMCALL_FILE_READ:
505 SIMIX_pre_file_read(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz, (smx_host_t) simcall->args[2].dp);
508 case SIMCALL_FILE_WRITE:
509 SIMIX_pre_file_write(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz, (smx_host_t) simcall->args[2].dp);
512 case SIMCALL_FILE_OPEN:
513 SIMIX_pre_file_open(simcall , simcall->args[0].cc);
516 case SIMCALL_FILE_CLOSE:
517 SIMIX_pre_file_close(simcall , (smx_file_t) simcall->args[0].dp);
520 case SIMCALL_FILE_UNLINK:
521 simcall->result.i = SIMIX_pre_file_unlink(simcall , (smx_file_t) simcall->args[0].dp);
522 SIMIX_simcall_answer(simcall);
525 case SIMCALL_FILE_GET_SIZE:
526 simcall->result.sgsz = SIMIX_pre_file_get_size(simcall , (smx_file_t) simcall->args[0].dp);
527 SIMIX_simcall_answer(simcall);
530 case SIMCALL_FILE_TELL:
531 simcall->result.sgsz = SIMIX_pre_file_tell(simcall , (smx_file_t) simcall->args[0].dp);
532 SIMIX_simcall_answer(simcall);
535 case SIMCALL_FILE_SEEK:
536 simcall->result.i = SIMIX_pre_file_seek(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz, simcall->args[2].i);
537 SIMIX_simcall_answer(simcall);
540 case SIMCALL_FILE_GET_INFO:
541 simcall->result.dp = SIMIX_pre_file_get_info(simcall , (smx_file_t) simcall->args[0].dp);
542 SIMIX_simcall_answer(simcall);
545 case SIMCALL_FILE_MOVE:
546 simcall->result.i = SIMIX_pre_file_move(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].cc);
547 SIMIX_simcall_answer(simcall);
550 case SIMCALL_FILE_RCOPY:
551 simcall->result.i = SIMIX_pre_file_rcopy(simcall , (smx_file_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp, simcall->args[2].cc);
552 SIMIX_simcall_answer(simcall);
555 case SIMCALL_STORAGE_GET_FREE_SIZE:
556 simcall->result.sgsz = SIMIX_pre_storage_get_free_size(simcall , simcall->args[0].cc);
557 SIMIX_simcall_answer(simcall);
560 case SIMCALL_STORAGE_GET_USED_SIZE:
561 simcall->result.sgsz = SIMIX_pre_storage_get_used_size(simcall , simcall->args[0].cc);
562 SIMIX_simcall_answer(simcall);
565 case SIMCALL_STORAGE_GET_PROPERTIES:
566 simcall->result.dp = SIMIX_pre_storage_get_properties(simcall , (smx_storage_t) simcall->args[0].dp);
567 SIMIX_simcall_answer(simcall);
570 case SIMCALL_STORAGE_GET_CONTENT:
571 simcall->result.dp = SIMIX_pre_storage_get_content(simcall , (smx_storage_t) simcall->args[0].dp);
572 SIMIX_simcall_answer(simcall);
575 case SIMCALL_ASR_GET_PROPERTIES:
576 simcall->result.dp = SIMIX_pre_asr_get_properties(simcall , simcall->args[0].cc);
577 SIMIX_simcall_answer(simcall);
580 #ifdef HAVE_LATENCY_BOUND_TRACKING
581 case SIMCALL_COMM_IS_LATENCY_BOUNDED:
582 simcall->result.i = SIMIX_pre_comm_is_latency_bounded(simcall , (smx_action_t) simcall->args[0].dp);
583 SIMIX_simcall_answer(simcall);
589 case SIMCALL_SET_CATEGORY:
590 SIMIX_pre_set_category(simcall , (smx_action_t) simcall->args[0].dp, simcall->args[1].cc);
591 SIMIX_simcall_answer(simcall);
597 case SIMCALL_MC_SNAPSHOT:
598 simcall->result.dp = SIMIX_pre_mc_snapshot(simcall );
599 SIMIX_simcall_answer(simcall);
602 case SIMCALL_MC_COMPARE_SNAPSHOTS:
603 simcall->result.i = SIMIX_pre_mc_compare_snapshots(simcall , simcall->args[0].dp, simcall->args[1].dp);
604 SIMIX_simcall_answer(simcall);
607 case SIMCALL_MC_RANDOM:
608 simcall->result.i = SIMIX_pre_mc_random(simcall , simcall->args[0].i, simcall->args[1].i);
609 SIMIX_simcall_answer(simcall);