diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-06-13 19:08:17 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-06-13 19:08:17 (GMT) |
commit | 925f2ba71017081543f904a6a113055432693dab (patch) | |
tree | b0f6e886d3da273d6588c453eab6f18bc8e827e8 /src/H5Dio.c | |
parent | b33344a7bebf46ff905b10c751cf39f7974e88d3 (diff) | |
download | hdf5-925f2ba71017081543f904a6a113055432693dab.zip hdf5-925f2ba71017081543f904a6a113055432693dab.tar.gz hdf5-925f2ba71017081543f904a6a113055432693dab.tar.bz2 |
[svn-r8673] Purpose:
Code optimization
Description:
Revised dataspace selections to use a more "object oriented" mechanism
to set the function pointers for each selection and selection iterator. This
reduces the amount and number of times that dataspace selection info has to
be copied.
Additionally, change hyperslab selection information to be dynamically
allocated instead of an inline struct.
Platforms tested:
Solaris 2.7 (arabica)
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
Diffstat (limited to 'src/H5Dio.c')
-rw-r--r-- | src/H5Dio.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/H5Dio.c b/src/H5Dio.c index 0ab50c2..a7686ed 100644 --- a/src/H5Dio.c +++ b/src/H5Dio.c @@ -920,7 +920,7 @@ H5D_write(H5D_t *dataset, const H5T_t *mem_type, const H5S_t *mem_space, hbool_t full_overwrite; /* Whether we are over-writing all the elements */ /* Get the number of elements in file dataset's dataspace */ - if((file_nelmts=H5S_GET_SIMPLE_EXTENT_NPOINTS(file_space))<0) + if((file_nelmts=H5S_GET_EXTENT_NPOINTS(file_space))<0) HGOTO_ERROR (H5E_DATASET, H5E_BADVALUE, FAIL, "can't retrieve number of elements in file dataset") /* Always allow fill values to be written if the dataset has a VL datatype */ @@ -1085,7 +1085,7 @@ H5D_contig_read(hsize_t nelmts, H5D_t *dataset, assert(((dataset->layout.type==H5D_CONTIGUOUS && H5F_addr_defined(dataset->layout.u.contig.addr)) || (dataset->layout.type==H5D_CHUNKED && H5F_addr_defined(dataset->layout.u.chunk.addr))) || dataset->efl.nused>0 || - H5S_NULL == H5S_GET_SIMPLE_EXTENT_TYPE(file_space) || + H5S_NULL == H5S_GET_EXTENT_TYPE(file_space) || dataset->layout.type==H5D_COMPACT); H5_CHECK_OVERFLOW(nelmts,hsize_t,size_t); status = (sconv->read)(dataset->ent.file, dxpl_cache, dxpl_id, @@ -2341,7 +2341,7 @@ H5D_create_chunk_map(H5D_t *dataset, const H5T_t *mem_type, const H5S_t *file_sp fm->layout = &(dataset->layout); /* Check if the memory space is scalar & make equivalent memory space */ - if((sm_ndims = H5S_GET_SIMPLE_EXTENT_NDIMS(mem_space))<0) + if((sm_ndims = H5S_GET_EXTENT_NDIMS(mem_space))<0) HGOTO_ERROR (H5E_DATASPACE, H5E_CANTGET, FAIL, "unable to get dimension number") if(sm_ndims==0) { hsize_t dims[H5O_LAYOUT_NDIMS]; /* Temporary dimension information */ @@ -3213,4 +3213,3 @@ H5D_chunk_mem_cb(void UNUSED *elem, hid_t UNUSED type_id, hsize_t ndims, hssize_ done: FUNC_LEAVE_NOAPI(ret_value) } /* end H5D_chunk_mem_cb() */ - |