diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 1999-10-20 17:46:55 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 1999-10-20 17:46:55 (GMT) |
commit | f1f675be430dc3f0c0999e42018795d25f713f57 (patch) | |
tree | 8672218a776c5a6df495644776189b8125a8abc0 /src/H5Epublic.h | |
parent | 4d1a3a289220ade9ff4948723fc67a18eda65097 (diff) | |
download | hdf5-f1f675be430dc3f0c0999e42018795d25f713f57.zip hdf5-f1f675be430dc3f0c0999e42018795d25f713f57.tar.gz hdf5-f1f675be430dc3f0c0999e42018795d25f713f57.tar.bz2 |
[svn-r1783] Added public H5Epush... routines and macros.
Diffstat (limited to 'src/H5Epublic.h')
-rw-r--r-- | src/H5Epublic.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/H5Epublic.h b/src/H5Epublic.h index 07ba0f1..ce8af46 100644 --- a/src/H5Epublic.h +++ b/src/H5Epublic.h @@ -46,6 +46,28 @@ H5Eset_auto (H5E_saved_efunc, H5E_saved_edata); \ } while(0) +/* + * Public API Convenience Macros for Error reporting - Documented + */ +/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */ +#define H5Epush_sim(func,maj,min,str) H5Epush(__FILE__,func,__LINE__,maj,min,str) + +/* + * Public API Convenience Macros for Error reporting - Undocumented + */ +/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */ +/* And return after pushing error onto stack */ +#define H5Epush_ret(func,maj,min,str,ret) { \ + H5Epush(__FILE__,func,__LINE__,maj,min,str); \ + return(ret); \ +} + +/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */ +/* And goto a label after pushing error onto stack */ +#define H5Epush_goto(func,maj,min,str,label) { \ + H5Epush(__FILE__,func,__LINE__,maj,min,str); \ + goto (label); \ +} /* * Declare an enumerated type which holds all the valid major HDF error codes. @@ -187,6 +209,8 @@ __DLL__ herr_t H5Ewalk (H5E_direction_t direction, H5E_walk_t func, __DLL__ herr_t H5Ewalk_cb (int n, H5E_error_t *err_desc, void *client_data); __DLL__ const char *H5Eget_major (H5E_major_t major_number); __DLL__ const char *H5Eget_minor (H5E_minor_t minor_number); +__DLL__ herr_t H5Epush(const char *file, const char *func, + unsigned line, H5E_major_t maj, H5E_minor_t min, const char *str); #ifdef __cplusplus } |