From a6874ecb52e744abb7a8b20a4a19994c1e07b8c0 Mon Sep 17 00:00:00 2001 From: tradke Date: Thu, 23 Nov 2000 21:56:57 +0000 Subject: This file will provide several predefined datatype conversion routines. For now it is just one: CCTK_VARIABLE_REAL -> CCTK_VARIABLE_REAL4. git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGH/PUGHSlab/trunk@40 10716dce-81a3-4424-a2c8-48026a0d3035 --- src/DatatypeConversion.c | 72 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/DatatypeConversion.c diff --git a/src/DatatypeConversion.c b/src/DatatypeConversion.c new file mode 100644 index 0000000..fc0ce67 --- /dev/null +++ b/src/DatatypeConversion.c @@ -0,0 +1,72 @@ + /*@@ + @file DatatypeConversion.c + @date Thursday Nov 23 2000 + @author Thomas Radke + @desc + Predefined datatype conversion routines for hyperslab extraction. + @enddesc + @version $Id$ + @@*/ + +#include + +#include "cctk.h" +#include "NewPUGHSlab.h" + + +/* the rcs ID and its dummy function to use it */ +static char *rcsid="$ID: $"; +CCTK_FILEVERSION(CactusPUGH_PUGHSlab_DatatypeConversion_c) + + +/* local function prototypes */ +static void PUGHSlab_REAL_to_REAL4 (void *_hdata, + void *_vdata, + unsigned int nelems); + + + /*@@ + @routine PUGH_Startup + @date Wed Feb 3 23:14:38 1999 + @author Tom Goodale + @desc + The startup registration routine for PUGH. + @enddesc + @calls + @calledby + @history + + @endhistory + +@@*/ +PUGHSlab_conversion_fn PUGHSlab_GetDatatypeConversionFn (int vtype, int htype) +{ + PUGHSlab_conversion_fn retval; + + + if (vtype == CCTK_VARIABLE_REAL && htype == CCTK_VARIABLE_REAL4) + { + retval = PUGHSlab_REAL_to_REAL4; + } + else + { + retval = NULL; + } + + return (retval); +} + + +static void PUGHSlab_REAL_to_REAL4 (void *_hdata, + void *_vdata, + unsigned int nelems) +{ + CCTK_REAL *vdata = (CCTK_REAL *) _vdata; + CCTK_REAL4 *hdata = (CCTK_REAL4 *) _hdata; + + + while (nelems--) + { + *hdata++ = (CCTK_REAL4) *vdata++; + } +} -- cgit v1.2.3