diff options
author | tradke <tradke@7842ec3a-9562-4be5-9c5b-06ba18f2b668> | 2001-06-12 22:39:17 +0000 |
---|---|---|
committer | tradke <tradke@7842ec3a-9562-4be5-9c5b-06ba18f2b668> | 2001-06-12 22:39:17 +0000 |
commit | bb8a2a2e3aacbcf0d2bf515c3db180c763ff3690 (patch) | |
tree | bc11b5555638a1160d2b4aa548a652261d144610 /src/DumpUtils.c | |
parent | 55fbce955242ab0381d3ccee78f6b35e569c1ae3 (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.c | 66 |
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); +} |