summaryrefslogtreecommitdiffstats
path: root/src/H5FDgass.h
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>1999-08-31 04:55:00 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>1999-08-31 04:55:00 (GMT)
commit06c8da20b126ed2947a36e48a065e67808f1f00e (patch)
tree3cd146cad057cfdb5bb96b3a8d830a0704ad08b0 /src/H5FDgass.h
parent17c0a1546cfb3b24c6955adbcc77aac5709f726c (diff)
downloadhdf5-06c8da20b126ed2947a36e48a065e67808f1f00e.zip
hdf5-06c8da20b126ed2947a36e48a065e67808f1f00e.tar.gz
hdf5-06c8da20b126ed2947a36e48a065e67808f1f00e.tar.bz2
[svn-r1621] Added GASS driver. Coded by Saurabh Bagchi, bagchi@uiuc.edu.
Minor changes done to test/gass_xxx.c so that they print the test skip message when GASS driver is not available. This change is the implementation of GASS within HDF5-1.3 (HDF5 with Virtual File Layer). The GASS driver gives the facility of accessing HDF files on remote ftp servers. To use the GASS driver, the option --with-gass=<GASS path> shoud be specified with configure. An example of the command line used to test the distribution was: ./configure --disable-shared --without-hdf4 --with-gass=/afs/ncsa/projects/hdf/v5/bagchi/globus/GLB/development/sparc-sun-solaris2.6_nothreads_standard_debug/include,/afs/ncsa/projects/hdf/v5/bagchi/globus/GLB/development/sparc-sun-solaris2.6_nothreads_standard_debug/lib --disable-parallel The user should change the path to point to his local GASS installation. Documentation about the features of GASS and the HDF-GASS design is available separately and till it is put up on the official web site, anyone interested may contact me. Test programs to read, write or append remote files have been provided in the test directory as "gass_read.c", "gass_write.c", "gass_append.c". The test programs have the ftp site to access #define-d at the top of the file which the user can change accordingly. ./src/H5Epublic. Added new error type for file close. ./src/H5F.c Added hooks for the GASS driver. ./src/H5public.h Added header files for GASS & Globus. ./src/Makefile.in Added dependancy on GASS driver in LIB_SRC. ./src/hdf5.h Included header file for GASS driver. ./src/H5FDgass.c [NEW] Routines for the GASS driver. ./src/H5FDgass.h [NEW] Header file for the GASS driver. ./test/Makefile.in Added dependancy on the gass test routines. ./test/gass_read.c File to test remote file reading using GASS. ./test/gass_write.c File to test remote file writing using GASS. ./test/gass_append.c File to test remote file appending using GASS.
Diffstat (limited to 'src/H5FDgass.h')
-rw-r--r--src/H5FDgass.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/H5FDgass.h b/src/H5FDgass.h
new file mode 100644
index 0000000..94cabbd
--- /dev/null
+++ b/src/H5FDgass.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright © 1999 NCSA
+ * All rights reserved.
+ *
+ * Programmer: Saurabh Bagchi <bagchi@uiuc.edu>
+ * Tuesday, August 17, 1999
+ *
+ * Purpose: The public header file for the gass driver.
+ */
+#ifndef H5FDgass_H
+#define H5FDgass_H
+
+#include <H5FDpublic.h>
+#include <H5Ipublic.h>
+#include <H5Eprivate.h>
+
+#include <string.h>
+
+#ifdef HAVE_GASS
+#define H5FD_GASS (H5FD_gass_init())
+#else
+#define H5FD_GASS (-1)
+#endif
+
+#ifdef HAVE_GASS
+/* Define the GASS info object. (Will be added to later as more GASS
+ functionality is sought to be exposed. */
+typedef struct GASS_Info {
+ unsigned long block_size;
+ unsigned long max_length;
+} GASS_Info;
+
+#define GASS_INFO_NULL(v) memset((void *)&v, 0, sizeof(GASS_Info));
+/*
+ GASS_Info zzGassInfo = {0L,0L};
+ #define GASS_INFO_NULL zzGassInfo
+*/
+#endif
+
+/* Function prototypes */
+#ifdef HAVE_GASS
+hid_t H5FD_gass_init(void);
+herr_t H5Pset_fapl_gass(hid_t fapl_id, GASS_Info info);
+herr_t H5Pget_fapl_gass(hid_t fapl_id, GASS_Info *info/*out*/);
+
+#endif
+
+#endif // H5FDgass_H