- /* dependencies */
- task->inputs->clear();
- task->outputs->clear();
- task->predecessors->clear();
- task->successors->clear();
-
- /* scheduling parameters */
- task->flops_amount = nullptr;
- task->bytes_amount = nullptr;
- task->rate = -1;
-}
-
-void SD_task_free_f(void *t)
-{
- SD_task_t task = static_cast<SD_task_t>(t);
- delete task->inputs;
- delete task->outputs;
- delete task->predecessors;
- delete task->successors;
- xbt_free(task);
-}
-
-/**
- * \brief Creates a new task.
- *
- * \param name the name of the task (can be \c nullptr)
- * \param data the user data you want to associate with the task (can be \c nullptr)
- * \param amount amount of the task
- * \return the new task
- * \see SD_task_destroy()
- */
-SD_task_t SD_task_create(const char *name, void *data, double amount)
-{
- SD_task_t task = static_cast<SD_task_t>(xbt_mallocator_get(sd_global->task_mallocator));
+ task->inputs = new std::set<SD_task_t>();
+ task->outputs = new std::set<SD_task_t>();
+ task->predecessors = new std::set<SD_task_t>();
+ task->successors = new std::set<SD_task_t>();