diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2011-07-20 22:25:51 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2011-07-20 22:25:51 (GMT) |
commit | a42f3b9ddaca2f2d566f38bebdd419a3c941669a (patch) | |
tree | 25a72d07ec797cefb5364ea6baf17818f5ffe1a5 /src/H5Fprivate.h | |
parent | 7beed66358ff6c3d664526bc6e7b9d5990238331 (diff) | |
download | hdf5-a42f3b9ddaca2f2d566f38bebdd419a3c941669a.zip hdf5-a42f3b9ddaca2f2d566f38bebdd419a3c941669a.tar.gz hdf5-a42f3b9ddaca2f2d566f38bebdd419a3c941669a.tar.bz2 |
[svn-r21134] Description:
Bring r21133 from trunk to 1.8 branch:
More code cleanups to reduce coupling between packages that use the H5F
internal routines, but really aren't part of the H5F "package".
Tested on:
FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, w/threadsafe, in production mode
Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
Diffstat (limited to 'src/H5Fprivate.h')
-rw-r--r-- | src/H5Fprivate.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/H5Fprivate.h b/src/H5Fprivate.h index 036e141..718af47 100644 --- a/src/H5Fprivate.h +++ b/src/H5Fprivate.h @@ -35,6 +35,7 @@ /* Main file structure */ typedef struct H5F_t H5F_t; +typedef struct H5F_file_t H5F_file_t; /* Block aggregation structure */ typedef struct H5F_blk_aggr_t H5F_blk_aggr_t; @@ -239,6 +240,7 @@ typedef struct H5F_blk_aggr_t H5F_blk_aggr_t; #define H5F_OPEN_NAME(F) ((F)->open_name) #define H5F_ACTUAL_NAME(F) ((F)->actual_name) #define H5F_EXTPATH(F) ((F)->extpath) +#define H5F_SHARED(F) ((F)->shared) #define H5F_PARENT(F) ((F)->parent) #define H5F_SAME_SHARED(F1, F2) ((F1)->shared == (F2)->shared)) #define H5F_FCPL(F) ((F)->shared->fcpl_id) @@ -267,6 +269,7 @@ typedef struct H5F_blk_aggr_t H5F_blk_aggr_t; #define H5F_OPEN_NAME(F) (H5F_get_open_name(F)) #define H5F_ACTUAL_NAME(F) (H5F_get_actual_name(F)) #define H5F_EXTPATH(F) (H5F_get_extpath(F)) +#define H5F_SHARED(F) (H5F_get_shared(F)) #define H5F_PARENT(F) (H5F_get_parent(F)) #define H5F_SAME_SHARED(F1, F2) (H5F_same_shared((F1), (F2))) #define H5F_FCPL(F) (H5F_get_fcpl(F)) @@ -465,6 +468,7 @@ typedef struct H5F_blk_aggr_t H5F_blk_aggr_t; struct H5B_class_t; struct H5RC_t; struct H5O_loc_t; +struct H5HG_heap_t; /* Private functions */ H5_DLL H5F_t *H5F_open(const char *name, unsigned flags, hid_t fcpl_id, @@ -479,6 +483,7 @@ H5_DLL hid_t H5F_get_access_plist(H5F_t *f, hbool_t app_ref); H5_DLL char *H5F_get_open_name(const H5F_t *f); H5_DLL char *H5F_get_actual_name(const H5F_t *f); H5_DLL char *H5F_get_extpath(const H5F_t *f); +H5_DLL H5F_file_t *H5F_get_shared(const H5F_t *f); H5_DLL H5F_t *H5F_get_parent(const H5F_t *f); H5_DLL hbool_t H5F_same_shared(const H5F_t *f1, const H5F_t *f2); H5_DLL hid_t H5F_get_id(H5F_t *file, hbool_t app_ref); @@ -555,6 +560,13 @@ H5_DLL H5F_t *H5F_efc_open(H5F_t *parent, const char *name, unsigned flags, hid_t fcpl_id, hid_t fapl_id, hid_t dxpl_id); H5_DLL herr_t H5F_efc_close(H5F_t *parent, H5F_t *file); +/* Global heap CWFS routines */ +H5_DLL herr_t H5F_cwfs_add(H5F_t *f, struct H5HG_heap_t *heap); +H5_DLL herr_t H5F_cwfs_find_free_heap(H5F_t *f, hid_t dxpl_id, size_t need, haddr_t *addr); +H5_DLL herr_t H5F_cwfs_advance_heap(H5F_t *f, struct H5HG_heap_t *heap, + hbool_t add_heap); +H5_DLL herr_t H5F_cwfs_remove_heap(H5F_file_t *shared, struct H5HG_heap_t *heap); + /* Debugging functions */ H5_DLL herr_t H5F_debug(H5F_t *f, FILE * stream, int indent, int fwidth); |