diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2007-01-06 20:50:45 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2007-01-06 20:50:45 (GMT) |
commit | d6c27d4b4d82d794e860770f5903e84511596d19 (patch) | |
tree | ffd0b2a1dac38b61048dc8636c453125a5e365a4 /src/H5HFpkg.h | |
parent | 869ed6e043dfc20b6b6dfda6728c3442ef0409be (diff) | |
download | hdf5-d6c27d4b4d82d794e860770f5903e84511596d19.zip hdf5-d6c27d4b4d82d794e860770f5903e84511596d19.tar.gz hdf5-d6c27d4b4d82d794e860770f5903e84511596d19.tar.bz2 |
[svn-r13115] Description:
Allow a heap to be marked for deletion while it is still open and
being accessed. (Blocks further opens though).
Tested on:
FreeBSD/32 6.1 (duty)
Diffstat (limited to 'src/H5HFpkg.h')
-rw-r--r-- | src/H5HFpkg.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/H5HFpkg.h b/src/H5HFpkg.h index 676a63e..6e6951d 100644 --- a/src/H5HFpkg.h +++ b/src/H5HFpkg.h @@ -71,8 +71,8 @@ ) /* Flags for status byte */ -#define H5HF_HDR_FLAGS_HUGE_ID_WRAPPED 0x01 -#define H5HF_HDR_FLAGS_CHECKSUM_DBLOCKS 0x02 +#define H5HF_HDR_FLAGS_HUGE_ID_WRAPPED 0x01 /* "huge" object IDs have wrapped */ +#define H5HF_HDR_FLAGS_CHECKSUM_DBLOCKS 0x02 /* checksum direct blocks */ /* Size of the fractal heap header on disk */ /* (this is the fixed-len portion, the variable-len I/O filter information @@ -348,6 +348,7 @@ typedef struct H5HF_hdr_t { H5AC_protect_t mode; /* Access mode for heap */ H5F_t *f; /* Pointer to file for heap */ size_t file_rc; /* Reference count of files using heap header */ + hbool_t pending_delete; /* Heap is pending deletion */ size_t sizeof_size; /* Size of file sizes */ size_t sizeof_addr; /* Size of file addresses */ struct H5HF_indirect_t *root_iblock; /* Pointer to pinned root indirect block */ @@ -569,6 +570,7 @@ H5_DLL herr_t H5HF_hdr_reverse_iter(H5HF_hdr_t *hdr, hid_t dxpl_id, haddr_t dblock_addr); H5_DLL herr_t H5HF_hdr_reset_iter(H5HF_hdr_t *hdr, hsize_t curr_off); H5_DLL herr_t H5HF_hdr_empty(H5HF_hdr_t *hdr); +H5_DLL herr_t H5HF_hdr_delete(H5HF_hdr_t *hdr, hid_t dxpl_id); /* Indirect block routines */ H5_DLL herr_t H5HF_iblock_incr(H5HF_indirect_t *iblock); |