aboutsummaryrefslogtreecommitdiff
path: root/src/ioStreamedHDF5GH.h
diff options
context:
space:
mode:
authortradke <tradke@0888f3d4-9f52-45d2-93bc-d00801ff5e46>2000-10-12 11:55:36 +0000
committertradke <tradke@0888f3d4-9f52-45d2-93bc-d00801ff5e46>2000-10-12 11:55:36 +0000
commit9ea1696c72e3c1761ffb63875bbc63c924261ade (patch)
treee7e1f3abef598bf5c002ec5228bb217662d67000 /src/ioStreamedHDF5GH.h
parent8297b39029c9314bc4e4691c9965b318c610fb3c (diff)
Added checkpoint/recovery functionality.
Moved a lot of code into IOHDF5Util and inherit from this thorn. Forgot to 'cvs add' these files at my last commit. git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGHIO/IOStreamedHDF5/trunk@45 0888f3d4-9f52-45d2-93bc-d00801ff5e46
Diffstat (limited to 'src/ioStreamedHDF5GH.h')
-rw-r--r--src/ioStreamedHDF5GH.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/ioStreamedHDF5GH.h b/src/ioStreamedHDF5GH.h
new file mode 100644
index 0000000..6994ec2
--- /dev/null
+++ b/src/ioStreamedHDF5GH.h
@@ -0,0 +1,62 @@
+ /*@@
+ @header ioStreamedHDF5GH.h
+ @date Jun 20 2000
+ @author Thomas Radke
+ @desc
+ The GH extensions structure for IOStreamedHDF5.
+ @version $Id$
+ @@*/
+
+#ifndef _IOSTREAMEDHDF5_IOSTREAMEDHDF5GH_H_
+#define _IOSTREAMEDHDF5_IOSTREAMEDHDF5GH_H_
+
+#include "BetaThorns/IOHDF5Util/src/ioHDF5UtilGH.h"
+
+
+/* IOStreamedHDF5 GH extension structure */
+typedef struct
+{
+ /* how often to output */
+ int out_every;
+
+ /* flags indicating output for var [i] */
+ char *do_output;
+ ioHDF5Geo_t *geo_output;
+
+ /* the last iteration output */
+ int *out_last;
+
+ /* sockets to output data and checkpoint files to */
+ int data_socket;
+ int checkpoint_socket;
+
+ /* file access property list used to write checkpoint files */
+ hid_t checkpoint_fapl;
+
+ /* flag indicating whether we want timing info on checkpointing/recovery
+ and corresponding array of Cactus timers */
+ int print_timing_info;
+ int timers[IOHDF5_NUM_TIMERS];
+
+} ioStreamedHDF5GH;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* prototypes of functions to be registered as IOStreamedHDF5's IO method */
+int IOStreamedHDF5_OutputGH (cGH *GH);
+int IOStreamedHDF5_TriggerOutput (cGH *GH, int);
+int IOStreamedHDF5_TimeFor (cGH *GH, int);
+int IOStreamedHDF5_OutputVarAs (cGH *GH, const char *var, const char *alias);
+int IOStreamedHDF5_Recover (cGH *GH, const char *basename, int called_from);
+
+/* other function prototypes */
+void IOStreamedHDF5_Write (cGH *GH, int index, const char *alias);
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif /* _IOSTREAMEDHDF5_IOSTREAMEDHDF5GH_H_ */