H5Eget_auto2 returns H5E_GET_AUTO2 returns the settings for the automatic error stack traversal function, func , and its data, client_data , that are associated with the error stack specified by estack_id .
Either or both of the func and client_data arguments may be null, in which case the value is not returned. The library initializes its default error stack traversal functions to H5Eprint1 and H5Eprint2 to H5E_PRINT1 and H5E_PRINT2. A call to H5Eget_auto2 returns H5Eprint2 or to H5E_GET_AUTO2 returns H5E_PRINT2 or the user-defined function passed in through H5Eset_auto2 through H5E_SET_AUTO2. A call to H5Eget_auto1 returns H5Eprint1 or to H5E_GET_AUTO1 returns H5E_PRINT1 or the user-defined function passed in through H5EsetH5E_auto1SET_AUTO1. However, if the application passes in a user-defined function through H5Eset_auto1 through H5E_SET_AUTO1, it should call H5Eget_auto1 to call H5E_GET_AUTO1 to query the traversal function. If the application passes in a user-defined function through H5Eset_auto2 through H5E_SET_AUTO2, it should call H5Eget_auto2 to call H5E_GET_AUTO2 to query the traversal function. Mixing the new style and the old style functions will cause a failure. For example, if the application sets a user-defined old-style traversal function through H5Eset_auto1 through H5E_SET_AUTO1, a call to H5Eget_auto2 will to H5E_GET_AUTO2 will fail and will indicate that the application has mixed H5Eset_auto1 and H5Eget_auto2 mixed H5E_SET_AUTO1 and H5E_GET_AUTO2. On the other hand, mixing H5Eset_auto2 and H5Eget_auto1 will mixing H5E_SET_AUTO2 and H5E_GET_AUTO1 will also cause a failure. But if the traversal functions are the library’s default H5Eprint1 or H5Eprint2 , mixing H5Eset_auto1 and H5Eget_auto2 or mixing H5Eset_auto2 and H5Eget_auto1 does default H5E_PRINT1 or H5E_PRINT2, mixing H5E_SET_AUTO1 and H5E_GET_AUTO2 or mixing H5E_SET_AUTO2 and H5E_GET_AUTO1 does not fail. |