X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/7bd4c4c813d5e95bbe17bab38c0c07e53a50218d..73cbfdeeced9e5b254ed410c5dfaf8e3195d35e8:/src/include/surf/surf.h diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index 0c183afcf1..9fc3d95b67 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -17,28 +17,19 @@ #include "simgrid/datatypes.h" #include "simgrid/forward.h" -SG_BEGIN_DECL() -/* Actions and models are highly connected structures... */ - -/* user-visible parameters */ -extern XBT_PRIVATE double sg_tcp_gamma; -extern XBT_PRIVATE double sg_sender_gap; -extern XBT_PRIVATE double sg_latency_factor; -extern XBT_PRIVATE double sg_bandwidth_factor; -extern XBT_PRIVATE double sg_weight_S_parameter; -extern XBT_PRIVATE int sg_network_crosstraffic; +#ifndef __cplusplus +#error This is a C++ only file, now +#endif #ifdef __cplusplus namespace simgrid { namespace surf { - class Model; class CpuModel; class HostModel; class NetworkModel; class StorageModel; -class Resource; class NetworkCm02Link; class Action; } @@ -46,29 +37,32 @@ class Action; typedef simgrid::surf::Model surf_Model; typedef simgrid::surf::CpuModel surf_CpuModel; -typedef simgrid::surf::Cpu surf_Cpu; typedef simgrid::surf::HostModel surf_HostModel; typedef simgrid::surf::NetworkModel surf_NetworkModel; typedef simgrid::surf::StorageModel surf_StorageModel; -typedef simgrid::surf::Resource surf_Resource; typedef simgrid::surf::Action surf_Action; -typedef simgrid::surf::FileImpl surf_File; #else typedef struct surf_Model surf_Model; typedef struct surf_CpuModel surf_CpuModel; -typedef struct surf_Cpu surf_Cpu; typedef struct surf_HostModel surf_HostModel; typedef struct surf_NetworkModel surf_NetworkModel; typedef struct surf_StorageModel surf_StorageModel; -typedef struct surf_Resource surf_Resource; -typedef struct surf_Host surf_Host; typedef struct surf_Action surf_Action; -typedef struct surf_File surf_File; #endif +SG_BEGIN_DECL() +/* Actions and models are highly connected structures... */ + +/* user-visible parameters */ +extern XBT_PRIVATE double sg_tcp_gamma; +extern XBT_PRIVATE double sg_latency_factor; +extern XBT_PRIVATE double sg_bandwidth_factor; +extern XBT_PRIVATE double sg_weight_S_parameter; +extern XBT_PRIVATE int sg_network_crosstraffic; + /** @ingroup SURF_c_bindings * \brief Model datatype * @@ -80,7 +74,6 @@ typedef surf_CpuModel *surf_cpu_model_t; typedef surf_HostModel *surf_host_model_t; typedef surf_NetworkModel *surf_network_model_t; typedef surf_StorageModel *surf_storage_model_t; -typedef surf_File* surf_file_t; /** @ingroup SURF_c_bindings * \brief Action structure @@ -100,10 +93,11 @@ struct surf_model_description { const char *description; void_f_void_t model_init_preparse; }; -typedef struct surf_model_description s_surf_model_description_t; -typedef struct surf_model_description* surf_model_description_t; +typedef struct surf_model_description s_surf_model_description_t; -XBT_PUBLIC(int) find_model_description(s_surf_model_description_t * table, const char *name); +#ifdef __cplusplus +XBT_PUBLIC(int) find_model_description(s_surf_model_description_t* table, std::string name); +#endif XBT_PUBLIC(void) model_help(const char *category, s_surf_model_description_t * table); /***************************/ @@ -377,11 +371,6 @@ XBT_PUBLIC_DATA(s_surf_model_description_t) surf_host_model_description[]; */ XBT_PUBLIC(void) surf_vm_model_init_HL13(); -/** \ingroup SURF_simulation - * \brief List of hosts for which one want to be notified if they ever restart. - */ -XBT_PUBLIC_DATA(xbt_dict_t) watched_hosts_lib; - /*** SURF Globals **************************/ /** \ingroup SURF_simulation @@ -431,33 +420,15 @@ XBT_PUBLIC(double) surf_get_clock(); */ XBT_PUBLIC(void) surf_exit(); -/* Prototypes of the functions that handle the properties */ -XBT_PUBLIC_DATA(xbt_dict_t) current_property_set;// the prop set for the currently parsed element (also used in SIMIX) - /* surf parse file related (public because called from a test suite) */ XBT_PUBLIC(void) parse_platform_file(const char *file); -/* For the trace and trace:connect tag (store their content till the end of the parsing) */ -XBT_PUBLIC_DATA(xbt_dict_t) traces_set_list; - -/* - * Returns the initial path. On Windows the initial path is the current directory for the current process in the other - * case the function returns "./" that represents the current directory on Unix/Linux platforms. - */ -const char *__surf_get_initial_path(); - /********** Tracing **********/ /* from surf_instr.c */ void TRACE_surf_action(surf_action_t surf_action, const char *category); -void TRACE_surf_alloc(); -void TRACE_surf_release(); /* instr_routing.c */ void instr_routing_define_callbacks (); -void instr_new_variable_type (const char *new_typename, const char *color); -void instr_new_user_variable_type (const char *father_type, const char *new_typename, const char *color); -void instr_new_user_state_type (const char *father_type, const char *new_typename); -void instr_new_value_for_user_state_type (const char *_typename, const char *value, const char *color); int instr_platform_traced (); xbt_graph_t instr_routing_platform_graph (); void instr_routing_platform_graph_export_graphviz (xbt_graph_t g, const char *filename);