aboutsummaryrefslogtreecommitdiff
path: root/src/DumpUtils.c
diff options
context:
space:
mode:
authortradke <tradke@7842ec3a-9562-4be5-9c5b-06ba18f2b668>2001-06-12 22:39:17 +0000
committertradke <tradke@7842ec3a-9562-4be5-9c5b-06ba18f2b668>2001-06-12 22:39:17 +0000
commitbb8a2a2e3aacbcf0d2bf515c3db180c763ff3690 (patch)
treebc11b5555638a1160d2b4aa548a652261d144610 /src/DumpUtils.c
parent55fbce955242ab0381d3ccee78f6b35e569c1ae3 (diff)
Support I/O for all the fixed-sized CCTK datatypes also.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGHIO/IOHDF5Util/trunk@33 7842ec3a-9562-4be5-9c5b-06ba18f2b668
Diffstat (limited to 'src/DumpUtils.c')
-rw-r--r--src/DumpUtils.c66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/DumpUtils.c b/src/DumpUtils.c
index 50e7c56..1393787 100644
--- a/src/DumpUtils.c
+++ b/src/DumpUtils.c
@@ -457,3 +457,69 @@ void IOHDF5Util_DumpGHExtensions (cGH *GH,
IOHDF5_ERROR (H5Gclose (group));
}
+
+
+/*@@
+ @routine IOHDF5Util_DataType
+ @author Thomas Radke
+ @date Mon 11 June 2001
+ @desc
+ Returns the HDF5 datatype for a given CCTK datatype
+ @enddesc
+
+ @var myGH
+ @vdesc Pointer to IOHDF5Util's GH extensions
+ @vtype ioHDF5UtilGH *
+ @vio in
+ @endvar
+ @var cctk_type
+ @vdesc CCTK datatype
+ @vtype int
+ @vio in
+ @endvar
+
+ @returntype hid_t
+ @returndesc
+ the appropriate HDF5 datatype for success, or -1 otherwise
+ @endreturndesc
+@@*/
+hid_t IOHDF5Util_DataType (const ioHDF5UtilGH *myGH, int cctk_type)
+{
+ hid_t retval;
+
+
+ switch (cctk_type)
+ {
+ case CCTK_VARIABLE_CHAR: retval = IOHDF5_CHAR; break;
+ case CCTK_VARIABLE_INT: retval = IOHDF5_INT; break;
+ case CCTK_VARIABLE_REAL: retval = IOHDF5_REAL; break;
+ case CCTK_VARIABLE_COMPLEX: retval = myGH->IOHDF5_COMPLEX; break;
+#ifdef CCTK_INT2
+ case CCTK_VARIABLE_INT2: retval = IOHDF5_INT2; break;
+#endif
+#ifdef CCTK_INT4
+ case CCTK_VARIABLE_INT4: retval = IOHDF5_INT4; break;
+#endif
+#ifdef CCTK_INT8
+ case CCTK_VARIABLE_INT8: retval = IOHDF5_INT8; break;
+#endif
+#ifdef CCTK_REAL4
+ case CCTK_VARIABLE_REAL4: retval = IOHDF5_REAL4; break;
+ case CCTK_VARIABLE_COMPLEX8: retval = myGH->IOHDF5_COMPLEX8; break;
+#endif
+#ifdef CCTK_REAL8
+ case CCTK_VARIABLE_REAL8: retval = IOHDF5_REAL8; break;
+ case CCTK_VARIABLE_COMPLEX16: retval = myGH->IOHDF5_COMPLEX16; break;
+#endif
+#ifdef CCTK_REAL16
+ case CCTK_VARIABLE_REAL16: retval = IOHDF5_REAL16; break;
+ case CCTK_VARIABLE_COMPLEX32: retval = myGH->IOHDF5_COMPLEX32; break;
+#endif
+
+ default: CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING,
+ "Unsupported CCTK variable datatype %d", cctk_type);
+ retval = -1;
+ }
+
+ return (retval);
+}