-SG_BEGIN_DECL()
-/* Constructor and Destructor */
-XBT_PUBLIC(smx_actor_t)
-simcall_process_create(const char* name, xbt_main_func_t code, void* data, sg_host_t host, int argc, char** argv,
- xbt_dict_t properties);
-
-XBT_PUBLIC(void) simcall_process_kill(smx_actor_t process);
-XBT_PUBLIC(void) simcall_process_killall(int reset_pid);
-XBT_PUBLIC(void) SIMIX_process_throw(smx_actor_t process, xbt_errcat_t cat, int value, const char *msg);
-
-
-/* Process handling */
-XBT_PUBLIC(void) simcall_process_cleanup(smx_actor_t process);
-XBT_PUBLIC(void) simcall_process_suspend(smx_actor_t process);
-
-/* Getters and Setters */
-XBT_PUBLIC(int) simcall_process_count();
-XBT_PUBLIC(void) simcall_process_set_data(smx_actor_t process, void *data);
-XBT_PUBLIC(xbt_dict_t) simcall_process_get_properties(smx_actor_t host);
-XBT_PUBLIC(void) simcall_process_set_kill_time(smx_actor_t process, double kill_time);
-XBT_PUBLIC(void) simcall_process_on_exit(smx_actor_t process, int_f_pvoid_pvoid_t fun, void *data);
-XBT_PUBLIC(void) simcall_process_auto_restart_set(smx_actor_t process, int auto_restart);
-XBT_PUBLIC(smx_actor_t) simcall_process_restart(smx_actor_t process);
-XBT_PUBLIC(void) simcall_process_join(smx_actor_t process, double timeout);
-/* Sleep control */
-XBT_PUBLIC(e_smx_state_t) simcall_process_sleep(double duration);
-SG_END_DECL()
-
-/************************** Comunication simcalls *****************************/
-
-XBT_PUBLIC(void)
-simcall_comm_send(smx_actor_t sender, smx_mailbox_t mbox, double task_size, double rate, void* src_buff,
- size_t src_buff_size, int (*match_fun)(void*, void*, simgrid::kernel::activity::CommImpl*),
- void (*copy_data_fun)(smx_activity_t, void*, size_t), void* data, double timeout);
-
-XBT_PUBLIC(smx_activity_t)
+SG_BEGIN_DECL
+XBT_ATTRIB_DEPRECATED_v329("This function will be removed in 3.29") void simcall_process_set_data(smx_actor_t process,
+ void* data);
+XBT_ATTRIB_DEPRECATED_v328("Please use sg_actor_suspend()") XBT_PUBLIC
+ void simcall_process_suspend(smx_actor_t process);
+
+XBT_ATTRIB_DEPRECATED_v328("Please use sg_actor_join()") XBT_PUBLIC
+ void simcall_process_join(smx_actor_t process, double timeout);
+
+XBT_ATTRIB_DEPRECATED_v329("Please use sg_actor_sleep_for()") XBT_PUBLIC
+#ifdef __cplusplus
+ simgrid::kernel::activity::State
+#else
+ enum kernel_activity_state
+#endif
+ simcall_process_sleep(double duration);
+SG_END_DECL
+
+/************************** Communication simcalls ****************************/
+
+#ifdef __cplusplus
+XBT_PUBLIC void simcall_comm_send(smx_actor_t sender, smx_mailbox_t mbox, double task_size, double rate, void* src_buff,
+ size_t src_buff_size,
+ bool (*match_fun)(void*, void*, simgrid::kernel::activity::CommImpl*),
+ void (*copy_data_fun)(simgrid::kernel::activity::CommImpl*, void*, size_t),
+ void* data, double timeout);
+
+XBT_PUBLIC simgrid::kernel::activity::ActivityImplPtr