summaryrefslogtreecommitdiffstats
path: root/src/H5ACprivate.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-10-12 02:21:17 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-10-12 02:21:17 (GMT)
commit8e8aa93d98d3786fa2347f44a7f17c8238714616 (patch)
treefba0d5159eafbc3afb7be8678c4dfaadc8075134 /src/H5ACprivate.h
parent513cba5d86852d759026bf76ab1a1b78bc7f8e5c (diff)
downloadhdf5-8e8aa93d98d3786fa2347f44a7f17c8238714616.zip
hdf5-8e8aa93d98d3786fa2347f44a7f17c8238714616.tar.gz
hdf5-8e8aa93d98d3786fa2347f44a7f17c8238714616.tar.bz2
[svn-r9402] Purpose:
Port development branch changes to release branch. Description: Initial step in bringing changes to support new metadata cache from the development branch to the release branch. Solution: This checkin just aligns the H5AC* API changes, as well as bringing back various minor code cleanups, etc. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Linux 2.4 (verbena) w/FORTRAN
Diffstat (limited to 'src/H5ACprivate.h')
-rw-r--r--src/H5ACprivate.h23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/H5ACprivate.h b/src/H5ACprivate.h
index dbe4ec9..7491f18 100644
--- a/src/H5ACprivate.h
+++ b/src/H5ACprivate.h
@@ -29,7 +29,7 @@
#ifndef _H5ACprivate_H
#define _H5ACprivate_H
-#include "H5ACpublic.h" /*public prototypes */
+#include "H5ACpublic.h" /*public prototypes */
/* Pivate headers needed by this header */
#include "H5private.h" /* Generic Functions */
@@ -101,6 +101,20 @@ typedef struct H5AC_info_t {
} H5AC_info_t;
typedef H5AC_info_t *H5AC_info_ptr_t; /* Typedef for free lists */
+/*===----------------------------------------------------------------------===
+ * Protect Types
+ *===----------------------------------------------------------------------===
+ *
+ * These are for the wrapper functions to H5AC_protect. They specify what
+ * type of operation you're planning on doing to the metadata. The
+ * Flexible Parallel HDF5 locking can then act accordingly.
+ */
+
+typedef enum H5AC_protect_t {
+ H5AC_WRITE, /* Protect object for writing */
+ H5AC_READ /* Protect object for reading */
+} H5AC_protect_t;
+
/* Typedef for metadata cache (defined in H5AC.c) */
typedef struct H5AC_t H5AC_t;
@@ -135,12 +149,11 @@ H5_DLL herr_t H5AC_init(void);
H5_DLL herr_t H5AC_create(H5F_t *f, int size_hint);
H5_DLL herr_t H5AC_set(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type, haddr_t addr,
void *thing);
-H5_DLL void *H5AC_protect(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type, haddr_t addr,
- const void *udata1, void *udata2);
+H5_DLL void *H5AC_protect(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type,
+ haddr_t addr, const void *udata1, void *udata2,
+ H5AC_protect_t rw);
H5_DLL herr_t H5AC_unprotect(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type, haddr_t addr,
void *thing, hbool_t deleted);
-H5_DLL void *H5AC_find(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type,
- haddr_t addr, const void *udata1, void *udata2);
H5_DLL herr_t H5AC_flush(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type, haddr_t addr,
unsigned flags);
H5_DLL herr_t H5AC_rename(H5F_t *f, hid_t dxpl_id, const H5AC_class_t *type,