char *name; /**< @brief action name if any */
smx_simdata_action_t simdata; /**< @brief simulator data */
xbt_fifo_t cond_list; /*< conditional variables that must be signaled when the action finish. */
-
void *data; /**< @brief user data */
+ int refcount; /**< @brief reference counter */
} s_smx_action_t;
typedef struct s_smx_action *smx_action_t;
@ingroup m_datatypes_management_details @{ */
typedef struct s_smx_process {
- /* KEEP IT IN SYNC WITH s_xbt_thread_ from src/xbt_sg_thread.h */
char *name; /**< @brief process name if any */
smx_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 */
- /* KEEP IT IN SYNC WITH s_smx_process_ from src/xbt_sg_thread.h */
-
} s_smx_process_t;
/** @} */
/** @brief Agent datatype
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[]) ;
-/** @} */
-
SG_END_DECL()
#endif