summaryrefslogtreecommitdiffstats
path: root/src/H5Sprivate.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-02-06 15:34:01 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-02-06 15:34:01 (GMT)
commitd8cfeadd906c13421c4fe9abe1a5318a956236f6 (patch)
tree1c0c4c1f988ebd2ec44de73411bd8dcc136c6464 /src/H5Sprivate.h
parentaaeecad6564fe93bb8de567220eed453f890acf4 (diff)
downloadhdf5-d8cfeadd906c13421c4fe9abe1a5318a956236f6.zip
hdf5-d8cfeadd906c13421c4fe9abe1a5318a956236f6.tar.gz
hdf5-d8cfeadd906c13421c4fe9abe1a5318a956236f6.tar.bz2
[svn-r8158] Purpose:
Code cleanup/optimization Description: Query property list values once, at the beginning of the I/O routines, instead of querying the property list values multiple (lots!) of times in lower level routines. Solution: Create "property list caches" for internal library queries of the property list values. Platforms tested: IBM p690 (copper) w/parallel & fphdf5 h5committest
Diffstat (limited to 'src/H5Sprivate.h')
-rw-r--r--src/H5Sprivate.h34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h
index a734993..2fcdad7 100644
--- a/src/H5Sprivate.h
+++ b/src/H5Sprivate.h
@@ -128,16 +128,18 @@ typedef struct H5S_conv_t {
/* Read from file to application w/o intermediate scratch buffer */
herr_t (*read)(H5F_t *f, const struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store,
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store,
size_t elmt_size, const H5S_t *file_space,
- const H5S_t *mem_space, hid_t dxpl_id, void *buf/*out*/);
+ const H5S_t *mem_space, const H5D_dxpl_cache_t *dxpl_cache,
+ hid_t dxpl_id, void *buf/*out*/);
/* Write directly from app buffer to file */
herr_t (*write)(H5F_t *f, struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store,
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store,
size_t elmt_size, const H5S_t *file_space,
- const H5S_t *mem_space, hid_t dxpl_id, const void *buf);
+ const H5S_t *mem_space, const H5D_dxpl_cache_t *dxpl_cache,
+ hid_t dxpl_id, const void *buf);
#ifdef H5S_DEBUG
struct {
@@ -191,27 +193,27 @@ H5_DLL herr_t H5S_select_iterate(void *buf, hid_t type_id, const H5S_t *space,
H5_DLL herr_t H5S_select_fill(void *fill, size_t fill_size,
const H5S_t *space, void *buf);
H5_DLL herr_t H5S_select_fscat (H5F_t *f, struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store, size_t elmt_size,
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store, size_t elmt_size,
const H5S_t *file_space, H5S_sel_iter_t *file_iter, hsize_t nelmts,
- hid_t dxpl_id, const void *_buf);
+ const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, const void *_buf);
H5_DLL hsize_t H5S_select_fgath (H5F_t *f, const struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store, size_t elmt_size,
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store, size_t elmt_size,
const H5S_t *file_space, H5S_sel_iter_t *file_iter, hsize_t nelmts,
- hid_t dxpl_id, void *buf);
+ const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, void *buf);
H5_DLL herr_t H5S_select_mscat (const void *_tscat_buf, size_t elmt_size,
const H5S_t *space, H5S_sel_iter_t *iter, hsize_t nelmts,
- hid_t dxpl_id, void *_buf/*out*/);
+ const H5D_dxpl_cache_t *dxpl_cache, void *_buf/*out*/);
H5_DLL hsize_t H5S_select_mgath (const void *_buf, size_t elmt_size,
const H5S_t *space, H5S_sel_iter_t *iter, hsize_t nelmts,
- hid_t dxpl_id, void *_tgath_buf/*out*/);
+ const H5D_dxpl_cache_t *dxpl_cache, void *_tgath_buf/*out*/);
H5_DLL herr_t H5S_select_read(H5F_t *f, const struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store, size_t elmt_size,
- const H5S_t *file_space, const H5S_t *mem_space, hid_t dxpl_id,
- void *buf/*out*/);
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store, size_t elmt_size,
+ const H5S_t *file_space, const H5S_t *mem_space, const H5D_dxpl_cache_t *dxpl_cache,
+ hid_t dxpl_id, void *buf/*out*/);
H5_DLL herr_t H5S_select_write(H5F_t *f, struct H5O_layout_t *layout,
- H5P_genplist_t *dc_plist, const union H5D_storage_t *store, size_t elmt_size,
- const H5S_t *file_space, const H5S_t *mem_space, hid_t dxpl_id,
- const void *buf/*out*/);
+ const H5D_dcpl_cache_t *dcpl_cache, const union H5D_storage_t *store, size_t elmt_size,
+ const H5S_t *file_space, const H5S_t *mem_space, const H5D_dxpl_cache_t *dxpl_cache,
+ hid_t dxpl_id, const void *buf/*out*/);
H5_DLL htri_t H5S_select_valid(const H5S_t *space);
H5_DLL hssize_t H5S_get_select_npoints(const H5S_t *space);
H5_DLL herr_t H5S_get_select_bounds(const H5S_t *space, hssize_t *start, hssize_t *end);