- msg_task_t task = xbt_new(s_msg_task_t, 1);
- simdata_task_t simdata = new s_simdata_task_t();
- task->simdata = simdata;
-
- /* Task structure */
- task->name = xbt_strdup(name);
- task->data = data;
-
- /* Simulator Data */
- simdata->compute = nullptr;
- simdata->comm = nullptr;
- simdata->bytes_amount = message_size;
- simdata->flops_amount = flop_amount;
- simdata->sender = nullptr;
- simdata->receiver = nullptr;
- simdata->source = nullptr;
- simdata->priority = 1.0;
- simdata->bound = 0;
- simdata->rate = -1.0;
- simdata->isused = 0;
-
- simdata->host_nb = 0;
- simdata->host_list = nullptr;
- simdata->flops_parallel_amount = nullptr;
- simdata->bytes_parallel_amount = nullptr;
- TRACE_msg_task_create(task);
-
- return task;
+ return new simgrid::msg::Task(name ? name : "", flop_amount, message_size, data);