/** @addtogroup XBT_API
*
* The XBT functionalities fall into several categories:
- * - Portability support.
+ * - Portability support
* - \ref XBT_syscall
* - Grounding features
+ * - \ref XBT_ex
* - \ref XBT_log
* - \ref XBT_error
* - \ref XBT_config
* @{
*/
+ /** @defgroup XBT_grounding Grounding features */
+ /** @defgroup XBT_adt Usual data structures */
+ /** @defgroup XBT_misc Misc general purposes library components */
-/* *************** *
- * * PORTABILITY * *
- * *************** */
+/** @} */
- /** @defgroup XBT_syscall Malloc and friends
- * @brief malloc and associated functions, killing the program on error
- */
-
-/* ************* *
- * * GROUNDING * *
- * ************* */
- /** @defgroup XBT_log Logging support
- * @brief A generic logging facility in the spirit of log4j (grounding feature)
- * @{
- */
+/*
+ * +++++++++++++
+ * + GROUNDING +
+ * +++++++++++++
+ */
- /** \defgroup XBT_log_cats Existing log categories
- * \ingroup XBT_log
- * \brief (automatically extracted)
- *
- * This is the list of all existing log categories in SimGrid.
- * This list was automatically extracted from the source code by
- * the src/xbt_log_extract_hierarchy utility.
- *
- * You can thus be certain that it is uptodate, but it may somehow
- * lack a final manual touch.
- * Anyway, nothing's perfect ;)
- */
+/** @addtogroup XBT_grounding
+ *
+ * Grounding features are the basement of SimGrid. You'll find portable (and
+ * secure) wrappers to the malloc-like functions, logging support, error
+ * reporting features, etc.
+ *
+ * @{
+ */
+ /** @defgroup XBT_syscall Malloc and friends */
+ /** @defgroup XBT_ex Exception support */
+ /** @defgroup XBT_log Logging support */
+ /** @defgroup XBT_error Assert macro familly */
+ /** @defgroup XBT_config Configuration support */
- /** @} */
+/** @} */
+/*
+ * ++++++++++++++++
+ * + DATA STRUCTS +
+ * ++++++++++++++++
+ */
- /** @defgroup XBT_error Error tracking support
- * @brief A set of macros easing the handling of errors (grounding feature)
- */
+/** @addtogroup XBT_adt
+ *
+ * Here are the basic data containers that every C programmer rewrites one day.
+ * You won't need to do so yourself, you lucky one, because we did it for you.
+ *
+ * @{
+ */
+ /** @defgroup XBT_dynar Dynar: generic dynamic array */
+ /** @defgroup XBT_dict Dict: generic dictionnary */
+ /** @defgroup XBT_set Set: generic set datatype */
+ /** @defgroup XBT_fifo Fifo: generic workqueue */
+ /** @defgroup XBT_swag Swag: O(1) set datatype */
+ /** @defgroup XBT_heap Heap: generic heap data structure */
- /** @defgroup XBT_config Configuration support
- * @brief Changing the configuration of SimGrid components (grounding feature)
- */
+/** @} */ End of XBT_adt
+
+/*
+ * +++++++++++++++++
+ * + MISC FEATURES +
+ * +++++++++++++++++
+ */
-/* **************** *
- * * DATA STRUCTS * *
- * **************** */
- /** @defgroup XBT_dynar A generic dynamic array
- * @brief DynArr are dynamically sized vector which may contain any type of variables.
- */
+/** @addtogroup XBT_misc
+ *
+ * Here are several general purposes library components designed specially
+ * for you, you lucky one.
+ * @{
+ */
+ /** @defgroup XBT_graph General purpose graph library */
- /** @defgroup XBT_dict A generic dictionnary
- * @brief The dictionnary data structure (comparable to hash tables)
- */
-
- /** \defgroup XBT_set A generic set datatype
- * \brief A data container consisting in \ref XBT_dict and \ref XBT_dynar
- */
-
-/** \addtogroup XBT_fifo
- \ingroup XBT_API */
-/** \addtogroup XBT_swag
- \ingroup XBT_API */
-/** \addtogroup XBT_heap
- \ingroup XBT_API */
+/** @} */ End of XBT_misc
/* ************************* *
- * * PORTABILITY-INTERNALS * *
+ * * PORTABILITY-INTERNALS * * (not included in documentation)
* ************************* */
/** \defgroup XBT_context Portable context implementation
* \brief Contexts are a higher level system than <tt>setjump/longjmp</tt>
* for non-preemptible threads.
*
- * You shouldn't use it directly since it is merly intended to ease the
- * implementation of the serveral programmation environment of the
- * SimGrid toolkit (nammely, \ref MSG_API, \ref GRAS_API and \ref SMPI_API).
+ * You shouldn't use it directly since it is merely intended to ease the
+ * implementation of the several programmation environment of the
+ * SimGrid toolkit (namely, \ref MSG_API, \ref GRAS_API and \ref SMPI_API).
*
- * You should use those mechanism instead.
+ * You should use those environments instead.
*/
+