X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/7a3a100990355eb757dc81106b5aac6daed0b8e1..fd98f5dac2c0beab27ab6627b8c805bd4f5be526:/src/include/surf/surf.hpp diff --git a/src/include/surf/surf.hpp b/src/include/surf/surf.hpp index d26ba8e4e8..b43f7b9226 100644 --- a/src/include/surf/surf.hpp +++ b/src/include/surf/surf.hpp @@ -7,16 +7,7 @@ #define SURF_SURF_H #include "simgrid/forward.h" -#include "src/internal_config.h" -#include "xbt/config.h" -#include "xbt/dict.h" -#include "xbt/dynar.h" #include "xbt/graph.h" -#include "xbt/misc.h" - -#ifndef __cplusplus -#error This is a C++ only file, now -#endif namespace simgrid { namespace surf { @@ -28,27 +19,6 @@ class NetworkCm02Link; } } -/** @ingroup SURF_c_bindings - * \brief Model datatype - * - * Generic data structure for a model. The hosts, - * the CPUs and the network links are examples of models. - */ -typedef simgrid::surf::CpuModel* surf_cpu_model_t; -typedef simgrid::surf::HostModel* surf_host_model_t; -typedef simgrid::surf::NetworkModel* surf_network_model_t; -typedef simgrid::surf::StorageModel* surf_storage_model_t; - -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; - /** \brief Resource model description */ struct surf_model_description { @@ -111,12 +81,12 @@ XBT_PUBLIC void surf_cpu_action_set_bound(simgrid::kernel::resource::Action* act /** \ingroup SURF_models * \brief The CPU model object for the physical machine layer */ -XBT_PUBLIC_DATA surf_cpu_model_t surf_cpu_model_pm; +XBT_PUBLIC_DATA simgrid::surf::CpuModel* surf_cpu_model_pm; /** \ingroup SURF_models * \brief The CPU model object for the virtual machine layer */ -XBT_PUBLIC_DATA surf_cpu_model_t surf_cpu_model_vm; +XBT_PUBLIC_DATA simgrid::surf::CpuModel* surf_cpu_model_vm; /** \ingroup SURF_models * \brief Initializes the CPU model with the model Cas01 @@ -152,14 +122,6 @@ XBT_PUBLIC_DATA s_surf_model_description_t surf_plugin_description[]; */ XBT_PUBLIC_DATA s_surf_model_description_t surf_cpu_model_description[]; -/** \ingroup SURF_models - * \brief The network model - * - * When creating a new API on top on SURF, you shouldn't use the network model unless you know what you are doing. - * Only the host model should be accessed because depending on the platform model, the network model can be NULL. - */ -XBT_PUBLIC_DATA surf_network_model_t surf_network_model; - /** \ingroup SURF_models * \brief Same as network model 'LagrangeVelho', only with different correction factors. * @@ -275,7 +237,7 @@ XBT_PUBLIC void surf_storage_model_init_default(); */ XBT_PUBLIC_DATA s_surf_model_description_t surf_storage_model_description[]; -XBT_PUBLIC_DATA surf_storage_model_t surf_storage_model; +XBT_PUBLIC_DATA simgrid::surf::StorageModel* surf_storage_model; /** \ingroup SURF_models * \brief The host model @@ -283,7 +245,7 @@ XBT_PUBLIC_DATA surf_storage_model_t surf_storage_model; * Note that when you create an API on top of SURF, the host model should be the only one you use * because depending on the platform model, the network model and the CPU model may not exist. */ -XBT_PUBLIC_DATA surf_host_model_t surf_host_model; +XBT_PUBLIC_DATA simgrid::surf::HostModel* surf_host_model; /** \ingroup SURF_models * \brief Initializes the platform with a compound host model @@ -384,6 +346,4 @@ void instr_routing_define_callbacks(); xbt_graph_t instr_routing_platform_graph(); void instr_routing_platform_graph_export_graphviz(xbt_graph_t g, const char* filename); -SG_END_DECL() - #endif