diff options
Diffstat (limited to 'src/NewHyperslab.c')
-rw-r--r-- | src/NewHyperslab.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/NewHyperslab.c b/src/NewHyperslab.c index c92ac13..37aeeb0 100644 --- a/src/NewHyperslab.c +++ b/src/NewHyperslab.c @@ -17,6 +17,7 @@ #include "CactusPUGH/PUGH/src/include/pugh.h" #include "NewPUGHSlab.h" +#include "PUGHSlabi.h" /* the rcs ID and its dummy function to use it */ static const char *rcsid = "$Header$"; @@ -119,7 +120,7 @@ static const char *checkParameters (const cGH *GH, int vindex, int vtimelvl, local hyperslab data and output it in parallel. @enddesc - @calls PUGHSlab_GetDatatypeConversionFn + @calls PUGHSlabi_GetDatatypeConversionFn @var GH @vdesc Pointer to CCTK grid hierarchy @@ -148,7 +149,7 @@ static const char *checkParameters (const cGH *GH, int vindex, int vtimelvl, @endvar @var conversion_fn @vdesc pointer to a user-supplied data conversion function - @vtype PUGHSlab_conversion_fn + @vtype t_hslabConversionFn @vio in @endvar @var global_startpoint @@ -206,7 +207,7 @@ int NewHyperslab_GetLocalHyperslab (const cGH *GH, int vtimelvl, int hdim, int htype, - PUGHSlab_conversion_fn conversion_fn, + t_hslabConversionFn conversion_fn, const int global_startpoint[/* vdim */], const int directions[/* hdim*vdim */], const int extents[/* hdim */], @@ -277,7 +278,7 @@ int NewHyperslab_GetLocalHyperslab (const cGH *GH, { if (conversion_fn == NULL) { - conversion_fn = PUGHSlab_GetDatatypeConversionFn (vinfo.vartype, htype); + conversion_fn = PUGHSlabi_GetDatatypeConversionFn (vinfo.vartype, htype); if (! conversion_fn) { CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING, @@ -589,7 +590,7 @@ int NewHyperslab_GetLocalHyperslab (const cGH *GH, { if (conversion_fn) { - conversion_fn (typed_hdata, typed_vdata, dim0_points); + conversion_fn (typed_vdata, typed_hdata, dim0_points, 1, 1); } else { @@ -600,11 +601,9 @@ int NewHyperslab_GetLocalHyperslab (const cGH *GH, { if (conversion_fn) { - for (i = 0; i < dim0_hsize; i += hdata_size) - { - (*conversion_fn) (typed_hdata + i, typed_vdata, 1); - typed_vdata += downsample[0]; - } + conversion_fn (typed_vdata, typed_hdata, dim0_points, + downsample[0], 1); + typed_vdata += downsample[0] * dim0_points; } else { |