diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/H5D.c | 52 | ||||
-rw-r--r-- | src/H5Dpublic.h | 1 | ||||
-rw-r--r-- | src/H5config.h.in | 12 | ||||
-rw-r--r-- | src/Makefile.in | 6 |
4 files changed, 68 insertions, 3 deletions
@@ -317,7 +317,7 @@ H5Dclose(hid_t dataset_id) * * Return: Success: ID for a copy of the data space. The data * space should be released by calling - * H5Dclose(). + * H5Pclose(). * * Failure: FAIL * @@ -357,6 +357,56 @@ H5Dget_space (hid_t dataset_id) FUNC_LEAVE (ret_value); } + + +/*------------------------------------------------------------------------- + * Function: H5Dget_type + * + * Purpose: Returns a copy of the file data type for a dataset. + * + * Return: Success: ID for a copy of the data type. The data + * type should be released by calling + * H5Tclose(). + * + * Failure: FAIL + * + * Programmer: Robb Matzke + * Tuesday, February 3, 1998 + * + * Modifications: + * + *------------------------------------------------------------------------- + */ +hid_t +H5Dget_type (hid_t dataset_id) +{ + + H5D_t *dataset = NULL; + H5T_t *copied_type = NULL; + hid_t ret_value = FAIL; + + FUNC_ENTER (H5Dget_type, FAIL); + + /* Check args */ + if (H5_DATASET!=H5A_group (dataset_id) || + NULL==(dataset=H5A_object (dataset_id))) { + HRETURN_ERROR (H5E_ARGS, H5E_BADTYPE, FAIL, "not a dataset"); + } + + /* Copy the data type */ + if (NULL==(copied_type=H5T_copy (dataset->type))) { + HRETURN_ERROR (H5E_DATASET, H5E_CANTINIT, FAIL, + "unable to copy the data type"); + } + + /* Create an atom */ + if ((ret_value=H5A_register (H5_DATATYPE, copied_type))<0) { + HRETURN_ERROR (H5E_ATOM, H5E_CANTREGISTER, FAIL, + "unable to register data type"); + } + + FUNC_LEAVE (ret_value); +} /*------------------------------------------------------------------------- * Function: H5Dread diff --git a/src/H5Dpublic.h b/src/H5Dpublic.h index 62a63d5..6067acc 100644 --- a/src/H5Dpublic.h +++ b/src/H5Dpublic.h @@ -40,6 +40,7 @@ hid_t H5Dcreate (hid_t file_id, const char *name, hid_t type_id, hid_t H5Dopen (hid_t file_id, const char *name); herr_t H5Dclose (hid_t dataset_id); hid_t H5Dget_space (hid_t dataset_id); +hid_t H5Dget_type (hid_t dataset_id); herr_t H5Dread (hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t xfer_parms_id, void *buf/*out*/); herr_t H5Dwrite (hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, diff --git a/src/H5config.h.in b/src/H5config.h.in index d047ebf..be212ba 100644 --- a/src/H5config.h.in +++ b/src/H5config.h.in @@ -25,6 +25,12 @@ /* Define if the compiler understands the __FUNCTION__ keyword. */ #undef HAVE_FUNCTION +/* Define if we have parallel support THIS WILL GO AWAY SHORTLY!!! */ +#undef PHDF5 + +/* Define if we have parallel support */ +#undef HAVE_PARALLEL + /* The number of bytes in a double. */ #undef SIZEOF_DOUBLE @@ -42,3 +48,9 @@ /* The number of bytes in a short. */ #undef SIZEOF_SHORT + +/* Define if you have the mpi library (-lmpi). */ +#undef HAVE_LIBMPI + +/* Define if you have the mpio library (-lmpio). */ +#undef HAVE_LIBMPIO diff --git a/src/Makefile.in b/src/Makefile.in index 912a901..66af462 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -14,12 +14,14 @@ LIB=libhdf5.a PROGS=debug # Source and object files for the library (lexicographically)... +PARALLEL_SRC=H5Fmpio.c + LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5C.c H5D.c H5E.c H5F.c H5Farray.c H5Fcore.c \ H5Ffamily.c H5Fistore.c H5Flow.c H5Fsec2.c H5Fsplit.c H5Fstdio.c \ H5G.c H5Gent.c H5Gnode.c H5Gstab.c H5H.c H5M.c H5MF.c H5MM.c H5O.c \ H5Ocont.c H5Odtype.c H5Oefl.c H5Olayout.c H5Oname.c H5Onull.c \ - H5Osdspace.c H5Ostab.c H5P.c H5Psimp.c H5T.c H5Tconv.c H5Tinit.c \ - H5V.c + H5Osdspace.c H5Ostab.c H5P.c H5Psimp.c H5T.c H5Tconv.c H5Tinit.c \ + H5V.c @PARALLEL_SRC@ LIB_OBJ=$(LIB_SRC:.c=.o) |