X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2c8caa220c50fc14a4190bf733307b9bdc5b33db..c5671be7576dca4aca0cc73c77d4ee732df42140:/include/simgrid/simdag.h?ds=sidebyside diff --git a/include/simgrid/simdag.h b/include/simgrid/simdag.h index cfabc7b0cb..466be705ff 100644 --- a/include/simgrid/simdag.h +++ b/include/simgrid/simdag.h @@ -6,6 +6,7 @@ #ifndef SIMGRID_SIMDAG_H #define SIMGRID_SIMDAG_H +#include #include #include #include @@ -14,9 +15,22 @@ #ifdef __cplusplus #include + +namespace simgrid { +namespace sd { +class Task; +XBT_PUBLIC std::set* simulate(double how_long); +} // namespace sd +} // namespace simgrid + +using sg_sd_Task = simgrid::sd::Task; +#else +typedef struct sd_Task sg_sd_Task; #endif -SG_BEGIN_DECL +#ifdef __cplusplus +extern "C" { +#endif /** @brief Link opaque datatype @ingroup SD_link_api @@ -34,8 +48,8 @@ typedef sg_link_t SD_link_t; Each task has a @ref e_SD_task_state_t "state" indicating whether the task is scheduled, running, done, ... */ -typedef struct s_SD_task_t* SD_task_t; -typedef const struct s_SD_task_t* const_SD_task_t; +typedef sg_sd_Task* SD_task_t; +typedef const sg_sd_Task* const_SD_task_t; /** @brief Task states @ingroup SD_task_api */ @@ -154,8 +168,6 @@ XBT_PUBLIC void SD_config(const char* key, const char* value); XBT_PUBLIC void SD_create_environment(const char* platform_file); XBT_PUBLIC void SD_simulate(double how_long); XBT_PUBLIC void SD_simulate_with_update(double how_long, xbt_dynar_t changed_tasks_dynar); -XBT_PUBLIC double SD_get_clock(); -XBT_PUBLIC void SD_exit(); XBT_PUBLIC xbt_dynar_t SD_daxload(const char* filename); XBT_PUBLIC xbt_dynar_t SD_dotload(const char* filename); XBT_PUBLIC xbt_dynar_t SD_dotload_with_sched(const char* filename); @@ -163,6 +175,7 @@ XBT_PUBLIC xbt_dynar_t SD_PTG_dotload(const char* filename); /** @} */ /* Support some backward compatibility */ +#define SD_get_clock simgrid_get_clock #define SD_workstation_t sg_host_t #define SD_link_get_name sg_link_get_name @@ -196,13 +209,7 @@ XBT_PUBLIC xbt_dynar_t SD_PTG_dotload(const char* filename); //SD_route_get_size //SD_route_get_list //TRACE_sd_set_task_category -SG_END_DECL - #ifdef __cplusplus -namespace simgrid { -namespace sd { -XBT_PUBLIC std::set* simulate(double how_long); -} } #endif