aboutsummaryrefslogtreecommitdiff
path: root/src/NewHyperslab.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/NewHyperslab.c')
-rw-r--r--src/NewHyperslab.c19
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
{