diff options
Diffstat (limited to 'src/ioGH.h')
-rw-r--r-- | src/ioGH.h | 51 |
1 files changed, 39 insertions, 12 deletions
@@ -78,9 +78,6 @@ typedef struct IOGH { char *outpfx_3D; #endif - /* for 2D output */ - int *sp2xyz; /* slice point for 2D planes */ - /* for 3D output */ int ioproc; /* the IO processor each proc belongs to */ int nioprocs; /* total number of IO processors */ @@ -95,6 +92,7 @@ typedef struct IOGH { /* for data file reader */ char *do_inVars; /* flags indicating to read in variable [i] */ + /* database holding all registered listeners for file advertising */ pNamedData *listener_DB; @@ -105,33 +103,62 @@ enum {CP_INITIAL_DATA, CP_EVOLUTION_DATA, CP_RECOVER_PARAMETERS, CP_RECOVER_DATA, FILEREADER_DATA}; /* prototypes of routines that are exported by IOUtil to other IO thorns */ -extern void ParseVarsForOutput (const char *var_list, char do_output []); -extern void IOUtil_PrepareFilename (cGH *GH, const char *basename, char *fname, - int called_from, int ioproc,int file_unchunked); -extern int IOUtil_RegisterRecover (const char *name, + +extern int IOUtil_1DLines (cGH *GH, + int dimension, + int **index, + CCTK_REAL **coord, + int **spxyz); + +extern int IOUtil_2DPlanes (cGH *GH, + int dimension, + int *index, + CCTK_REAL *coord, + int *spxyz); + +extern void IOUtil_ParseVarsForOutput (const char *var_list, + char do_output []); + +extern void IOUtil_PrepareFilename (cGH *GH, + const char *basename, + char *fname, + int called_from, + int ioproc, + int file_unchunked); + +extern int IOUtil_RegisterRecover (const char *name, int (*func) (cGH *, const char *, int)); + extern void IOUtil_RecoverVarsFromDatafiles (cGH *GH, const char *in_files, const char *in_vars); -extern int IOUtil_RecoverParameters (int (*recoverFn) (cGH *GH, - const char *basename, - int called_from), - const char *fileExtension, - const char *fileType); + +extern int IOUtil_RecoverParameters (int (*recoverFn) (cGH *GH, + const char *basename, + int called_from), + const char *fileExtension, + const char *fileType); + extern char *IOUtil_GetAllParameters (cGH *GH); + extern void IOUtil_SetAllParameters (char *parameters); /*** routines to handle with file advertising ***/ + /* register a new listener with its own callbacks for file advertising */ + extern int IOUtil_RegisterAdvertisedFileListener (cGH *GH, const char *listener, const IOUtil_AdvertisedFileListenerCallbacks_t *callbacks); + /* advertise a file */ + extern int IOUtil_AdvertiseFile (cGH *GH, const char *filename, const IOUtil_AdvertisedFileDesc_t *desc); /*** routine to output timing information ***/ + extern void IOUtil_PrintTimings (const char *description, int ntimers, int timers[/* ntimers */], |