/* * This example writes data to the HDF5 file. * Data conversion is performed during write operation. */ #include "hdf5.h" #define DIM0 40 #define DIM1 60 #define H5FILE_NAME "SDS%d.h5" int main (void) { hid_t file, dataset; /* handles */ hid_t dataspace; hid_t plist_id; int i, j, dset_data[DIM0][DIM1]; hsize_t family_size = 1000; hsize_t dims[2] = {DIM0,DIM1}; herr_t status; plist_id = H5Pcreate(H5P_FILE_ACCESS); status = H5Pset_fapl_family(plist_id, family_size, H5P_DEFAULT); file = H5Fcreate(H5FILE_NAME, H5F_ACC_TRUNC, H5P_DEFAULT, plist_id); dataspace = H5Screate_simple(2, dims, NULL); dataset = H5Dcreate (file, "family-dataset", H5T_NATIVE_INT, dataspace, H5P_DEFAULT); for (i = 0; i < DIM0; i++) for (j = 0; j < DIM1; j++) dset_data[i][j] = i * 6 + j + 1; status = H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset_data); status = H5Dclose(dataset); status = H5Sclose(dataspace); status = H5Pclose (plist_id); status = H5Fclose(file); }