summaryrefslogtreecommitdiffstats
path: root/src/H5Tpublic.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5Tpublic.h')
-rw-r--r--src/H5Tpublic.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/H5Tpublic.h b/src/H5Tpublic.h
new file mode 100644
index 0000000..48fdfce
--- /dev/null
+++ b/src/H5Tpublic.h
@@ -0,0 +1,60 @@
+/****************************************************************************
+ * NCSA HDF *
+ * Software Development Group *
+ * National Center for Supercomputing Applications *
+ * University of Illinois at Urbana-Champaign *
+ * 605 E. Springfield, Champaign IL 61820 *
+ * *
+ * For conditions of distribution and use, see the accompanying *
+ * hdf/COPYING file. *
+ * *
+ ****************************************************************************/
+
+/* $Id$ */
+
+/*
+ * This file contains public declarations for the H5T module.
+ */
+
+#ifndef _H5Tpublic_H
+#define _H5Tpublic_H
+
+/* Public headers needed by this file */
+#include <H5public.h>
+#include <H5Apublic.h>
+
+/* Define atomic datatypes */
+#define H5T_CHAR MAKE_ATOM(H5_DATATYPE,0)
+#define H5T_INT MAKE_ATOM(H5_DATATYPE,1)
+#define H5T_FLOAT MAKE_ATOM(H5_DATATYPE,2)
+#define H5T_DATE MAKE_ATOM(H5_DATATYPE,3)
+#define H5T_TIME MAKE_ATOM(H5_DATATYPE,4)
+#define H5T_SPTR MAKE_ATOM(H5_DATATYPE,5)
+#define H5T_PPTR MAKE_ATOM(H5_DATATYPE,6)
+#define H5T_COMPOUND MAKE_ATOM(H5_DATATYPE,7)
+
+typedef struct {
+ hatom_t base; /* Basic datatype */
+ uint8 len; /* Length of base-type, in bytes */
+ uint8 arch; /* Architecture of the base-type */
+ } h5_atomic_type_t;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Functions in H5T.c */
+uint32 H5Tget_num_fields(hatom_t tid);
+hbool_t H5Tis_field_atomic(hatom_t tid,uintn fidx);
+hbool_t H5Tis_atomic(hatom_t tid);
+herr_t H5Tset_type(hatom_t tid,hatom_t base,uint8 len,uint8 arch);
+uintn H5Tsize(hatom_t tid, uint8 len, uint8 arch, hbool_t mem_flag);
+herr_t H5Tadd_field (hatom_t tid, const char *name, hatom_t base, uint8 len,
+ uint8 arch, hatom_t space);
+herr_t H5Tget_fields(hatom_t tid, hatom_t *field_list);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif