diff options
author | Jerome Soumagne <jsoumagne@hdfgroup.org> | 2016-03-08 07:39:56 (GMT) |
---|---|---|
committer | Jerome Soumagne <jsoumagne@hdfgroup.org> | 2016-11-29 23:42:32 (GMT) |
commit | f534dde4dc8a9fb76a5cb1ef9eddc297c084da52 (patch) | |
tree | 8aaf603100ef2c236ac9f266f1486e6f2812cbcb | |
parent | 95de10ee2b35d99dcdcde49be4fe4bec6a3688dc (diff) | |
download | hdf5-f534dde4dc8a9fb76a5cb1ef9eddc297c084da52.zip hdf5-f534dde4dc8a9fb76a5cb1ef9eddc297c084da52.tar.gz hdf5-f534dde4dc8a9fb76a5cb1ef9eddc297c084da52.tar.bz2 |
Update gentest tools after reference changes
-rw-r--r-- | tools/h5copy/h5copygentest.c | 32 | ||||
-rw-r--r-- | tools/h5diff/h5diffgentest.c | 88 | ||||
-rw-r--r-- | tools/h5dump/h5dumpgentest.c | 134 | ||||
-rw-r--r-- | tools/misc/h5perf_gentest.c | 25 |
4 files changed, 174 insertions, 105 deletions
diff --git a/tools/h5copy/h5copygentest.c b/tools/h5copy/h5copygentest.c index 49204f5..3c00e6d 100644 --- a/tools/h5copy/h5copygentest.c +++ b/tools/h5copy/h5copygentest.c @@ -420,7 +420,7 @@ static herr_t gen_obj_ref(hid_t loc_id) /*--------------------- * create obj references to the previously created objects. * Passing -1 as reference is an object.*/ - hobj_ref_t or_data[2]; /* write buffer */ + href_t or_data[2] = {NULL, NULL}; /* write buffer */ herr_t ret = SUCCEED; /*-------------- @@ -463,15 +463,15 @@ static herr_t gen_obj_ref(hid_t loc_id) } H5Gclose(oid); - status = H5Rcreate (&or_data[0], loc_id, OBJ_REF_DS, H5R_OBJECT, (hid_t)-1); - if (status < 0) + or_data[0] = H5Rcreate_object (loc_id, OBJ_REF_DS); + if (!or_data[0]) { fprintf(stderr, "Error: %s %d> H5Rcreate failed.\n", FUNC, __LINE__); ret = FAIL; goto out; } - status = H5Rcreate (&or_data[1], loc_id, OBJ_REF_GRP, H5R_OBJECT, (hid_t)-1); - if (status < 0) + or_data[1] = H5Rcreate_object (loc_id, OBJ_REF_GRP); + if (!or_data[1]) { fprintf(stderr, "Error: %s %d> H5Rcreate failed.\n", FUNC, __LINE__); ret = FAIL; @@ -507,6 +507,10 @@ out: H5Dclose(oid); if(sid > 0) H5Sclose(sid); + if (or_data[0]) + H5Rdestroy(or_data[0]); + if (or_data[1]) + H5Rdestroy(or_data[1]); return ret; } @@ -527,7 +531,7 @@ static herr_t gen_region_ref(hid_t loc_id) char data[3][16] = {"The quick brown", "fox jumps over ", "the 5 lazy dogs"}; hsize_t dims2[2] = {3,16}; hsize_t coords[4][2] = { {0,1}, {2,11}, {1,0}, {2,4} }; - hdset_reg_ref_t rr_data[2]; + href_t rr_data[2] = {NULL, NULL}; hsize_t start[2] = {0,0}; hsize_t stride[2] = {2,11}; hsize_t count[2] = {2,2}; @@ -570,8 +574,8 @@ static herr_t gen_region_ref(hid_t loc_id) } /* create region reference from elements space */ - status = H5Rcreate (&rr_data[0], loc_id, REG_REF_DS2, H5R_DATASET_REGION, sid); - if (status < 0) + rr_data[0] = H5Rcreate_region (loc_id, REG_REF_DS2, sid); + if (!rr_data[0]) { fprintf(stderr, "Error: %s %d> H5Rcreate failed.\n", FUNC, __LINE__); ret = FAIL; @@ -588,8 +592,8 @@ static herr_t gen_region_ref(hid_t loc_id) } /* create region reference from hyperslab space */ - status = H5Rcreate (&rr_data[1], loc_id, REG_REF_DS2, H5R_DATASET_REGION, sid); - if (status < 0) + rr_data[1] = H5Rcreate_region (loc_id, REG_REF_DS2, sid); + if (!rr_data[1]) { fprintf(stderr, "Error: %s %d> H5Rcreate failed.\n", FUNC, __LINE__); ret = FAIL; @@ -608,7 +612,7 @@ static herr_t gen_region_ref(hid_t loc_id) } /* create region reference dataset */ - oid1 = H5Dcreate2 (loc_id, REG_REF_DS1, H5T_STD_REF_DSETREG, sid, H5P_DEFAULT,H5P_DEFAULT,H5P_DEFAULT); + oid1 = H5Dcreate2 (loc_id, REG_REF_DS1, H5T_STD_REF_REG, sid, H5P_DEFAULT,H5P_DEFAULT,H5P_DEFAULT); if (oid1 < 0) { fprintf(stderr, "Error: %s %d> H5Dcreate2 failed.\n", FUNC, __LINE__); @@ -617,7 +621,7 @@ static herr_t gen_region_ref(hid_t loc_id) } /* write data as region references */ - status = H5Dwrite (oid1, H5T_STD_REF_DSETREG, H5S_ALL, H5S_ALL, H5P_DEFAULT, rr_data); + status = H5Dwrite (oid1, H5T_STD_REF_REG, H5S_ALL, H5S_ALL, H5P_DEFAULT, rr_data); if (status < 0) { fprintf(stderr, "Error: %s %d> H5Dwrite failed.\n", FUNC, __LINE__); @@ -632,6 +636,10 @@ out: H5Dclose (oid2); if (sid > 0) H5Sclose (sid); + if (rr_data[0]) + H5Rdestroy(rr_data[0]); + if (rr_data[1]) + H5Rdestroy(rr_data[1]); return ret; } diff --git a/tools/h5diff/h5diffgentest.c b/tools/h5diff/h5diffgentest.c index 8f92660..e48389a 100644 --- a/tools/h5diff/h5diffgentest.c +++ b/tools/h5diff/h5diffgentest.c @@ -3631,13 +3631,13 @@ static int test_comp_vlen_strings(const char *fname1, const char *grp_name, int char *str_vlen_array_again[VLEN_STR_ARRY_DIM]; /* vlen string array */ char str_fixlen[FIXLEN_STR_SIZE]; /* fixed len string */ int int_data1; - hobj_ref_t objref1; /* reference */ + href_t objref1; /* reference */ char str_fixlen_repeat[FIXLEN_STR_SIZE]; /* fixed len string */ - hobj_ref_t objref2; /* reference */ + href_t objref2; /* reference */ char *str_vlen; /* vlen string */ int int_data2; char *str_vlen_repeat; /* vlen string */ - hobj_ref_t objref3; /* reference */ + href_t objref3; /* reference */ int int_data3; } comp9_t; @@ -4142,9 +4142,9 @@ static int test_comp_vlen_strings(const char *fname1, const char *grp_name, int did_comp = H5Dcreate2(gid, "Compound_dset9", tid9_comp, sid_comp, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); /* obj references */ - status=H5Rcreate(&(comp9_buf.objref1),gid,"Compound_dset2",H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&(comp9_buf.objref2),gid,"Compound_dset3",H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&(comp9_buf.objref3),gid,"Compound_dset4",H5R_OBJECT,(hid_t)-1); + comp9_buf.objref1 = H5Rcreate_object(gid, "Compound_dset2"); + comp9_buf.objref2 = H5Rcreate_object(gid, "Compound_dset3"); + comp9_buf.objref3 = H5Rcreate_object(gid, "Compound_dset4"); status = H5Dwrite(did_comp, tid9_comp, H5S_ALL, H5S_ALL, H5P_DEFAULT, &comp9_buf); if (status < 0) @@ -4156,6 +4156,9 @@ static int test_comp_vlen_strings(const char *fname1, const char *grp_name, int H5Dclose(did_comp); + H5Rdestroy(comp9_buf.objref1); + H5Rdestroy(comp9_buf.objref2); + H5Rdestroy(comp9_buf.objref3); did_comp=0; out: @@ -5262,7 +5265,7 @@ void write_attr_in(hid_t loc_id, char *buf1a[2]; /* VL string */ char buf2[2]= {1,2}; /* bitfield, opaque */ s_t buf3[2]= {{1,2.0F},{3,4.0F}}; /* compound */ - hobj_ref_t buf4[2]; /* reference */ + href_t buf4[2]; /* reference */ e_t buf45[2]= {RED,RED}; /* enum */ hvl_t buf5[2]; /* vlen */ hsize_t dimarray[1]={3}; /* array dimension */ @@ -5276,7 +5279,7 @@ void write_attr_in(hid_t loc_id, char *buf12a[3][2]; /* VL string */ char buf22[3][2]= {{1,2},{3,4},{5,6}}; /* bitfield, opaque */ s_t buf32[6]= {{1,2.0F},{3,4.0F},{5,6.0F},{7,8.0F},{9,10.0F},{11,12.0F}}; /* compound */ - hobj_ref_t buf42[3][2]; /* reference */ + href_t buf42[3][2]; /* reference */ e_t buf452[3][2]; /* enum */ hvl_t buf52[3][2]; /* vlen */ int buf62[6][3]= {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15},{16,17,18}}; /* array */ @@ -5292,7 +5295,7 @@ void write_attr_in(hid_t loc_id, char *buf13a[4][3][2]; /* VL string */ char buf23[4][3][2]; /* bitfield, opaque */ s_t buf33[4][3][2]; /* compound */ - hobj_ref_t buf43[4][3][2]; /* reference */ + href_t buf43[4][3][2]; /* reference */ e_t buf453[4][3][2]; /* enum */ hvl_t buf53[4][3][2]; /* vlen */ int buf63[24][3]; /* array */ @@ -5431,9 +5434,11 @@ void write_attr_in(hid_t loc_id, /* Create references to dataset */ if (dset_name) { - status=H5Rcreate(&buf4[0],fid,dset_name,H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&buf4[1],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf4[0] = H5Rcreate_object(fid, dset_name); + buf4[1] = H5Rcreate_object(fid, dset_name); write_attr(loc_id,1,dims,"reference",H5T_STD_REF_OBJ,buf4); + H5Rdestroy(buf4[0]); + H5Rdestroy(buf4[1]); } /*------------------------------------------------------------------------- @@ -5713,10 +5718,15 @@ void write_attr_in(hid_t loc_id, { for (i = 0; i < 3; i++) { for (j = 0; j < 2; j++) { - status=H5Rcreate(&buf42[i][j],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf42[i][j] = H5Rcreate_object(fid, dset_name); } } write_attr(loc_id,2,dims2,"reference2D",H5T_STD_REF_OBJ,buf42); + for (i = 0; i < 3; i++) { + for (j = 0; j < 2; j++) { + H5Rdestroy(buf42[i][j]); + } + } } /*------------------------------------------------------------------------- @@ -6109,10 +6119,16 @@ void write_attr_in(hid_t loc_id, for (i = 0; i < 4; i++) { for (j = 0; j < 3; j++) { for (k = 0; k < 2; k++) - status=H5Rcreate(&buf43[i][j][k],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf43[i][j][k] = H5Rcreate_object(fid, dset_name); } } write_attr(loc_id,3,dims3,"reference3D",H5T_STD_REF_OBJ,buf43); + for (i = 0; i < 4; i++) { + for (j = 0; j < 3; j++) { + for (k = 0; k < 2; k++) + H5Rdestroy(buf43[i][j][k]); + } + } } /*------------------------------------------------------------------------- @@ -6319,7 +6335,7 @@ void write_dset_in(hid_t loc_id, char *buf1a[2]; /* VL string */ char buf2[2]= {1,2}; /* bitfield, opaque */ s_t buf3[2]= {{1,2.0F},{3,4.0F}}; /* compound */ - hobj_ref_t buf4[2]; /* reference */ + href_t buf4[2]; /* reference */ e_t buf45[2]= {RED,GREEN}; /* enum */ hvl_t buf5[2]; /* vlen */ hsize_t dimarray[1]={3}; /* array dimension */ @@ -6333,7 +6349,7 @@ void write_dset_in(hid_t loc_id, char *buf12a[3][2]; /* VL string */ char buf22[3][2]= {{1,2},{3,4},{5,6}}; /* bitfield, opaque */ s_t buf32[6]= {{1,2.0F},{3,4.0F},{5,6.0F},{7,8.0F},{9,10.0F},{11,12.0F}}; /* compound */ - hobj_ref_t buf42[3][2]; /* reference */ + href_t buf42[3][2]; /* reference */ hvl_t buf52[3][2]; /* vlen */ int buf62[6][3]= {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15},{16,17,18}}; /* array */ int buf72[3][2]= {{1,2},{3,4},{5,6}}; /* integer */ @@ -6348,7 +6364,7 @@ void write_dset_in(hid_t loc_id, char *buf13a[4][3][2]; /* VL string */ char buf23[4][3][2]; /* bitfield, opaque */ s_t buf33[4][3][2]; /* compound */ - hobj_ref_t buf43[4][3][2]; /* reference */ + href_t buf43[4][3][2]; /* reference */ hvl_t buf53[4][3][2]; /* vlen */ int buf63[24][3]; /* array */ int buf73[4][3][2]; /* integer */ @@ -6475,9 +6491,11 @@ void write_dset_in(hid_t loc_id, /* Create references to dataset */ if (dset_name) { - status=H5Rcreate(&buf4[0],fid,dset_name,H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&buf4[1],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf4[0] = H5Rcreate_object(fid, dset_name); + buf4[1] = H5Rcreate_object(fid, dset_name); write_dset(loc_id,1,dims,"reference",H5T_STD_REF_OBJ,buf4); + H5Rdestroy(buf4[0]); + H5Rdestroy(buf4[1]); } /*------------------------------------------------------------------------- @@ -6690,10 +6708,15 @@ void write_dset_in(hid_t loc_id, { for (i = 0; i < 3; i++) { for (j = 0; j < 2; j++) { - status=H5Rcreate(&buf42[i][j],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf42[i][j] = H5Rcreate_object(fid, dset_name); } } write_dset(loc_id,2,dims2,"reference2D",H5T_STD_REF_OBJ,buf42); + for (i = 0; i < 3; i++) { + for (j = 0; j < 2; j++) { + H5Rdestroy(buf42[i][j]); + } + } } /*------------------------------------------------------------------------- @@ -6901,10 +6924,16 @@ void write_dset_in(hid_t loc_id, for (i = 0; i < 4; i++) { for (j = 0; j < 3; j++) { for (k = 0; k < 2; k++) - status=H5Rcreate(&buf43[i][j][k],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf43[i][j][k] = H5Rcreate_object(fid, dset_name); } } write_dset(loc_id,3,dims3,"reference3D",H5T_STD_REF_OBJ,buf43); + for (i = 0; i < 4; i++) { + for (j = 0; j < 3; j++) { + for (k = 0; k < 2; k++) + H5Rdestroy(buf43[i][j][k]); + } + } } /*------------------------------------------------------------------------- @@ -7019,7 +7048,7 @@ void gen_datareg(hid_t fid, hid_t did2; /* dataset ID */ hid_t sid2; /* dataspace ID */ hsize_t dims2[] = {2}; /* 2 references */ - hdset_reg_ref_t *rbuf; /* buffer for write the references */ + href_t *rbuf; /* buffer for write the references */ hsize_t start[10]; /* starting location of hyperslab */ hsize_t count[10]; /* element count of hyperslab */ hsize_t coord[5][2]; /* coordinates for point selection */ @@ -7027,7 +7056,7 @@ void gen_datareg(hid_t fid, int i; /* allocate the buffer for write the references */ - rbuf = (hdset_reg_ref_t *)HDcalloc((size_t)2, sizeof(hdset_reg_ref_t)); + rbuf = (href_t *)HDcalloc((size_t)2, sizeof(href_t)); /* allocate the buffer for write the data dataset */ buf = (int *)HDmalloc(10 * 10 * sizeof(int)); @@ -7043,7 +7072,7 @@ void gen_datareg(hid_t fid, /* create the reference dataset */ sid2 = H5Screate_simple(1, dims2, NULL); - did2 = H5Dcreate2(fid, "refreg", H5T_STD_REF_DSETREG, sid2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + did2 = H5Dcreate2(fid, "refreg", H5T_STD_REF_REG, sid2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); /* create the references */ /* select hyperslab for first reference */ @@ -7060,8 +7089,8 @@ void gen_datareg(hid_t fid, H5Sget_select_npoints(sid1); /* store first dataset region */ - status = H5Rcreate(&rbuf[0], fid, "dsetref", H5R_DATASET_REGION, sid1); - HDassert(status >= 0); + rbuf[0] = H5Rcreate_region(fid, "dsetref", sid1); + HDassert(rbuf[0]); /* select sequence of five points for second reference */ coord[0][0]=6; coord[0][1]=9; @@ -7079,10 +7108,11 @@ void gen_datareg(hid_t fid, H5Sget_select_npoints(sid1); /* store second dataset region */ - H5Rcreate(&rbuf[1],fid,"dsetref",H5R_DATASET_REGION,sid1); + rbuf[1] = H5Rcreate_region(fid, "dsetref", sid1); + HDassert(rbuf[1]); /* write */ - status = H5Dwrite(did2,H5T_STD_REF_DSETREG,H5S_ALL,H5S_ALL,H5P_DEFAULT,rbuf); + status = H5Dwrite(did2, H5T_STD_REF_REG, H5S_ALL, H5S_ALL, H5P_DEFAULT, rbuf); HDassert(status >= 0); /* close, free memory buffers */ @@ -7094,6 +7124,10 @@ void gen_datareg(hid_t fid, HDassert(status >= 0); status = H5Sclose(sid2); HDassert(status >= 0); + status = H5Rdestroy(rbuf[0]); + HDassert(status >= 0); + status = H5Rdestroy(rbuf[1]); + HDassert(status >= 0); HDfree(rbuf); HDfree(buf); diff --git a/tools/h5dump/h5dumpgentest.c b/tools/h5dump/h5dumpgentest.c index 250f96f..bea0a36 100644 --- a/tools/h5dump/h5dumpgentest.c +++ b/tools/h5dump/h5dumpgentest.c @@ -2018,17 +2018,13 @@ static void gent_objref(void) hid_t sid1; /* Dataspace ID */ hid_t tid1; /* Datatype ID */ hsize_t dims1[] = {SPACE1_DIM1}; - hobj_ref_t *wbuf, /* buffer to write to disk */ - *rbuf, /* buffer read from disk */ - *tbuf; /* temp. buffer read from disk */ + href_t *wbuf; /* buffer to write to disk */ uint32_t *tu32; /* Temporary pointer to uint32 data */ int i; /* counting variables */ const char *write_comment = "Foo!"; /* Comments for group */ /* Allocate write & read buffers */ - wbuf = (hobj_ref_t*) HDmalloc(sizeof(hobj_ref_t) * SPACE1_DIM1); - rbuf = (hobj_ref_t*) HDmalloc(sizeof(hobj_ref_t) * SPACE1_DIM1); - tbuf = (hobj_ref_t*) HDmalloc(sizeof(hobj_ref_t) * SPACE1_DIM1); + wbuf = (href_t*) HDmalloc(sizeof(href_t) * SPACE1_DIM1); /* Create file */ fid1 = H5Fcreate(FILE16, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); @@ -2083,16 +2079,16 @@ static void gent_objref(void) dataset = H5Dcreate2(fid1, "Dataset3", H5T_STD_REF_OBJ, sid1, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); /* Create reference to dataset */ - H5Rcreate(&wbuf[0], fid1, "/Group1/Dataset1", H5R_OBJECT, (hid_t)-1); + wbuf[0] = H5Rcreate_object(fid1, "/Group1/Dataset1"); /* Create reference to dataset */ - H5Rcreate(&wbuf[1], fid1, "/Group1/Dataset2", H5R_OBJECT, (hid_t)-1); + wbuf[1] = H5Rcreate_object(fid1, "/Group1/Dataset2"); /* Create reference to group */ - H5Rcreate(&wbuf[2], fid1, "/Group1", H5R_OBJECT, (hid_t)-1); + wbuf[2] = H5Rcreate_object(fid1, "/Group1"); /* Create reference to named datatype */ - H5Rcreate(&wbuf[3], fid1, "/Group1/Datatype1", H5R_OBJECT, (hid_t)-1); + wbuf[3] = H5Rcreate_object(fid1, "/Group1/Datatype1"); /* Write selection to disk */ H5Dwrite(dataset, H5T_STD_REF_OBJ, H5S_ALL, H5S_ALL, H5P_DEFAULT, wbuf); @@ -2103,13 +2099,15 @@ static void gent_objref(void) /* Close Dataset */ H5Dclose(dataset); + /* Destroy references */ + for (i = 0; i < SPACE1_DIM1; i++) + H5Rdestroy(wbuf[i]); + /* Close file */ H5Fclose(fid1); /* Free memory buffers */ HDfree(wbuf); - HDfree(rbuf); - HDfree(tbuf); } static void gent_datareg(void) @@ -2128,18 +2126,14 @@ static void gent_datareg(void) hsize_t count[SPACE2_RANK]; /* Element count of hyperslab */ hsize_t block[SPACE2_RANK]; /* Block size of hyperslab */ hsize_t coord1[POINT1_NPOINTS][SPACE2_RANK]; /* Coordinates for point selection */ - hdset_reg_ref_t *wbuf, /* buffer to write to disk */ - *rbuf; /* buffer read from disk */ - uint8_t *dwbuf, /* Buffer for writing numeric data to disk */ - *drbuf; /* Buffer for reading numeric data from disk */ + href_t *wbuf; /* buffer to write to disk */ + uint8_t *dwbuf; /* Buffer for writing numeric data to disk */ uint8_t *tu8; /* Temporary pointer to uint8 data */ int i; /* counting variables */ /* Allocate write & read buffers */ - wbuf = (hdset_reg_ref_t*) HDcalloc(sizeof(hdset_reg_ref_t), SPACE1_DIM1); - rbuf = (hdset_reg_ref_t*) HDmalloc(sizeof(hdset_reg_ref_t)*SPACE1_DIM1); + wbuf = (href_t*) HDcalloc(sizeof(href_t), SPACE1_DIM1); dwbuf = (uint8_t*) HDmalloc(sizeof(uint8_t)*SPACE2_DIM1*SPACE2_DIM2); - drbuf = (uint8_t*) HDcalloc(sizeof(uint8_t),SPACE2_DIM1*SPACE2_DIM2); /* Create file */ fid1 = H5Fcreate(FILE17, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); @@ -2163,7 +2157,7 @@ static void gent_datareg(void) sid1 = H5Screate_simple(SPACE1_RANK, dims1, NULL); /* Create a dataset */ - dset1 = H5Dcreate2(fid1, "Dataset1", H5T_STD_REF_DSETREG, sid1, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + dset1 = H5Dcreate2(fid1, "Dataset1", H5T_STD_REF_REG, sid1, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); /* Create references */ @@ -2177,7 +2171,7 @@ static void gent_datareg(void) H5Sget_select_npoints(sid2); /* Store first dataset region */ - H5Rcreate(&wbuf[0], fid1, "/Dataset2", H5R_DATASET_REGION, sid2); + wbuf[0] = H5Rcreate_region(fid1, "/Dataset2", sid2); /* Select sequence of ten points for second reference */ coord1[0][0]=6; coord1[0][1]=9; @@ -2195,10 +2189,10 @@ static void gent_datareg(void) H5Sget_select_npoints(sid2); /* Store second dataset region */ - H5Rcreate(&wbuf[1],fid1,"/Dataset2",H5R_DATASET_REGION,sid2); + wbuf[1] = H5Rcreate_region(fid1, "/Dataset2", sid2); /* Write selection to disk */ - H5Dwrite(dset1,H5T_STD_REF_DSETREG,H5S_ALL,H5S_ALL,H5P_DEFAULT,wbuf); + H5Dwrite(dset1, H5T_STD_REF_REG, H5S_ALL, H5S_ALL, H5P_DEFAULT, wbuf); /* Close disk dataspace */ H5Sclose(sid1); @@ -2209,14 +2203,16 @@ static void gent_datareg(void) /* Close uint8 dataset dataspace */ H5Sclose(sid2); + /* Destroy references */ + for (i = 0; i < SPACE1_DIM1; i++) + H5Rdestroy(wbuf[i]); + /* Close file */ H5Fclose(fid1); /* Free memory buffers */ HDfree(wbuf); - HDfree(rbuf); HDfree(dwbuf); - HDfree(drbuf); } static void gent_attrreg(void) @@ -2237,18 +2233,14 @@ static void gent_attrreg(void) hsize_t count[SPACE2_RANK]; /* Element count of hyperslab */ hsize_t block[SPACE2_RANK]; /* Block size of hyperslab */ hsize_t coord1[POINT1_NPOINTS][SPACE2_RANK]; /* Coordinates for point selection */ - hdset_reg_ref_t *wbuf; /* buffer to write to disk */ - hdset_reg_ref_t *rbuf; /* buffer read from disk */ + href_t *wbuf; /* buffer to write to disk */ uint8_t *dwbuf; /* Buffer for writing numeric data to disk */ - uint8_t *drbuf; /* Buffer for reading numeric data from disk */ uint8_t *tu8; /* Temporary pointer to uint8 data */ int i; /* counting variables */ /* Allocate write & read buffers */ - wbuf = (hdset_reg_ref_t*) HDcalloc(sizeof(hdset_reg_ref_t), SPACE1_DIM1); - rbuf = (hdset_reg_ref_t*) HDmalloc(sizeof(hdset_reg_ref_t)*SPACE1_DIM1); + wbuf = (href_t*) HDcalloc(sizeof(href_t), SPACE1_DIM1); dwbuf = (uint8_t*) HDmalloc(sizeof(uint8_t)*SPACE2_DIM1*SPACE2_DIM2); - drbuf = (uint8_t*) HDcalloc(sizeof(uint8_t),SPACE2_DIM1*SPACE2_DIM2); /* Create file */ fid1 = H5Fcreate(FILE64, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); @@ -2289,7 +2281,7 @@ static void gent_attrreg(void) H5Sget_select_npoints(sid2); /* Store first dataset region */ - H5Rcreate(&wbuf[0], fid1, "/Dataset2", H5R_DATASET_REGION, sid2); + wbuf[0] = H5Rcreate_region(fid1, "/Dataset2", sid2); /* Select sequence of ten points for second reference */ coord1[0][0]=6; coord1[0][1]=9; @@ -2307,15 +2299,15 @@ static void gent_attrreg(void) H5Sget_select_npoints(sid2); /* Store second dataset region */ - H5Rcreate(&wbuf[1],fid1,"/Dataset2",H5R_DATASET_REGION,sid2); + wbuf[1] = H5Rcreate_region(fid1, "/Dataset2", sid2); /* Create dataspace for the attribute */ sid3 = H5Screate_simple(SPACE1_RANK, dims1, NULL); /* Create the attribute and write the region references to it. */ - attr1 = H5Acreate2 (dset1, "Attribute1", H5T_STD_REF_DSETREG, sid3, H5P_DEFAULT, + attr1 = H5Acreate2 (dset1, "Attribute1", H5T_STD_REF_REG, sid3, H5P_DEFAULT, H5P_DEFAULT); - H5Awrite (attr1, H5T_STD_REF_DSETREG, wbuf); + H5Awrite (attr1, H5T_STD_REF_REG, wbuf); /* Close attribute dataspace */ H5Sclose(sid3); @@ -2329,14 +2321,16 @@ static void gent_attrreg(void) /* Close uint8 dataset dataspace */ H5Sclose(sid2); + /* Destroy references */ + for (i = 0; i < SPACE1_DIM1; i++) + H5Rdestroy(wbuf[i]); + /* Close file */ H5Fclose(fid1); /* Free memory buffers */ HDfree(wbuf); - HDfree(rbuf); HDfree(dwbuf); - HDfree(drbuf); } /*taken from Elena's compound test file*/ @@ -2925,7 +2919,7 @@ static void gent_array1_big(void) hsize_t stride[SPACE1_RANK]; /* Stride of hyperslab */ hsize_t count[SPACE1_RANK]; /* Element count of hyperslab */ hsize_t block[SPACE1_RANK]; /* Block size of hyperslab */ - hdset_reg_ref_t *wbuf; /* buffer to write to disk */ + href_t *wbuf; /* buffer to write to disk */ start[0] = 0; stride[0] = 1; @@ -2933,7 +2927,7 @@ static void gent_array1_big(void) block[0] = 1; /* Allocate write & read buffers */ - wbuf = (hdset_reg_ref_t*) HDcalloc(sizeof(hdset_reg_ref_t), SPACE1_DIM1); + wbuf = (href_t*) HDcalloc(sizeof(href_t), SPACE1_DIM1); wdata = (int *)HDmalloc(sizeof(int) * (size_t)(SPACE_ARRAY1BIG_DIM * ARRAY1BIG_DIM)); /* Allocate and initialize array data to write */ @@ -2967,7 +2961,7 @@ static void gent_array1_big(void) sid2 = H5Screate_simple(SPACE1_RANK, dims2, NULL); /* Create a dataset */ - dset2 = H5Dcreate2(fid1, "Dataset2", H5T_STD_REF_DSETREG, sid2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + dset2 = H5Dcreate2(fid1, "Dataset2", H5T_STD_REF_REG, sid2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); /* Create references */ H5Sselect_hyperslab(sid1, H5S_SELECT_SET, start, stride, count, block); @@ -2975,10 +2969,10 @@ static void gent_array1_big(void) H5Sget_select_npoints(sid1); /* Create Dataset1 region */ - H5Rcreate(&wbuf[0], fid1, "/Dataset1", H5R_DATASET_REGION, sid1); + wbuf[0] = H5Rcreate_region(fid1, "/Dataset1", sid1); /* Write selection to disk */ - H5Dwrite(dset2,H5T_STD_REF_DSETREG,H5S_ALL,H5S_ALL,H5P_DEFAULT,wbuf); + H5Dwrite(dset2, H5T_STD_REF_REG, H5S_ALL, H5S_ALL, H5P_DEFAULT, wbuf); /* Close Dataset */ ret = H5Dclose(dataset); @@ -2987,6 +2981,8 @@ static void gent_array1_big(void) HDassert(ret >= 0); ret = H5Sclose(sid1); HDassert(ret >= 0); + ret = H5Rdestroy(wbuf[0]); + HDassert(ret >= 0); ret = H5Fclose(fid1); HDassert(ret >= 0); @@ -3873,7 +3869,7 @@ static void write_attr_in(hid_t loc_id, char buf1[2][3]= {"ab","de"}; /* string */ char buf2[2]= {1,2}; /* bitfield, opaque */ s_t buf3[2]= {{1,2},{3,4}}; /* compound */ - hobj_ref_t buf4[2]; /* reference */ + href_t buf4[2]; /* reference */ hvl_t buf5[2]; /* vlen */ hsize_t dimarray[1]={3}; /* array dimension */ int buf6[2][3]= {{1,2,3},{4,5,6}}; /* array */ @@ -3885,7 +3881,7 @@ static void write_attr_in(hid_t loc_id, char buf12[6][3]= {"ab","cd","ef","gh","ij","kl"}; /* string */ char buf22[3][2]= {{1,2},{3,4},{5,6}}; /* bitfield, opaque */ s_t buf32[6]= {{1,2},{3,4},{5,6},{7,8},{9,10},{11,12}}; /* compound */ - hobj_ref_t buf42[3][2]; /* reference */ + href_t buf42[3][2]; /* reference */ hvl_t buf52[3][2]; /* vlen */ int buf62[6][3]= {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15},{16,17,18}}; /* array */ int buf72[3][2]= {{1,2},{3,4},{5,6}}; /* integer */ @@ -3898,7 +3894,7 @@ static void write_attr_in(hid_t loc_id, "IJ","KL","MN","PQ","RS","TU","VW","XZ"}; /* string */ char buf23[4][3][2]; /* bitfield, opaque */ s_t buf33[4][3][2]; /* compound */ - hobj_ref_t buf43[4][3][2]; /* reference */ + href_t buf43[4][3][2]; /* reference */ hvl_t buf53[4][3][2]; /* vlen */ int buf63[24][3]; /* array */ int buf73[4][3][2]; /* integer */ @@ -3953,9 +3949,11 @@ static void write_attr_in(hid_t loc_id, /* Create references to dataset */ if(dset_name) { - status=H5Rcreate(&buf4[0],fid,dset_name,H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&buf4[1],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf4[0] = H5Rcreate_object(fid, dset_name); + buf4[1] = H5Rcreate_object(fid, dset_name); write_attr(loc_id,1,dims,"reference",H5T_STD_REF_OBJ,buf4); + H5Rdestroy(buf4[0]); + H5Rdestroy(buf4[1]); } /*------------------------------------------------------------------------- @@ -4060,10 +4058,15 @@ static void write_attr_in(hid_t loc_id, { for(i = 0; i < 3; i++) { for(j = 0; j < 2; j++) { - status=H5Rcreate(&buf42[i][j],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf42[i][j] = H5Rcreate_object(fid, dset_name); } } write_attr(loc_id,2,dims2,"reference2D",H5T_STD_REF_OBJ,buf42); + for(i = 0; i < 3; i++) { + for(j = 0; j < 2; j++) { + H5Rdestroy(buf42[i][j]); + } + } } /*------------------------------------------------------------------------- @@ -4191,10 +4194,16 @@ static void write_attr_in(hid_t loc_id, for(i = 0; i < 4; i++) { for(j = 0; j < 3; j++) { for(k = 0; k < 2; k++) - status=H5Rcreate(&buf43[i][j][k],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf43[i][j][k] = H5Rcreate_object(fid, dset_name); } } write_attr(loc_id,3,dims3,"reference3D",H5T_STD_REF_OBJ,buf43); + for(i = 0; i < 4; i++) { + for(j = 0; j < 3; j++) { + for(k = 0; k < 2; k++) + H5Rdestroy(buf43[i][j][k]); + } + } } /*------------------------------------------------------------------------- @@ -4315,7 +4324,7 @@ static void write_dset_in(hid_t loc_id, char buf1[2][3]= {"ab","de"}; /* string */ char buf2[2]= {1,2}; /* bitfield, opaque */ s_t buf3[2]= {{1,2},{3,4}}; /* compound */ - hobj_ref_t buf4[2]; /* reference */ + href_t buf4[2]; /* reference */ hvl_t buf5[2]; /* vlen */ hsize_t dimarray[1]={3}; /* array dimension */ int buf6[2][3]= {{1,2,3},{4,5,6}}; /* array */ @@ -4327,7 +4336,7 @@ static void write_dset_in(hid_t loc_id, char buf12[6][3]= {"ab","cd","ef","gh","ij","kl"}; /* string */ char buf22[3][2]= {{1,2},{3,4},{5,6}}; /* bitfield, opaque */ s_t buf32[6]= {{1,2},{3,4},{5,6},{7,8},{9,10},{11,12}}; /* compound */ - hobj_ref_t buf42[3][2]; /* reference */ + href_t buf42[3][2]; /* reference */ hvl_t buf52[3][2]; /* vlen */ int buf62[6][3]= {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15},{16,17,18}}; /* array */ int buf72[3][2]= {{1,2},{3,4},{5,6}}; /* integer */ @@ -4340,7 +4349,7 @@ static void write_dset_in(hid_t loc_id, "IJ","KL","MN","PQ","RS","TU","VW","XZ"}; /* string */ char buf23[4][3][2]; /* bitfield, opaque */ s_t buf33[4][3][2]; /* compound */ - hobj_ref_t buf43[4][3][2]; /* reference */ + href_t buf43[4][3][2]; /* reference */ hvl_t buf53[4][3][2]; /* vlen */ int buf63[24][3]; /* array */ int buf73[4][3][2]; /* integer */ @@ -4395,9 +4404,11 @@ static void write_dset_in(hid_t loc_id, /* Create references to dataset */ if(dset_name) { - status=H5Rcreate(&buf4[0],fid,dset_name,H5R_OBJECT,(hid_t)-1); - status=H5Rcreate(&buf4[1],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf4[0] = H5Rcreate_object(fid, dset_name); + buf4[1] = H5Rcreate_object(fid, dset_name); write_dset(loc_id,1,dims,"reference",H5T_STD_REF_OBJ,buf4); + H5Rdestroy(buf4[0]); + H5Rdestroy(buf4[1]); } /*------------------------------------------------------------------------- @@ -4502,10 +4513,15 @@ static void write_dset_in(hid_t loc_id, { for(i = 0; i < 3; i++) { for(j = 0; j < 2; j++) { - status=H5Rcreate(&buf42[i][j],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf42[i][j] = H5Rcreate_object(fid, dset_name); } } write_dset(loc_id,2,dims2,"reference2D",H5T_STD_REF_OBJ,buf42); + for(i = 0; i < 3; i++) { + for(j = 0; j < 2; j++) { + H5Rdestroy(buf42[i][j]); + } + } } /*------------------------------------------------------------------------- @@ -4645,10 +4661,16 @@ static void write_dset_in(hid_t loc_id, for(i = 0; i < 4; i++) { for(j = 0; j < 3; j++) { for(k = 0; k < 2; k++) - status=H5Rcreate(&buf43[i][j][k],fid,dset_name,H5R_OBJECT,(hid_t)-1); + buf43[i][j][k] = H5Rcreate_object(fid, dset_name); } } write_dset(loc_id,3,dims3,"reference3D",H5T_STD_REF_OBJ,buf43); + for(i = 0; i < 4; i++) { + for(j = 0; j < 3; j++) { + for(k = 0; k < 2; k++) + H5Rdestroy(buf43[i][j][k]); + } + } } /*------------------------------------------------------------------------- diff --git a/tools/misc/h5perf_gentest.c b/tools/misc/h5perf_gentest.c index 50c18c1..c720964 100644 --- a/tools/misc/h5perf_gentest.c +++ b/tools/misc/h5perf_gentest.c @@ -138,8 +138,8 @@ herr_t create_perf_test_file(const char *fname, int ngrps, int ndsets, hvl_t *buf_vlen_i=NULL; char (*buf_str)[FIXED_LEN]; char **buf_vlen_s=NULL; - hobj_ref_t buf_ref[2]; - hdset_reg_ref_t buf_reg_ref[2]; + href_t buf_ref[2]; + href_t buf_reg_ref[2]; size_t offset, len; herr_t status; char *names[NTYPES] = { "int", "ulong", "float", "double", "fixed string", @@ -395,8 +395,8 @@ herr_t create_perf_test_file(const char *fname, int ngrps, int ndsets, H5Dclose(did); /* 11 add object refs */ - H5Rcreate(&buf_ref[0],gid1, ".", H5R_OBJECT, (hid_t)-1); - H5Rcreate(&buf_ref[1],gid1, tmp_name3, H5R_OBJECT, (hid_t)-1); + buf_ref[0] = H5Rcreate_object(gid1, "."); + buf_ref[1] = H5Rcreate_object(gid1, tmp_name3); sprintf(name, "%05d obj refs", j); did = H5Dcreate (gid1, name, H5T_STD_REF_OBJ, sid_2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); H5Dwrite (did, H5T_STD_REF_OBJ, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf_ref); @@ -405,15 +405,15 @@ herr_t create_perf_test_file(const char *fname, int ngrps, int ndsets, /* 12 add region refs */ H5Sselect_elements (sid_2d, H5S_SELECT_SET, 4, coords[0]); - H5Rcreate(&buf_reg_ref[0],gid1, tmp_name1, H5R_DATASET_REGION, sid_2d); + buf_reg_ref[0] = H5Rcreate_region(gid1, tmp_name1, sid_2d); H5Sselect_none(sid_2d); count = dims[0]/2+1; H5Sselect_hyperslab (sid_1d, H5S_SELECT_SET, &start, &stride, &count,NULL); - H5Rcreate(&buf_reg_ref[1],gid1, tmp_name2, H5R_DATASET_REGION, sid_1d); + buf_reg_ref[1] = H5Rcreate_region(gid1, tmp_name2, sid_1d); H5Sselect_none(sid_1d); sprintf(name, "%05d region refs", j); - did = H5Dcreate (gid1, name, H5T_STD_REF_DSETREG, sid_2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); - H5Dwrite (did, H5T_STD_REF_DSETREG, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf_reg_ref); + did = H5Dcreate (gid1, name, H5T_STD_REF_REG, sid_2, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + H5Dwrite (did, H5T_STD_REF_REG, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf_reg_ref); if (!j) add_attrs(did, j); H5Dclose(did); } @@ -433,6 +433,10 @@ herr_t create_perf_test_file(const char *fname, int ngrps, int ndsets, H5Sclose (sid_large); H5Sclose (sid_null); H5Sclose (sid_scalar); + H5Rdestroy (buf_ref[0]); + H5Rdestroy (buf_ref[1]); + H5Rdestroy (buf_reg_ref[0]); + H5Rdestroy (buf_reg_ref[1]); H5Fclose (fid); for (i=0; i<dims[0]; i++) { @@ -485,7 +489,7 @@ int add_attrs(hid_t oid, int idx) int i0, i1, i2, j, nattrs=0; hid_t aid, tid, tid1, sid; hvl_t i_vlen[4]; - hobj_ref_t ref; + href_t ref; zipcode_t cmp_data[4]; unsigned int i = 0xffffffff; long long l = -2147483647; @@ -533,7 +537,7 @@ int add_attrs(hid_t oid, int idx) /* 4 single point */ sid = H5Screate_simple (1, dims1, NULL); - H5Rcreate(&ref, oid, ".", H5R_OBJECT, (hid_t)-1); + ref = H5Rcreate_object(oid, "."); sprintf(name, "%05d single float", idx); nattrs += add_attr(oid, name, H5T_NATIVE_FLOAT, sid, &f); sprintf(name, "%05d single double", idx); @@ -541,6 +545,7 @@ int add_attrs(hid_t oid, int idx) sprintf(name, "%05d single obj_ref", idx); nattrs += add_attr(oid, name, H5T_STD_REF_OBJ, sid, &ref); H5Sclose(sid); + H5Rdestroy(ref); /* 7 fixed length 1D array */ sid = H5Screate_simple (1, dims1, NULL); |