/* Getters and Setters */
XBT_PUBLIC(int) simcall_process_count();
-XBT_PUBLIC(void *) simcall_process_get_data(smx_actor_t process);
XBT_PUBLIC(void) simcall_process_set_data(smx_actor_t process, void *data);
XBT_PUBLIC(void) simcall_process_set_host(smx_actor_t process, sg_host_t dest);
XBT_PUBLIC(int) simcall_process_is_suspended(smx_actor_t process);
msg_proc = (simdata_process_t) SIMIX_process_self_get_data();
SIMIX_process_self_set_data(nullptr);
} else {
- msg_proc = (simdata_process_t) simcall_process_get_data(smx_proc);
+ msg_proc = (simdata_process_t)smx_proc->data;
simcall_process_set_data(smx_proc, nullptr);
}
*/
msg_error_t MSG_process_migrate(msg_process_t process, msg_host_t host)
{
- simdata_process_t simdata = (simdata_process_t) simcall_process_get_data(process);
+ simdata_process_t simdata = (simdata_process_t)process->data;
simdata->m_host = host;
msg_host_t now = simdata->m_host;
TRACE_msg_process_change_host(process, now, host);
xbt_assert(process != nullptr, "Invalid parameter: first parameter must not be nullptr!");
/* get from SIMIX the MSG process data, and then the user data */
- simdata_process_t simdata = (simdata_process_t) simcall_process_get_data(process);
+ simdata_process_t simdata = (simdata_process_t)process->data;
if (simdata)
return simdata->data;
else
{
xbt_assert(process != nullptr, "Invalid parameter: first parameter must not be nullptr!");
- simdata_process_t simdata = (simdata_process_t) simcall_process_get_data(process);
+ simdata_process_t simdata = (simdata_process_t)process->data;
simdata->data = data;
return MSG_OK;
simdata = (simdata_process_t) SIMIX_process_self_get_data();
}
else {
- simdata = (simdata_process_t) simcall_process_get_data(process);
+ simdata = (simdata_process_t)process->data;
}
return simdata ? simdata->m_host : nullptr;
}
if (!self) {
return nullptr;
}
- return SIMIX_process_get_data(self);
+ return self->data;
}
void SIMIX_process_self_set_data(void *data)
SIMIX_process_set_data(self, data);
}
-void* SIMIX_process_get_data(smx_actor_t process)
-{
- return process->data;
-}
-
void SIMIX_process_set_data(smx_actor_t process, void *data)
{
process->data = data;
XBT_PRIVATE smx_activity_t SIMIX_process_suspend(smx_actor_t process, smx_actor_t issuer);
XBT_PRIVATE void SIMIX_process_resume(smx_actor_t process);
XBT_PRIVATE int SIMIX_process_get_PID(smx_actor_t self);
-XBT_PRIVATE void* SIMIX_process_get_data(smx_actor_t process);
XBT_PRIVATE void SIMIX_process_set_data(smx_actor_t process, void *data);
XBT_PRIVATE smx_actor_t SIMIX_process_get_by_name(const char* name);
XBT_PRIVATE int SIMIX_process_is_suspended(smx_actor_t process);
return simgrid::simix::kernelImmediate(SIMIX_process_count);
}
-/**
- * \ingroup simix_process_management
- * \brief Return the user data of a #smx_actor_t.
- * \param process a SIMIX process
- * \return the user data of this process
- */
-void* simcall_process_get_data(smx_actor_t process)
-{
- return SIMIX_process_get_data(process);
-}
-
/**
* \ingroup simix_process_management
* \brief Set the user data of a #smx_actor_t.
data->instance_id = instance_id;
data->replaying = false;
- simdata_process_t simdata = static_cast<simdata_process_t>(simcall_process_get_data(proc));
- simdata->data = data;
+ static_cast<simdata_process_t>(proc->data)->data = data;
if (*argc > 3) {
memmove(&(*argv)[0], &(*argv)[2], sizeof(char *) * (*argc - 2));
smpi_process_data_t smpi_process_data()
{
- simdata_process_t simdata = static_cast<simdata_process_t>(SIMIX_process_self_get_data());
+ simdata_process_t simdata = static_cast<simdata_process_t>(SIMIX_process_self()->data);
return static_cast<smpi_process_data_t>(simdata->data);
}
){
XBT_DEBUG("Privatization : We are copying from a zone inside global memory... Saving data to temp buffer !");
-
- smpi_switch_data_segment((static_cast<smpi_process_data_t>((static_cast<simdata_process_t>(SIMIX_process_get_data(comm->src_proc))->data))->index));
+ smpi_switch_data_segment(
+ (static_cast<smpi_process_data_t>((static_cast<simdata_process_t>(comm->src_proc->data)->data))->index));
tmpbuff = static_cast<void*>(xbt_malloc(buff_size));
memcpy(tmpbuff, buff, buff_size);
}
if((smpi_privatize_global_variables) && ((char*)comm->dst_buff >= smpi_start_data_exe)
&& ((char*)comm->dst_buff < smpi_start_data_exe + smpi_size_data_exe )){
XBT_DEBUG("Privatization : We are copying to a zone inside global memory - Switch data segment");
- smpi_switch_data_segment((static_cast<smpi_process_data_t>((static_cast<simdata_process_t>(SIMIX_process_get_data(comm->dst_proc))->data))->index));
+ smpi_switch_data_segment(
+ (static_cast<smpi_process_data_t>((static_cast<simdata_process_t>(comm->dst_proc->data)->data))->index));
}
memcpy(comm->dst_buff, tmpbuff, buff_size);