1 /** @addtogroup XBT_API
3 * The XBT functionalities fall into several categories:
4 * - Portability support.
15 * Data are associated to both an ID (0(1) search) and a name
28 /** @defgroup XBT_syscall Malloc and friends
29 * @brief malloc and associated functions, killing the program on error
35 /** @defgroup XBT_ex Exception support
36 * @brief A set of macros providing exception a la C++ in ANSI C (grounding feature)
39 /** @defgroup XBT_log Logging support
40 * @brief A generic logging facility in the spirit of log4j (grounding feature)
44 /** \defgroup XBT_log_cats Existing log categories
46 * \brief (automatically extracted)
48 * This is the list of all existing log categories in SimGrid.
49 * This list was automatically extracted from the source code by
50 * the src/xbt_log_extract_hierarchy utility.
52 * You can thus be certain that it is uptodate, but it may somehow
53 * lack a final manual touch.
54 * Anyway, nothing's perfect ;)
60 /** @defgroup XBT_error Error tracking support
61 * @brief A set of macros easing the handling of errors (grounding feature)
64 /** @defgroup XBT_config Configuration support
65 * @brief Changing the configuration of SimGrid components (grounding feature)
71 /** @defgroup XBT_dynar A generic dynamic array
72 * @brief DynArr are dynamically sized vector which may contain any type of variables.
75 /** @defgroup XBT_dict A generic dictionnary
76 * @brief The dictionnary data structure (comparable to hash tables)
79 /** \defgroup XBT_set A generic set datatype
80 * \brief A data container consisting in \ref XBT_dict and \ref XBT_dynar
83 /** \addtogroup XBT_fifo
86 /** @defgroup XBT_swag A O(1) set datatype
87 * @brief a O(1) set based on linked lists
90 /** \addtogroup XBT_heap
93 /* ************************* *
94 * * PORTABILITY-INTERNALS * *
95 * ************************* */
97 /** \defgroup XBT_context Portable context implementation
98 * \brief Contexts are a higher level system than <tt>setjump/longjmp</tt>
99 * for non-preemptible threads.
101 * You shouldn't use it directly since it is merly intended to ease the
102 * implementation of the serveral programmation environment of the
103 * SimGrid toolkit (nammely, \ref MSG_API, \ref GRAS_API and \ref SMPI_API).
105 * You should use those mechanism instead.