summaryrefslogtreecommitdiffstats
path: root/src/H5T.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2005-06-20 18:11:57 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2005-06-20 18:11:57 (GMT)
commit1f35ebc88b1db785c4eb63f89c5e8a660280358d (patch)
treeb6160242ff2408f596212b958d073c00f4997613 /src/H5T.c
parentdc4c767d6dd0e69366f6046cfd5031b9c0196b56 (diff)
downloadhdf5-1f35ebc88b1db785c4eb63f89c5e8a660280358d.zip
hdf5-1f35ebc88b1db785c4eb63f89c5e8a660280358d.tar.gz
hdf5-1f35ebc88b1db785c4eb63f89c5e8a660280358d.tar.bz2
[svn-r10958] Purpose:
New feature Description: Add group creation & access property lists, dataset access property lists and named datatype creation & access property lists. Currently have <foo>_extend() API names, which will need to be changed for the final release. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (heping)
Diffstat (limited to 'src/H5T.c')
-rw-r--r--src/H5T.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/H5T.c b/src/H5T.c
index d4dd9f3..d5b8cc8 100644
--- a/src/H5T.c
+++ b/src/H5T.c
@@ -699,6 +699,7 @@ H5T_init_interface(void)
hsize_t dim[1]={1}; /* Dimension info for array datatype */
herr_t status;
unsigned copied_dtype=1; /* Flag to indicate whether datatype was copied or allocated (for error cleanup) */
+ H5P_genclass_t *crt_pclass; /* Property list class for datatype creation properties */
herr_t ret_value=SUCCEED;
FUNC_ENTER_NOAPI_NOINIT(H5T_init_interface);
@@ -1258,6 +1259,24 @@ H5T_init_interface(void)
if (status<0)
HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "unable to register conversion function(s)");
+ /* ========== Datatype Creation Property Class Initialization ============*/
+ assert(H5P_CLS_DATATYPE_CREATE_g!=-1);
+
+ /* Get the pointer to group creation class */
+ if(NULL == (crt_pclass = H5I_object(H5P_CLS_DATATYPE_CREATE_g)))
+ HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "not a property list class")
+
+ /* Register datatype creation property class properties here. See similar
+ * code in H5D_init_interface(), etc. for example.
+ */
+
+ /* Only register the default property list if it hasn't been created yet */
+ if(H5P_LST_DATATYPE_CREATE_g==(-1)) {
+ /* Register the default datatype creation property list */
+ if((H5P_LST_DATATYPE_CREATE_g = H5P_create_id(crt_pclass))<0)
+ HGOTO_ERROR(H5E_PLIST, H5E_CANTREGISTER, FAIL, "can't insert property into class")
+ } /* end if */
+
done:
/* General cleanup */
if (compound!=NULL)