diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-10-12 02:21:17 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-10-12 02:21:17 (GMT) |
commit | 8e8aa93d98d3786fa2347f44a7f17c8238714616 (patch) | |
tree | fba0d5159eafbc3afb7be8678c4dfaadc8075134 /src/H5ACprivate.h | |
parent | 513cba5d86852d759026bf76ab1a1b78bc7f8e5c (diff) | |
download | hdf5-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.h | 23 |
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, |