extern void_f_void_t *STag_surfxml_argument_fun;
extern void_f_void_t *ETag_surfxml_argument_fun;
-void surf_parse_open(const char *file);
-void surf_parse_close(void);
-void surf_parse_reset_parser(void);
-void surf_parse_get_double(double *value,const char *string);
+XBT_PUBLIC void surf_parse_open(const char *file);
+XBT_PUBLIC void surf_parse_close(void);
+XBT_PUBLIC void surf_parse_reset_parser(void);
+XBT_PUBLIC void surf_parse_get_double(double *value,const char *string);
/* Prototypes of the functions offered by flex */
-int surf_parse_lex(void);
-int surf_parse_get_lineno(void);
-FILE *surf_parse_get_in(void);
-FILE *surf_parse_get_out(void);
-int surf_parse_get_leng(void);
-char *surf_parse_get_text(void);
-void surf_parse_set_lineno(int line_number);
-void surf_parse_set_in(FILE * in_str);
-void surf_parse_set_out(FILE * out_str);
-int surf_parse_get_debug(void);
-void surf_parse_set_debug(int bdebug);
-int surf_parse_lex_destroy(void);
+XBT_PUBLIC int surf_parse_lex(void);
+XBT_PUBLIC int surf_parse_get_lineno(void);
+XBT_PUBLIC FILE *surf_parse_get_in(void);
+XBT_PUBLIC FILE *surf_parse_get_out(void);
+XBT_PUBLIC int surf_parse_get_leng(void);
+XBT_PUBLIC char *surf_parse_get_text(void);
+XBT_PUBLIC void surf_parse_set_lineno(int line_number);
+XBT_PUBLIC void surf_parse_set_in(FILE * in_str);
+XBT_PUBLIC void surf_parse_set_out(FILE * out_str);
+XBT_PUBLIC int surf_parse_get_debug(void);
+XBT_PUBLIC void surf_parse_set_debug(int bdebug);
+XBT_PUBLIC int surf_parse_lex_destroy(void);
#endif
typedef struct lmm_constraint *lmm_constraint_t;
typedef struct lmm_system *lmm_system_t;
-lmm_system_t lmm_system_new(void);
-void lmm_system_free(lmm_system_t sys);
-void lmm_variable_disable(lmm_system_t sys, lmm_variable_t var);
+XBT_PUBLIC lmm_system_t lmm_system_new(void);
+XBT_PUBLIC void lmm_system_free(lmm_system_t sys);
+XBT_PUBLIC void lmm_variable_disable(lmm_system_t sys, lmm_variable_t var);
-lmm_constraint_t lmm_constraint_new(lmm_system_t sys, void *id,
+XBT_PUBLIC lmm_constraint_t lmm_constraint_new(lmm_system_t sys, void *id,
double bound_value);
-void lmm_constraint_shared(lmm_constraint_t cnst);
+XBT_PUBLIC void lmm_constraint_shared(lmm_constraint_t cnst);
-void lmm_constraint_free(lmm_system_t sys, lmm_constraint_t cnst);
+XBT_PUBLIC void lmm_constraint_free(lmm_system_t sys, lmm_constraint_t cnst);
-lmm_variable_t lmm_variable_new(lmm_system_t sys, void *id,
+XBT_PUBLIC lmm_variable_t lmm_variable_new(lmm_system_t sys, void *id,
double weight_value,
double bound, int number_of_constraints);
-void lmm_variable_free(lmm_system_t sys, lmm_variable_t var);
-double lmm_variable_getvalue(lmm_variable_t var);
+XBT_PUBLIC void lmm_variable_free(lmm_system_t sys, lmm_variable_t var);
+XBT_PUBLIC double lmm_variable_getvalue(lmm_variable_t var);
-void lmm_expand(lmm_system_t sys, lmm_constraint_t cnst,
+XBT_PUBLIC void lmm_expand(lmm_system_t sys, lmm_constraint_t cnst,
lmm_variable_t var, double value);
-void lmm_expand_add(lmm_system_t sys, lmm_constraint_t cnst,
+XBT_PUBLIC void lmm_expand_add(lmm_system_t sys, lmm_constraint_t cnst,
lmm_variable_t var, double value);
-void lmm_elem_set_value(lmm_system_t sys, lmm_constraint_t cnst,
+XBT_PUBLIC void lmm_elem_set_value(lmm_system_t sys, lmm_constraint_t cnst,
lmm_variable_t var, double value);
-lmm_constraint_t lmm_get_cnst_from_var(lmm_system_t sys,
+XBT_PUBLIC lmm_constraint_t lmm_get_cnst_from_var(lmm_system_t sys,
lmm_variable_t var, int num);
-int lmm_get_number_of_cnst_from_var(lmm_system_t sys, lmm_variable_t var);
-lmm_variable_t lmm_get_var_from_cnst(lmm_system_t sys,
+XBT_PUBLIC int lmm_get_number_of_cnst_from_var(lmm_system_t sys, lmm_variable_t var);
+XBT_PUBLIC lmm_variable_t lmm_get_var_from_cnst(lmm_system_t sys,
lmm_constraint_t cnst,
lmm_variable_t * var);
-lmm_constraint_t lmm_get_first_active_constraint(lmm_system_t sys);
-lmm_constraint_t lmm_get_next_active_constraint(lmm_system_t sys, lmm_constraint_t cnst);
+XBT_PUBLIC lmm_constraint_t lmm_get_first_active_constraint(lmm_system_t sys);
+XBT_PUBLIC lmm_constraint_t lmm_get_next_active_constraint(lmm_system_t sys, lmm_constraint_t cnst);
-void *lmm_constraint_id(lmm_constraint_t cnst);
-void *lmm_variable_id(lmm_variable_t var);
+XBT_PUBLIC void *lmm_constraint_id(lmm_constraint_t cnst);
+XBT_PUBLIC void *lmm_variable_id(lmm_variable_t var);
-void lmm_update(lmm_system_t sys, lmm_constraint_t cnst,
+XBT_PUBLIC void lmm_update(lmm_system_t sys, lmm_constraint_t cnst,
lmm_variable_t var, double value);
-void lmm_update_variable_bound(lmm_system_t sys, lmm_variable_t var,
+XBT_PUBLIC void lmm_update_variable_bound(lmm_system_t sys, lmm_variable_t var,
double bound);
-void lmm_update_variable_weight(lmm_system_t sys, lmm_variable_t var,
+XBT_PUBLIC void lmm_update_variable_weight(lmm_system_t sys, lmm_variable_t var,
double weight);
-double lmm_get_variable_weight(lmm_variable_t var);
+XBT_PUBLIC double lmm_get_variable_weight(lmm_variable_t var);
-void lmm_update_constraint_bound(lmm_system_t sys, lmm_constraint_t cnst,
+XBT_PUBLIC void lmm_update_constraint_bound(lmm_system_t sys, lmm_constraint_t cnst,
double bound);
-int lmm_constraint_used(lmm_system_t sys, lmm_constraint_t cnst);
+XBT_PUBLIC int lmm_constraint_used(lmm_system_t sys, lmm_constraint_t cnst);
-void lmm_solve(lmm_system_t sys);
+XBT_PUBLIC void lmm_solve(lmm_system_t sys);
#endif /* _SURF_MAXMIN_H */
/** \brief Initializes the timer resource
* \ingroup SURF_resources
*/
-void surf_timer_resource_init(const char *filename);
+XBT_PUBLIC void surf_timer_resource_init(const char *filename);
/* Cpu resource */
*
* \see surf_workstation_resource_init_CLM03()
*/
-void surf_cpu_resource_init_Cas01(const char *filename);
+XBT_PUBLIC void surf_cpu_resource_init_Cas01(const char *filename);
/* Network resource */
*
* \see surf_workstation_resource_init_CLM03()
*/
-void surf_network_resource_init_CM02(const char *filename);
+XBT_PUBLIC void surf_network_resource_init_CM02(const char *filename);
/** \brief Workstation resource extension public
* \ingroup SURF_resources
*
* \see surf_workstation_resource_init_KCCFLN05()
*/
-void surf_workstation_resource_init_CLM03(const char *filename);
+XBT_PUBLIC void surf_workstation_resource_init_CLM03(const char *filename);
/** \brief Initializes the platform with the model KCCFLN05
* \ingroup SURF_resources
#include "surf/surfxml_parse.h"
#include "surf/trace_mgr.h"
-void surf_parse_get_trace(tmgr_trace_t *trace, const char *string);
+XBT_PUBLIC void surf_parse_get_trace(tmgr_trace_t *trace, const char *string);
#endif
typedef struct tmgr_trace_event *tmgr_trace_event_t;
/* Creation functions */
-tmgr_history_t tmgr_history_new(void);
-void tmgr_history_free(tmgr_history_t history);
+XBT_PUBLIC tmgr_history_t tmgr_history_new(void);
+XBT_PUBLIC void tmgr_history_free(tmgr_history_t history);
-tmgr_trace_t tmgr_trace_new(const char *filename);
-tmgr_trace_t tmgr_empty_trace_new(void);
-void tmgr_trace_free(tmgr_trace_t trace);
+XBT_PUBLIC tmgr_trace_t tmgr_trace_new(const char *filename);
+XBT_PUBLIC tmgr_trace_t tmgr_empty_trace_new(void);
+XBT_PUBLIC void tmgr_trace_free(tmgr_trace_t trace);
-tmgr_trace_event_t tmgr_history_add_trace(tmgr_history_t history,
+XBT_PUBLIC tmgr_trace_event_t tmgr_history_add_trace(tmgr_history_t history,
tmgr_trace_t trace,
double start_time, int offset,
void *resource);
/* Access functions */
-double tmgr_history_next_date(tmgr_history_t history);
-tmgr_trace_event_t tmgr_history_get_next_event_leq(tmgr_history_t history,
+XBT_PUBLIC double tmgr_history_next_date(tmgr_history_t history);
+XBT_PUBLIC tmgr_trace_event_t tmgr_history_get_next_event_leq(tmgr_history_t history,
double date,
double *value,
void **resource);
-void tmgr_finalize(void);
+XBT_PUBLIC void tmgr_finalize(void);
#endif /* _SURF_TMGR_H */
/* @}*/
-void xbt_context_init(void);
-void xbt_context_exit(void);
-void xbt_context_empty_trash(void);
-xbt_context_t xbt_context_new(xbt_context_function_t code,
+XBT_PUBLIC void xbt_context_init(void);
+XBT_PUBLIC void xbt_context_exit(void);
+XBT_PUBLIC void xbt_context_empty_trash(void);
+XBT_PUBLIC xbt_context_t xbt_context_new(xbt_context_function_t code,
void_f_pvoid_t startup_func, void *startup_arg,
void_f_pvoid_t cleanup_func, void *cleanup_arg,
int argc, char *argv[]);
-void xbt_context_free(xbt_context_t context);
-void xbt_context_start(xbt_context_t context);
-void xbt_context_yield(void);
-void xbt_context_schedule(xbt_context_t context);
+XBT_PUBLIC void xbt_context_free(xbt_context_t context);
+XBT_PUBLIC void xbt_context_start(xbt_context_t context);
+XBT_PUBLIC void xbt_context_yield(void);
+XBT_PUBLIC void xbt_context_schedule(xbt_context_t context);
/* @} */
#endif /* _XBT_CONTEXT_H */
* gives the number of seconds since the Epoch (00:00:00 UTC, January 1, 1970).
* Most users should use gras_os_time and should not use this function unless
they really know what they are doing. */
-double xbt_os_time(void);
+XBT_PUBLIC double xbt_os_time(void);
typedef struct s_xbt_os_timer *xbt_os_timer_t;
-xbt_os_timer_t xbt_os_timer_new(void);
-void xbt_os_timer_free(xbt_os_timer_t timer);
-void xbt_os_timer_start(xbt_os_timer_t timer);
-void xbt_os_timer_stop(xbt_os_timer_t timer);
-double xbt_os_timer_elapsed(xbt_os_timer_t timer);
+XBT_PUBLIC xbt_os_timer_t xbt_os_timer_new(void);
+XBT_PUBLIC void xbt_os_timer_free(xbt_os_timer_t timer);
+XBT_PUBLIC void xbt_os_timer_start(xbt_os_timer_t timer);
+XBT_PUBLIC void xbt_os_timer_stop(xbt_os_timer_t timer);
+XBT_PUBLIC double xbt_os_timer_elapsed(xbt_os_timer_t timer);
#endif