- \ref m_datatypes_management
- \ref m_host_management
- \ref m_task_management
+ - \ref m_file_management
+ - \ref msg_actions_functions
- \ref msg_gos_functions
+ - \ref msg_deprecated_functions
- \ref msg_easier_life
- \ref msg_simulation
- \section MSG_examples Examples of MSG
-
- - \ref MSG_ex_master_slave
- - \ref MSG_ex_asynchronous_communications
- - \ref MSG_ex_master_slave_scrip_lua
+ Also make sure to visit the page @ref MSG_examples.
*/
\htmlonly <!-- DOXYGEN_NAVBAR_LABEL="Data types" --> \endhtmlonly
*/
-/** @defgroup m_process_management Management Functions of Agents
+/** @defgroup m_process_management Processes Management Functions
* @ingroup MSG_API
- * @brief This section describes the agent structure of MSG
+ * @brief This section describes the process structure of MSG
* (#m_process_t) and the functions for managing it.
*/
* @brief This section describes the task structure of MSG
* (#m_task_t) and the functions for managing it.
*/
-
+
+ /** @defgroup m_file_management Managing functions of Files
+ * @ingroup MSG_API
+ * @brief This section describes the file structure of MSG
+ * (#m_file_t) and the functions for managing it. It
+ * is based on POSIX functions.
+ */
+
+/** @defgroup msg_actions_functions Managing actions
+ * @ingroup MSG_API
+ * @brief This section describes functions for managing actions.
+ */
+
/** @defgroup msg_gos_functions MSG Operating System Functions
* @ingroup MSG_API
* @brief This section describes the functions that can be used
- * by an agent for handling some task.
+ * by a process for handling some task.
*/
-
+
+/** @defgroup msg_deprecated_functions MSG Deprecated
+ * @ingroup MSG_API
+ * @brief This section describes the deprecated functions and. They
+ * should be remove on next release.
+ */
+
/** @defgroup msg_easier_life Platform and Application management
* @ingroup MSG_API
* @brief This section describes functions to manage the platform creation
* MSG_examples for an overview of their usage.
*/
-/**
-@defgroup msg_simulation MSG simulation Functions
+/** @defgroup msg_simulation MSG simulation Functions
+* @ingroup MSG_API
+* @brief This section describes the functions you need to know to
+* set up a simulation. You should have a look at \ref MSG_examples
+* to have an overview of their usage.
+*
+* @htmlonly <!-- DOXYGEN_NAVBAR_LABEL="Simulation functions" --> @endhtmlonly
+*/
+
+/**
+@defgroup MSG_examples MSG Examples
@ingroup MSG_API
-@brief This section describes the functions you need to know to
- set up a simulation. You should have a look at \ref MSG_examples
- to have an overview of their usage.
+
+MSG comes with an extensive set of examples. It is sometimes difficult
+to find the one you need. This list aims at helping you finding the
+example from which you can learn what you want to.
+
+@section MSG_ex_basics Basic examples and features
-@htmlonly <!-- DOXYGEN_NAVBAR_LABEL="Simulation functions" --> @endhtmlonly
*/
-
+
/**
@defgroup MSG_LUA Lua bindings
@ingroup MSG_API
- \ref MSG_ex_master_slave_lua
- \ref MSG_ex_master_slave_lua_bypass
- - Also, the Chord example (in the source tree) is a working
- non-trivial example of use of the lua bindings
+ - Also, the lua version of the Chord example (in the source tree)
+ is a working non-trivial example of use of the lua bindings
*/
-/** \page MSG_ex_asynchronous_communications Asynchronous communication applications
+/** \defgroup MSG_ex_asynchronous_communications Asynchronous communications
+ \ingroup MSG_examples
Simulation of asynchronous communications between a sender and a receiver using a realistic platform and
an external description of the deployment.
thanks to MSG_create_environment() and MSG_launch_application().
-# Simulation settings : MSG_create_environment() creates a realistic
environment
- -# Application deployment : create the agents on the right locations with
+ -# Application deployment : create the processes on the right locations with
MSG_launch_application()
-# The simulation is run with #MSG_main()
*/
-/** \page MSG_ex_master_slave_scrip_lua Master/slave application using lua console
-
- Simulation of a master-slave application using a realistic platform and
- an external description of the deployment via a lua script.
-
- \section MSG_ex_msl_TOC Table of contents:
-
- - \ref MSG_ext_msl_code
- - \ref MSG_ext_msl_preliminary
- - \ref MSG_ext_msl_master
- - \ref MSG_ext_msl_slave
- - \ref MSG_ext_msl_core
- - \ref MSG_ext_msl_main
- - \ref MSG_ext_msl_helping
- - \ref MSG_ext_msl_platform
-
-<hr>
-
- \dontinclude msg/masterslave/masterslave_console.c
-
- \section MSG_ext_msl_code Code of the application
-
- \subsection MSG_ext_msl_preliminary Preliminary declarations
-
- \skip include
- \until } channel_t;
-
- \subsection MSG_ext_msl_master Master code
-
- This function has to be assigned to a m_process_t that will behave as the master.
- It should not be called directly but either given as a parameter to
- #MSG_process_create() or registered as a public function through
- #MSG_function_register() and then automatically assigned to a process through
- #MSG_load_platform_script().
-
- C style arguments (argc/argv) are interpreted as:
- - the number of tasks to distribute
- - the computation size of each task
- - the size of the files associated to each task
- - number of hosts that will accept those tasks.
-
- Tasks are dumbly sent in a round-robin style.
-
- \until end_of_master
-\subsection MSG_ext_msl_slave Slave code
-
- This function has to be assigned to a #m_process_t that has to behave as a slave.
- Just like the master fuction (described in \ref MSG_ext_ms_master), it should not be called directly.
-
- This function keeps waiting for tasks and executes them as it receives them.
-
- \until end_of_slave
-
-\subsection MSG_ext_msl_core Simulation core
-
- This function is the core of the simulation and is divided now only into 2 parts
- thanks to MSG_load_platform_script().
- -# Simulation settings and application deployment : MSG_load_platform_script() loads and creates a realistic
- environment and the agents on the right locations, described in the lua script file (see example below).
- Note that the use of this function require a lua installation on your machine.
- -# The simulation is run with #MSG_main().
-
- Its arguments are:
- - <i>platform_script_file</i>: the name of the script file containing a valid platform and application description, using bound lua methods to bypass the surfxml parser.
-
- \until end_of_test_all
-
-\subsection MSG_ext_msl_main Main() function
-
- This initializes MSG, runs a simulation, and free all data-structures created by MSG.
-
- \until end_of_main
-
- \section MSG_ext_msl_helping Helping files
-
- \subsection MSG_ext_msl_platform Example of platform script file
-
- \include msg/masterslave/platform_script.lua
-
-
-*/
-
-/** \page MSG_ex_master_slave Master/slave application
+/** @defgroup MSG_ex_master_slave Basic Master/Slaves
+ @ingroup MSG_examples
Simulation of a master-slave application using a realistic platform and
an external description of the deployment.
thanks to MSG_create_environment() and MSG_launch_application().
-# Simulation settings : MSG_create_environment() creates a realistic
environment
- -# Application deployment : create the agents on the right locations with
+ -# Application deployment : create the processes on the right locations with
MSG_launch_application()
-# The simulation is run with #MSG_main()
-# Simulation settings : <i>simgrid.platform</i> creates a realistic
environment
- -# Application deployment : create the agents on the right locations with
+ -# Application deployment : create the processes on the right locations with
<i>simgrid.application</i>
-# The simulation is run with <i>simgrid.run</i>