diff options
Diffstat (limited to 'src/DumpVar.c')
-rw-r--r-- | src/DumpVar.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/DumpVar.c b/src/DumpVar.c index 6ae7532..56a50ef 100644 --- a/src/DumpVar.c +++ b/src/DumpVar.c @@ -14,6 +14,7 @@ #include <string.h> #include "cctk.h" +#include "util_Table.h" #include "cctk_Parameters.h" #include "CactusPUGH/PUGH/src/include/pugh.h" #include "CactusBase/IOUtil/src/ioGH.h" @@ -305,7 +306,7 @@ static int WriteGA (const cGH *GH, const ioRequest *request, const char *name, hid_t file) { const ioGH *ioUtilGH; - int i, myproc, mapping, hdatasize, retval; + int i, myproc, mapping, hdatasize, table, retval; void *hdata; char *fullname; #ifdef CCTK_MPI @@ -319,16 +320,31 @@ static int WriteGA (const cGH *GH, const ioRequest *request, const char *name, /* define the hyperslab mapping */ + table = -1; + if (request->with_ghostzones) + { + table = Util_TableCreateFromString ("with_ghostzones = 1"); + if (table < 0) + { + CCTK_WARN (1, "Failed to hyperslab parameter create table from string"); + } + } + mapping = Hyperslab_DefineLocalMappingByIndex (GH, request->vindex, request->hdim, request->direction, request->origin, request->extent, request->downsample, - -1, NULL, + table, NULL, request->hsize_chunk, request->hsize, request->hoffset); + if (table >= 0) + { + Util_TableDestroy (table); + } + if (mapping < 0) { fullname = CCTK_FullName (request->vindex); |