SG_BEGIN_DECL()
/** @brief Host datatype.
- @ingroup m_host_management
-
- A <em>location</em> (or <em>host</em>) is any possible place where an actor may run. Thus it is represented as a
- <em>physical resource with computing capabilities</em>, some <em>mailboxes</em> to enable running actors to
- communicate with remote ones, and some <em>private data</em> that can be only accessed by local actors.
+ *
+ * A <em>location</em> (or <em>host</em>) is any possible place where an actor may run. Thus it is represented as a
+ * <em>physical resource with computing capabilities</em>, some <em>mailboxes</em> to enable running actors to
+ * communicate with remote ones, and some <em>private data</em> that can be only accessed by local actors.
*/
XBT_PUBLIC sg_host_t* sg_host_list();
-/** @ingroup m_host_management
- * @brief Return the current number of hosts.
- */
+/** @brief Return the current number of hosts. */
XBT_PUBLIC size_t sg_host_count();
-/** @ingroup m_host_management
+/**
* @brief Return a dynar containing all the hosts declared at a given point of time (including VMs)
* @remark The host order in the returned array is generally different from the host creation/declaration order in the
* XML platform (we use a hash table internally)
XBT_PUBLIC size_t sg_host_extension_create(void (*deleter)(void*));
XBT_PUBLIC void* sg_host_extension_get(sg_host_t host, size_t rank);
-/** @ingroup m_host_management
- * @brief Finds a sg_host_t using its name.
+/** @brief Finds a sg_host_t using its name.
*
* This is a name directory service
* @param name the name of an host.
*/
XBT_PUBLIC sg_host_t sg_host_by_name(const char* name);
-/** @ingroup m_host_management
- *
- * @brief Return the name of the #sg_host_t. */
+/** @brief Return the name of the #sg_host_t. */
XBT_PUBLIC const char* sg_host_get_name(sg_host_t host);
// ========== User Data ==============
-/** @ingroup m_host_management
- *
- * @brief Return the user data of a #sg_host_t.
+/** @brief Return the user data of a #sg_host_t.
*
* This functions returns the user data associated to @a host if it is possible.
*/
XBT_PUBLIC void* sg_host_user(sg_host_t host);
-/** @ingroup m_host_management
- *
- * @brief Set the user data of a #sg_host_t.
+/** @brief Set the user data of a #sg_host_t.
*
* This functions attach @a data to @a host if it is possible.
*/
XBT_PUBLIC void sg_host_user_destroy(sg_host_t host);
// ========= storage related functions ============
-/** @ingroup m_host_management
- * @brief Return the list of mount point names on an host.
+/** @brief Return the list of mount point names on an host.
* @param host a host
* @return a dict containing all mount point on the host (mount_name => sg_storage_t)
*/
XBT_PUBLIC xbt_dict_t sg_host_get_mounted_storage_list(sg_host_t host);
-/** @ingroup m_host_management
- * @brief Return the list of storages attached to an host.
+/** @brief Return the list of storages attached to an host.
* @param host a host
* @return a dynar containing all storages (name) attached to the host
*/
XBT_PUBLIC xbt_dynar_t sg_host_get_attached_storage_list(sg_host_t host);
// =========== user-level functions ===============
-/** @ingroup m_host_management
- * @brief Return the speed of the processor (in flop/s), regardless of the current load on the machine.
- */
+/** @brief Return the speed of the processor (in flop/s), regardless of the current load on the machine. */
XBT_PUBLIC double sg_host_speed(sg_host_t host);
XBT_PUBLIC double sg_host_get_pstate_speed(sg_host_t host, int pstate_index);
XBT_PUBLIC int sg_host_core_count(sg_host_t host);
- /** @brief Return the location on which a process is running.
- * @return the sg_host_t corresponding to the location on which @a process is running.
-/** @ingroup m_host_management
- * @brief Returns the current computation load (in flops per second).
++/** @brief Returns the current computation load (in flops per second).
+ * @param host a host
*/
-/** @ingroup m_process_management
- * @brief Return the location on which a process is running.
- * @return the sg_host_t corresponding to the location on which @a process is running.
- */
+ XBT_PUBLIC double sg_host_load(sg_host_t host);
+
++/** @brief Return the location on which the current process is running. */
XBT_PUBLIC sg_host_t sg_host_self();
XBT_PUBLIC const char* sg_host_self_get_name();
-/** @ingroup m_host_management
- * @brief Return the total count of pstates defined for a host. See also @ref plugin_energy.
+/** @brief Return the total count of pstates defined for a host. See also @ref plugin_energy.
*
* @param host host to test
*/
/** @brief Return the location on which the current process is executed */
XBT_PUBLIC sg_host_t MSG_host_self();
+ XBT_PUBLIC double MSG_host_get_load(sg_host_t host);
/* ******************************** VMs ************************************* */
typedef sg_vm_t msg_vm_t;
XBT_PUBLIC sg_size_t MSG_storage_write(msg_storage_t storage, sg_size_t size);
/* ******************************** Actor/process *************************** */
+/** Processes are independent agents that can do stuff on their own.
+ * They are in charge of executing your code interacting with the simulated world.
+ * A process may be defined as a <em>code</em> with some <em>private data</em>.
+ * Processes must be located on <em>hosts</em> (#msg_host_t), and they exchange data by sending tasks (#msg_task_t)
+ * that are similar to envelops containing data.
+ *
+ * @hideinitializer
+ */
typedef sg_actor_t msg_process_t;
XBT_PUBLIC int MSG_process_get_PID(msg_process_t process);
* MSG_config("host/model","ptask_L07");
*/
XBT_PUBLIC void MSG_config(const char* key, const char* value);
-/** @ingroup msg_simulation
- * @brief Initialize the MSG internal data.
+/** @brief Initialize the MSG internal data.
* @hideinitializer
*
* It also check that the link-time and compile-time versions of SimGrid do
XBT_PUBLIC void MSG_mailbox_set_async(const char* alias);
/** @brief Opaque type representing a semaphore
- * @ingroup msg_synchro
* @hideinitializer
*/
typedef struct s_smx_sem_t* msg_sem_t; // Yeah that's a rename of the smx_sem_t which doesnt require smx_sem_t to be