Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
New model for parallel tasks: host/model:ptask_BMF
[simgrid.git] / doc / doxygen / module-surf.doc
index 8587e4ed94faeba4d93810bfd6ee7ae57f954900..32d997f76b06ac0f2bc6f486d7f37bf53c11c984 100644 (file)
@@ -1,41 +1,6 @@
-/** \addtogroup SURF_API
-  
-  \section SURF_doc Surf documentation
-   Surf is composed several components:
-   - \ref SURF_simulation
-   - \ref SURF_models
-   - \ref SURF_build_api
-   - \ref SURF_c_bindings
-   - \ref SURF_interface
-   - \ref SURF_routing_interface
-   - \ref SURF_cpu_interface
-   - \ref SURF_network_interface
-   - \ref SURF_storage_interface
-   - \ref SURF_host_interface
-   - \ref SURF_vm_interface
-   - \ref SURF_lmm
-   - \ref SURF_callbacks
-   - \ref SURF_plugin_energy
-   
-
-*/
-
-/** \defgroup SURF_models Simulation Models
-    \ingroup SURF_API
-    \brief Functions to declare the kind of models that you want to use
-    */
-
-/** \defgroup SURF_simulation Simulation
-    \ingroup SURF_API
-    \brief Functions for creating the environment and launching the simulation
-
-    This section describes the functions for initializing SURF, performing
-    the simulation and exiting SURF.
-*/
-
-/** \defgroup SURF_build_api Create a new API
-    \ingroup SURF_API
-    \brief How to build a new API on top of SURF
+/** @defgroup SURF_build_api Create a new API
+    @ingroup SURF_API
+    @brief How to build a new API on top of SURF
 
     SURF provides the functionalities to simulate the platform. There are two main data types in SURF:
     the actions and the resources. Several types of resources exist:
     The implementation of these resources depends on the platform
     models you choose.  You can select your model by calling
     #surf_host_model_init_current_default() (which will give you a
-    CLM03 model), or similar (see \ref SURF_models).
+    CLM03 model), or similar (see @ref SURF_models).
 
-    To initialize SURF, call #surf_init(). Then
-    #surf_host_model_init_current_default() or #surf_host_model_init_ptask_L07() 
+    To initialize SURF, call
+    #surf_host_model_init_current_default() or #surf_host_model_init_ptask_L07()
     to create the platform.
 
-    Then you can access the hosts with the global variables \ref host_list.
-    Some functions of the \ref SURF_host_interface and similar can give
+    Then you can access the hosts with the @ref simgrid::s4u::Engine::get_all_hosts.
+    Some functions of the @ref SURF_host_interface and similar can give
     you some information about:
        - a host: get_speed(), get_available_speed();
-       - a network link: get_link_name(), get_link_latency(), get_link_bandwith();
+       - a network link: get_link_name(), get_link_latency(), get_link_bandwidth();
        - a route: get_route(), get_route_size().
 
-    During the simulation, call \a surf_host_model->execute() to schedule a
-    computation task on a host, or \a surf_host_model->communicate()
+    During the simulation, call @a surf_host_model->execute() to schedule a
+    computation task on a host, or @a surf_host_model->communicate()
     to schedule a communication task between two hosts. You can also create parallel task
-    with \a surf_host_model->extension_public->execute_parallel_task(). These functions return
+    with @a surf_host_model->extension_public->execute_parallel_task(). These functions return
     a new action that represents the task you have just created.
 
-    To execute the actions created with \a execute(), \a communicate() or \a execute_parallel_task(), call
-    surf_solve(). The function surf_solve() is where the simulation takes place. It returns the
+    To execute the actions created with @a execute(), @a communicate() or @a execute_parallel_task(), call
+    EngineImpl::solve(). This function is where the simulation takes place. It returns the
     time elapsed to execute the actions. You can know what actions have changed their state thanks
     to the states sets. For example, if your want to know what actions are finished,
-    extract them from \a surf_host_model->common_public->states.done_action_set.
-    Depending on these results, you can schedule other tasks and call surf_solve() again.
-
-    When the simulation is over, just call surf_exit() to clean the memory.
+    extract them from @a surf_host_model->common_public->states.done_action_set.
+    Depending on these results, you can schedule other tasks and call solve() again.
 
-    Have a look at the implementation of \ref MSG_API "MSG" and \ref SD_API "Simdag" to see how these module
+    Have a look at the implementation of @ref MSG_API "MSG" and @ref SD_API "Simdag" to see how these module
     interact with SURF. But if you want to create a new API on top of SURF,
     we strongly recommend you to contact us before anyway.
 
 */
 
-/**
-@defgroup SURF_c_bindings   SURF C bindings
-@ingroup SURF_API
-@brief Describes the c bindings of SURF
-*/
-
-/**
-@defgroup SURF_interface   SURF Interface
-@ingroup SURF_API
-@brief Describes the general interface for all components (Cpu, Network, Storage, Host, VM)
-*/
-
-/**
-@defgroup SURF_routing_interface   SURF Routing Interface
-@ingroup SURF_API
-@brief Describes the routing interface
-*/
-
-/**
-@defgroup SURF_cpu_interface   SURF Cpu Interface
-@ingroup SURF_API
-@brief Describes the general Cpu interface for all Cpu implementations
-*/
-
-/**
-@defgroup SURF_network_interface   SURF Network Interface
-@ingroup SURF_API
-@brief Describes the general Network interface for all Network implementations
-*/
-
-/**
-@defgroup SURF_storage_interface   SURF Storage Interface
-@ingroup SURF_API
-@brief Describes the general  interface for all Storage implementations
-*/
-
-/**
-@defgroup SURF_host_interface   SURF Host Interface
-@ingroup SURF_API
-@brief Describes the general  interface for all Host implementations
-*/
-
-/**
-@defgroup SURF_vm_interface   SURF VM Interface
-@ingroup SURF_API
-@brief Describes the general  interface for all VM implementations
-*/
-
-/**
-@defgroup SURF_lmm   SURF Linear MaxMin
-@ingroup SURF_API
-@brief Describes how the linear MaxMin system work
-*/
-
-/**
-@defgroup SURF_callbacks   SURF callbacks
-@ingroup SURF_API
-@brief Describes how to use the SURF callbacks
-*/
-
-/**
-@defgroup SURF_plugin_energy   SURF Energy Plugin
-@ingroup SURF_API
-@brief Describes how to use the energy plugin.
-*/