Skip to content

Commit

Permalink
ENH: Mangle HDF5 functions re-defined
Browse files Browse the repository at this point in the history
The HDF5 library is adding a C-Preprocessor redefinitons pf function to
automatically add context based information.
  • Loading branch information
blowekamp committed Nov 14, 2024
1 parent e88a1c5 commit 4ee1977
Show file tree
Hide file tree
Showing 11 changed files with 127 additions and 66 deletions.
36 changes: 24 additions & 12 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Apublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1042,18 +1042,30 @@ H5_DLL herr_t H5Arename_by_name(hid_t loc_id, const char *obj_name, const char *
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5A_MODULE
#define H5Acreate_async(...) H5Acreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Acreate_by_name_async(...) H5Acreate_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aopen_async(...) H5Aopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aopen_by_name_async(...) H5Aopen_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aopen_by_idx_async(...) H5Aopen_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Awrite_async(...) H5Awrite_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aread_async(...) H5Aread_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Arename_async(...) H5Arename_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Arename_by_name_async(...) H5Arename_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aexists_async(...) H5Aexists_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aexists_by_name_async(...) H5Aexists_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Aclose_async(...) H5Aclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Acreate_async
#define H5Acreate_async(...) HD5_MANGLE_PREFIX##_H5Acreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Acreate_by_name_async
#define H5Acreate_by_name_async(...) HD5_MANGLE_PREFIX##_H5Acreate_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aopen_async
#define H5Aopen_async(...) HD5_MANGLE_PREFIX##_H5Aopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aopen_by_name_async
#define H5Aopen_by_name_async(...) HD5_MANGLE_PREFIX##_H5Aopen_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aopen_by_idx_async
#define H5Aopen_by_idx_async(...) HD5_MANGLE_PREFIX##_H5Aopen_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Awrite_async
#define H5Awrite_async(...) HD5_MANGLE_PREFIX##_H5Awrite_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aread_async
#define H5Aread_async(...) HD5_MANGLE_PREFIX##_H5Aread_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Arename_async
#define H5Arename_async(...) HD5_MANGLE_PREFIX##_H5Arename_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Arename_by_name_async
#define H5Arename_by_name_async(...) HD5_MANGLE_PREFIX##_H5Arename_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aexists_async
#define H5Aexists_async(...) HD5_MANGLE_PREFIX##_H5Aexists_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aexists_by_name_async
#define H5Aexists_by_name_async(...) HD5_MANGLE_PREFIX##_H5Aexists_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Aclose_async
#define H5Aclose_async(...) HD5_MANGLE_PREFIX##_H5Aclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
27 changes: 18 additions & 9 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Dpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1660,15 +1660,24 @@ H5_DLL herr_t H5Dget_chunk_index_type(hid_t did, H5D_chunk_index_t *idx_type);
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5D_MODULE
#define H5Dcreate_async(...) H5Dcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dopen_async(...) H5Dopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dget_space_async(...) H5Dget_space_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dread_async(...) H5Dread_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dread_multi_async(...) H5Dread_multi_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dwrite_async(...) H5Dwrite_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dwrite_multi_async(...) H5Dwrite_multi_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dset_extent_async(...) H5Dset_extent_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Dclose_async(...) H5Dclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dcreate_async
#define H5Dcreate_async(...) HD5_MANGLE_PREFIX##_H5Dcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dopen_async
#define H5Dopen_async(...) HD5_MANGLE_PREFIX##_H5Dopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dget_space_async
#define H5Dget_space_async(...) HD5_MANGLE_PREFIX##_H5Dget_space_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dread_async
#define H5Dread_async(...) HD5_MANGLE_PREFIX##_H5Dread_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dread_multi_async
#define H5Dread_multi_async(...) HD5_MANGLE_PREFIX##_H5Dread_multi_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dwrite_async
#define H5Dwrite_async(...) HD5_MANGLE_PREFIX##_H5Dwrite_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dwrite_multi_async
#define H5Dwrite_multi_async(...) HD5_MANGLE_PREFIX##_H5Dwrite_multi_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dset_extent_async
#define H5Dset_extent_async(...) HD5_MANGLE_PREFIX##_H5Dset_extent_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Dclose_async
#define H5Dclose_async(...) HD5_MANGLE_PREFIX##_H5Dclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
15 changes: 10 additions & 5 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Fpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1853,11 +1853,16 @@ H5_DLL herr_t H5Fformat_convert(hid_t fid);
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5F_MODULE
#define H5Fcreate_async(...) H5Fcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Fopen_async(...) H5Fopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Freopen_async(...) H5Freopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Fflush_async(...) H5Fflush_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Fclose_async(...) H5Fclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Fcreate_async
#define H5Fcreate_async(...) HD5_MANGLE_PREFIX##_H5Fcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Fopen_async
#define H5Fopen_async(...) HD5_MANGLE_PREFIX##_H5Fopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Freopen_async
#define H5Freopen_async(...) HD5_MANGLE_PREFIX##_H5Freopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Fflush_async
#define H5Fflush_async(...) HD5_MANGLE_PREFIX##_H5Fflush_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Fclose_async
#define H5Fclose_async(...) HD5_MANGLE_PREFIX##_H5Fclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
18 changes: 12 additions & 6 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Gpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -496,12 +496,18 @@ H5_DLL herr_t H5Gclose_async(hid_t group_id, hid_t es_id);
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5G_MODULE
#define H5Gcreate_async(...) H5Gcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Gopen_async(...) H5Gopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Gget_info_async(...) H5Gget_info_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Gget_info_by_name_async(...) H5Gget_info_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Gget_info_by_idx_async(...) H5Gget_info_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Gclose_async(...) H5Gclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gcreate_async
#define H5Gcreate_async(...) HD5_MANGLE_PREFIX##_H5Gcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gopen_async
#define H5Gopen_async(...) HD5_MANGLE_PREFIX##_H5Gopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gget_info_async
#define H5Gget_info_async(...) HD5_MANGLE_PREFIX##_H5Gget_info_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gget_info_by_name_async
#define H5Gget_info_by_name_async(...) HD5_MANGLE_PREFIX##_H5Gget_info_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gget_info_by_idx_async
#define H5Gget_info_by_idx_async(...) HD5_MANGLE_PREFIX##_H5Gget_info_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Gclose_async
#define H5Gclose_async(...) HD5_MANGLE_PREFIX##_H5Gclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
18 changes: 12 additions & 6 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Lpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1426,12 +1426,18 @@ H5_DLL herr_t H5Lcreate_external(const char *file_name, const char *obj_name, hi
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5L_MODULE
#define H5Lcreate_hard_async(...) H5Lcreate_hard_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Lcreate_soft_async(...) H5Lcreate_soft_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Ldelete_async(...) H5Ldelete_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Ldelete_by_idx_async(...) H5Ldelete_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Lexists_async(...) H5Lexists_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Literate_async(...) H5Literate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Lcreate_hard_async
#define H5Lcreate_hard_async(...) HD5_MANGLE_PREFIX##_H5Lcreate_hard_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Lcreate_soft_async
#define H5Lcreate_soft_async(...) HD5_MANGLE_PREFIX##_H5Lcreate_soft_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ldelete_async
#define H5Ldelete_async(...) HD5_MANGLE_PREFIX##_H5Ldelete_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ldelete_by_idx_async
#define H5Ldelete_by_idx_async(...) HD5_MANGLE_PREFIX##_H5Ldelete_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Lexists_async
#define H5Lexists_async(...) HD5_MANGLE_PREFIX##_H5Lexists_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Literate_async
#define H5Literate_async(...) HD5_MANGLE_PREFIX##_H5Literate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
10 changes: 5 additions & 5 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Mpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -650,11 +650,11 @@ H5_DLL herr_t H5Mdelete(hid_t map_id, hid_t key_mem_type_id, const void *key, hi
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5M_MODULE
#define H5Mcreate_async(...) H5Mcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mopen_async(...) H5Mopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mclose_async(...) H5Mclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mput_async(...) H5Mput_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mget_async(...) H5Mget_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mcreate_async(...) HD5_MANGLE_PREFIX##_H5Mcreate_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mopen_async(...) HD5_MANGLE_PREFIX##_H5Mopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mclose_async(...) HD5_MANGLE_PREFIX##_H5Mclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mput_async(...) HD5_MANGLE_PREFIX##_H5Mput_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Mget_async(...) HD5_MANGLE_PREFIX##_H5Mget_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5. */
Expand Down
21 changes: 14 additions & 7 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Opublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1660,13 +1660,20 @@ H5_DLL herr_t H5Otoken_from_str(hid_t loc_id, const char *token_str, H5O_token_t
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5O_MODULE
#define H5Oopen_async(...) H5Oopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Oopen_by_idx_async(...) H5Oopen_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Oget_info_by_name_async(...) H5Oget_info_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Oclose_async(...) H5Oclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Oflush_async(...) H5Oflush_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Orefresh_async(...) H5Orefresh_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Ocopy_async(...) H5Ocopy_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Oopen_async
#define H5Oopen_async(...) HD5_MANGLE_PREFIX##_H5Oopen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Oopen_by_idx_async
#define H5Oopen_by_idx_async(...) HD5_MANGLE_PREFIX##_H5Oopen_by_idx_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Oget_info_by_name_async
#define H5Oget_info_by_name_async(...) HD5_MANGLE_PREFIX##_H5Oget_info_by_name_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Oclose_async
#define H5Oclose_async(...) HD5_MANGLE_PREFIX##_H5Oclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Oflush_async
#define H5Oflush_async(...) HD5_MANGLE_PREFIX##_H5Oflush_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Orefresh_async
#define H5Orefresh_async(...) HD5_MANGLE_PREFIX##_H5Orefresh_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ocopy_async
#define H5Ocopy_async(...) HD5_MANGLE_PREFIX##_H5Ocopy_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
9 changes: 6 additions & 3 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Rpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -601,9 +601,12 @@ H5_DLL ssize_t H5Rget_attr_name(const H5R_ref_t *ref_ptr, char *name, size_t siz
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5R_MODULE
#define H5Ropen_object_async(...) H5Ropen_object_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Ropen_region_async(...) H5Ropen_region_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Ropen_attr_async(...) H5Ropen_attr_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ropen_object_async
#define H5Ropen_object_async(...) HD5_MANGLE_PREFIX##_H5Ropen_object_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ropen_region_async
#define H5Ropen_region_async(...) HD5_MANGLE_PREFIX##_H5Ropen_region_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Ropen_attr_async
#define H5Ropen_attr_async(...) HD5_MANGLE_PREFIX##_H5Ropen_attr_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5. */
Expand Down
9 changes: 6 additions & 3 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5Tpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -2801,9 +2801,12 @@ H5_DLL herr_t H5Treclaim(hid_t type_id, hid_t space_id, hid_t plist_id, void *bu
/* (Must be defined _after_ the function prototype) */
/* (And must only defined when included in application code, not the library) */
#ifndef H5T_MODULE
#define H5Tcommit_async(...) H5Tcommit_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Topen_async(...) H5Topen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5Tclose_async(...) H5Tclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Tcommit_async
#define H5Tcommit_async(...) HD5_MANGLE_PREFIX##_H5Tcommit_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Topen_async
#define H5Topen_async(...) HD5_MANGLE_PREFIX##_H5Topen_async(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5Tclose_async
#define H5Tclose_async(...) HD5_MANGLE_PREFIX##_H5Tclose_async(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5. */
Expand Down
21 changes: 14 additions & 7 deletions Modules/ThirdParty/HDF5/src/itkhdf5/src/H5VLconnector.h
Original file line number Diff line number Diff line change
Expand Up @@ -1141,13 +1141,20 @@ H5_DLL herr_t H5VLrequest_optional_op(void *req, hid_t connector_id, H5VL_option
/* (And must only defined when included in application code, not the library) */
#ifndef H5VL_MODULE
/* Inject application compile-time macros into function calls */
#define H5VLattr_optional_op(...) H5VLattr_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLdataset_optional_op(...) H5VLdataset_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLdatatype_optional_op(...) H5VLdatatype_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLfile_optional_op(...) H5VLfile_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLgroup_optional_op(...) H5VLgroup_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLlink_optional_op(...) H5VLlink_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#define H5VLobject_optional_op(...) H5VLobject_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLattr_optional_op
#define H5VLattr_optional_op(...) HD5_MANGLE_PREFIX##_H5VLattr_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLdataset_optional_op
#define H5VLdataset_optional_op(...) HD5_MANGLE_PREFIX##_H5VLdataset_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLdatatype_optional_op
#define H5VLdatatype_optional_op(...) HD5_MANGLE_PREFIX##_H5VLdatatype_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLfile_optional_op
#define H5VLfile_optional_op(...) HD5_MANGLE_PREFIX##_H5VLfile_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLgroup_optional_op
#define H5VLgroup_optional_op(...) HD5_MANGLE_PREFIX##_H5VLgroup_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLlink_optional_op
#define H5VLlink_optional_op(...) HD5_MANGLE_PREFIX##_H5VLlink_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)
#undef H5VLobject_optional_op
#define H5VLobject_optional_op(...) HD5_MANGLE_PREFIX##_H5VLobject_optional_op(__FILE__, __func__, __LINE__, __VA_ARGS__)

/* Define "wrapper" versions of function calls, to allow compile-time values to
* be passed in by language wrapper or library layer on top of HDF5.
Expand Down
Loading

0 comments on commit 4ee1977

Please sign in to comment.