diff options
author | Allen Byrne <50328838+byrnHDF@users.noreply.github.com> | 2021-09-07 20:53:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-07 20:53:01 (GMT) |
commit | 46c22bcde2a38cc05e0cd97da8063b36016a9c67 (patch) | |
tree | a196047d1f243e68f6dc2f0d8f81a3f9ab43c575 /src/H5Emodule.h | |
parent | 474adfa3b59146ffbbd655e004d9f896cb7f3020 (diff) | |
download | hdf5-46c22bcde2a38cc05e0cd97da8063b36016a9c67.zip hdf5-46c22bcde2a38cc05e0cd97da8063b36016a9c67.tar.gz hdf5-46c22bcde2a38cc05e0cd97da8063b36016a9c67.tar.bz2 |
1.10 Merge A batch of life-cycle examples for different modules #654 (#988)
* Merge A batch of life-cycle examples for different modules #654
* Change doxygen generated file location
Diffstat (limited to 'src/H5Emodule.h')
-rw-r--r-- | src/H5Emodule.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/H5Emodule.h b/src/H5Emodule.h index 1670c03..58a3517 100644 --- a/src/H5Emodule.h +++ b/src/H5Emodule.h @@ -29,4 +29,54 @@ #define H5_MY_PKG_ERR H5E_ERROR #define H5_MY_PKG_INIT YES +/**\defgroup H5E H5E + * + * Use the functions in this module to manage HDF5 error stacks and error + * messages. + * + * <table> + * <tr><th>Create</th><th>Read</th></tr> + * <tr valign="top"> + * <td> + * \snippet{lineno} H5E_examples.c create + * </td> + * <td> + * \snippet{lineno} H5E_examples.c read + * </td> + * <tr><th>Update</th><th>Delete</th></tr> + * <tr valign="top"> + * <td> + * \snippet{lineno} H5E_examples.c update + * </td> + * <td> + * \snippet{lineno} H5E_examples.c delete + * </td> + * </tr> + * </table> + * + * \internal The \c FUNC_ENTER macro clears the error stack whenever an + * interface function is entered. When an error is detected, an entry + * is pushed onto the stack. As the functions unwind, additional + * entries are pushed onto the stack. The API function will return + * some indication that an error occurred and the application can + * print the error stack. + * + * \internal Certain API functions in the \ref H5E package, such as H5Eprint(), + * do not clear the error stack. Otherwise, any function which does + * not have an underscore immediately after the package name will + * clear the error stack. For instance, H5Fopen() clears the error + * stack while \Code{H5F_open} does not. + * + * \internal An error stack has a fixed maximum size. If this size is exceeded + * then the stack will be truncated and only the inner-most functions + * will have entries on the stack. This is expected to be a rare + * condition. + * + * \internal Each thread has its own error stack, but since multi-threading has + * not been added to the library yet, this package maintains a single + * error stack. The error stack is statically allocated to reduce the + * complexity of handling errors within the \ref H5E package. + * + */ + #endif /* H5Emodule_H */ |