/**
-@defgroup MSG_API MSG: Simulate CSP Algorithms
+@defgroup MSG_API MSG: Legacy handling of CSP algorithms
@brief Simple programming environment
+
MSG is a simple API to write algorithms organized with Concurrent
Sequential Processes (CSP) that interact by exchanging messages. It
constitutes a convenient simplification of the reality of distributed
remains simple to use: most unpleasant technical elements can be
abstracted away rather easily.
-If you are unsure, then you probably want to use MSG. Otherwise, you
-may want to use one of the following:
-
- - MSG in Java instead of C: @ref MSG_Java.
- - If you want to use DAGs: @ref SD_API.
- - If you want to study a MPI application: @ref SMPI_API.
-
-\section MSG_funct Offered functionalities
- - \ref msg_simulation
- - \ref m_process_management
- - \ref m_host_management
- - \ref m_task_management
- - \ref msg_mailbox_management
+@warning MSG used to be the main API of SimGrid 3, but we are
+ currently in the process of releasing SimGrid 4. The
+ tentative release date is Summer 2018. So MSG is frozen and
+ will probably never evolve. If you are starting a new
+ project, you should consider S4U instead. Note that the
+ support for MSG will not be removed from SimGrid before 2020
+ at least.
+
+@section MSG_funct Offered functionalities
+ - @ref msg_simulation
+ - @ref m_process_management
+ - @ref m_host_management
+ - @ref m_task_management
+ - @ref msg_mailbox_management
- @ref msg_file
- - \ref msg_task_usage
- - \ref msg_VMs
- - \ref msg_synchro
- - \ref msg_trace_driven
- - \ref msg_examples
+ - @ref msg_task_usage
+ - @ref msg_VMs
+ - @ref msg_synchro
+ - @ref msg_examples
*/
@ingroup MSG_API
@brief How to setup and control your simulation.
-The basic workflow is the following (check the \ref msg_examples for
+The basic workflow is the following (check the @ref msg_examples for
details).
-# Initialize the library with #MSG_init
/** @defgroup m_task_management Task Management Functions
* @ingroup MSG_API
* @brief Task structure of MSG (#msg_task_t) and associated functions. See
- * \ref msg_task_usage to see how to put the tasks in action.
+ * @ref msg_task_usage to see how to put the tasks in action.
*/
/** @defgroup msg_mailbox_management Mailbox Management Functions
@ingroup MSG_API
@brief MSG files (#msg_file_t) and associated functions, inspired from POSIX.
*/
-
-/**
-@defgroup msg_trace_driven Trace-driven simulations
-@ingroup MSG_API
-@brief This section describes the functions allowing to build trace-driven simulations.
-
-This is very handy when you want to test an algorithm or protocol that
-does nothing unless it receives some events from outside. For example,
-a P2P protocol reacts to requests from the user, but does nothing if
-there is no such event.
-
-In such situations, SimGrid allows to write your protocol in your C
-file, and the events to react to in a separate text file. Declare a
-function handling each of the events that you want to accept in your
-trace files, register them using #xbt_replay_action_register in your main,
-and then use #MSG_action_trace_run to launch the simulation. You can
-either have one trace file containing all your events, or a file per
-simulated process.
-
-Check the examples in <b>examples/msg/actions/actions.c</b> for details.
-
- */