Another question, hopefully this one garners more responses than the last: In the Fortran API, when an entire array is passed to h5dwrite_f as the data buffer, buf, the purpose of the mem_space_id is to select a certain subset of the data in memory to write to the file, correct?
If I have a regular hyperslab of an in memory array, am I correct in saying that I have two options of writing this to the file: 1) pass the entire array (as buf) to h5dwrite_f along with a mem_space_id pointing to a data space where the appropriate hyperslab has been selected, or 2) exclude the mem_space_id argument and pass a Fortran array subsection containing only the data from the array I wish to have written to the file i.e. are the following two statements equivalent, assuming mem_space_id points to a memory space with the appropriate hyperslab selected CALL h5dwrite_f(dset_id, mem_type_id, buf, dims, hdferr, mem_space_id) vs CALL h5dwrite_f(dset_id, mem_type_id, buf(i1:i2:is,j1:j2:js,...), dims, hdferr) I assume the point of the mem_space_id is to deal with more complicated selections (cherry picking for example) and for c programmers since modern Fortran has a useful array subsection syntax which, to my knowledge, c is lacking. Thanks Izaak Beekman =================================== (301)244-9367 UMD-CP Visiting Graduate Student Aerospace Engineering [email protected] [email protected] _______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
