X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c2bf63103e5914cb2245c77d45adc47e9a302889..03aab6a746a03d2e8db4cc1fa53c031ca7ee8ada:/src/include/simix/datatypes.h diff --git a/src/include/simix/datatypes.h b/src/include/simix/datatypes.h index abaaf31dd6..863070d1c0 100644 --- a/src/include/simix/datatypes.h +++ b/src/include/simix/datatypes.h @@ -10,21 +10,12 @@ #define SIMIX_DATATYPE_H #include "xbt/misc.h" #include "xbt/swag.h" +#include "xbt/fifo.h" SG_BEGIN_DECL() /* ******************************** Host ************************************ */ -/** @defgroup m_datatypes_management_details Details on SIMIX datatypes - @ingroup m_datatypes_management*/ - -typedef struct s_simdata_host *simdata_host_t; -/** @brief Host datatype - @ingroup m_datatypes_management_details */ -typedef struct s_smx_host { - char *name; /**< @brief host name if any */ - simdata_host_t simdata; /**< @brief simulator data */ - void *data; /**< @brief user data */ -} s_smx_host_t; +/** @defgroup m_datatypes_management_details Details on SIMIX datatypes */ /** @brief Host datatype @ingroup m_datatypes_management @@ -37,42 +28,19 @@ typedef struct s_smx_host { \see m_host_management @{ */ -typedef struct s_smx_host *smx_host_t; + typedef struct s_smx_host *smx_host_t; /** @} */ /* ******************************** Syncro ************************************ */ - -typedef struct s_smx_mutex *smx_mutex_t; -typedef struct s_smx_cond *smx_cond_t; - + typedef struct s_smx_mutex *smx_mutex_t; + typedef struct s_smx_cond *smx_cond_t; + typedef struct s_smx_sem *smx_sem_t; /********************************** Action *************************************/ -typedef struct s_simdata_action *simdata_action_t; -/** @brief Action datatype - @ingroup m_datatypes_management_details */ -typedef struct s_smx_action { - char *name; /**< @brief action name if any */ - simdata_action_t simdata; /**< @brief simulator data */ - void *data; /**< @brief user data */ -} s_smx_action_t; - -typedef struct s_smx_action *smx_action_t; - + typedef struct s_smx_action *smx_action_t; /* ****************************** Process *********************************** */ -typedef struct s_simdata_process *simdata_process_t; -/** @brief Process datatype - @ingroup m_datatypes_management_details @{ */ -typedef struct s_smx_process { - char *name; /**< @brief process name if any */ - simdata_process_t simdata; /**< @brief simulator data */ - s_xbt_swag_hookup_t process_hookup; - s_xbt_swag_hookup_t synchro_hookup; - s_xbt_swag_hookup_t host_proc_hookup; - void *data; /**< @brief user data */ -} s_smx_process_t; -/** @} */ /** @brief Agent datatype @ingroup m_datatypes_management @@ -80,17 +48,19 @@ typedef struct s_smx_process { data, executing in a location. \see m_process_management @{ */ -typedef struct s_smx_process *smx_process_t; + typedef struct s_smx_process *smx_process_t; /** @} */ -/** @brief Agent code - @ingroup m_datatypes_management - The code of an agent is a m_process_code_t, i.e. a function with no arguments - returning no value. - \see m_process_management - @{ */ -typedef int(*smx_process_code_t)(int argc,char *argv[]) ; -/** @} */ + typedef struct s_smx_context *smx_context_t; + +/******************************* Networking ***********************************/ + typedef struct s_smx_rvpoint *smx_rdv_t; + typedef struct s_smx_comm *smx_comm_t; + typedef enum {comm_send, + comm_recv + } smx_comm_type_t; + + SG_END_DECL() #endif