diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2020-10-01 14:04:36 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2020-10-01 14:04:36 (GMT) |
commit | f1ba03cea5b82699a984c80bd2deac14fdc8df18 (patch) | |
tree | ebe777c3e0b83f4c4cec9212731da9ebe0a0cfd3 /src/H5HGpkg.h | |
parent | 10343c197906415388f2a4c8d292e21d25cf7381 (diff) | |
download | hdf5-f1ba03cea5b82699a984c80bd2deac14fdc8df18.zip hdf5-f1ba03cea5b82699a984c80bd2deac14fdc8df18.tar.gz hdf5-f1ba03cea5b82699a984c80bd2deac14fdc8df18.tar.bz2 |
Source formatted
Diffstat (limited to 'src/H5HGpkg.h')
-rw-r--r-- | src/H5HGpkg.h | 71 |
1 files changed, 33 insertions, 38 deletions
diff --git a/src/H5HGpkg.h b/src/H5HGpkg.h index 735b4fb..edf32a1 100644 --- a/src/H5HGpkg.h +++ b/src/H5HGpkg.h @@ -30,9 +30,8 @@ #include "H5HGprivate.h" /* Other private headers needed by this file */ -#include "H5ACprivate.h" /* Metadata cache */ -#include "H5FLprivate.h" /* Free lists */ - +#include "H5ACprivate.h" /* Metadata cache */ +#include "H5FLprivate.h" /* Free lists */ /*****************************/ /* Package Private Variables */ @@ -47,7 +46,6 @@ H5FL_SEQ_EXTERN(H5HG_obj_t); /* Declare extern the PQ free list to manage heap chunks */ H5FL_BLK_EXTERN(gheap_chunk); - /**************************/ /* Package Private Macros */ /**************************/ @@ -55,7 +53,7 @@ H5FL_BLK_EXTERN(gheap_chunk); /* * Global heap collection version. */ -#define H5HG_VERSION 1 +#define H5HG_VERSION 1 /* * All global heap collections are at least this big. This allows us to read @@ -63,7 +61,7 @@ H5FL_BLK_EXTERN(gheap_chunk); * bytes of header to figure out the size. If the heap is larger than this * then a second read gets the rest after we've decoded the header. */ -#define H5HG_MINSIZE 4096 +#define H5HG_MINSIZE 4096 /* * Pad all global heap messages to a multiple of eight bytes so we can load @@ -71,29 +69,29 @@ H5FL_BLK_EXTERN(gheap_chunk); * be sufficient for machines that have alignment constraints because our * largest data type is eight bytes. */ -#define H5HG_ALIGNMENT 8 -#define H5HG_ALIGN(X) (H5HG_ALIGNMENT*(((X)+H5HG_ALIGNMENT-1)/H5HG_ALIGNMENT)) -#define H5HG_ISALIGNED(X) ((X)==H5HG_ALIGN(X)) +#define H5HG_ALIGNMENT 8 +#define H5HG_ALIGN(X) (H5HG_ALIGNMENT * (((X) + H5HG_ALIGNMENT - 1) / H5HG_ALIGNMENT)) +#define H5HG_ISALIGNED(X) ((X) == H5HG_ALIGN(X)) /* * The size of the collection header, always a multiple of the alignment so * that the stuff that follows the header is aligned. */ -#define H5HG_SIZEOF_HDR(f) \ - (size_t)H5HG_ALIGN(4 + /*magic number */ \ - 1 + /*version number */ \ - 3 + /*reserved */ \ - H5F_SIZEOF_SIZE(f)) /*collection size */ +#define H5HG_SIZEOF_HDR(f) \ + (size_t) H5HG_ALIGN(4 + /*magic number */ \ + 1 + /*version number */ \ + 3 + /*reserved */ \ + H5F_SIZEOF_SIZE(f)) /*collection size */ /* * The overhead associated with each object in the heap, always a multiple of * the alignment so that the stuff that follows the header is aligned. */ -#define H5HG_SIZEOF_OBJHDR(f) \ - (size_t)H5HG_ALIGN(2 + /*object id number */ \ - 2 + /*reference count */ \ - 4 + /*reserved */ \ - H5F_SIZEOF_SIZE(f)) /*object data size */ +#define H5HG_SIZEOF_OBJHDR(f) \ + (size_t) H5HG_ALIGN(2 + /*object id number */ \ + 2 + /*reference count */ \ + 4 + /*reserved */ \ + H5F_SIZEOF_SIZE(f)) /*object data size */ /* * The initial guess for the number of messages in a collection. We assume @@ -102,36 +100,34 @@ H5FL_BLK_EXTERN(gheap_chunk); * some overhead and each message has some overhead. The `+2' accounts for * rounding and for the free space object. */ -#define H5HG_NOBJS(f,z) ((((z)-H5HG_SIZEOF_HDR(f))/ \ - H5HG_SIZEOF_OBJHDR(f)+2)) - +#define H5HG_NOBJS(f, z) ((((z)-H5HG_SIZEOF_HDR(f)) / H5HG_SIZEOF_OBJHDR(f) + 2)) /****************************/ /* Package Private Typedefs */ /****************************/ typedef struct H5HG_obj_t { - int nrefs; /* reference count */ - size_t size; /* total size of object */ - uint8_t *begin; /* ptr to object into heap->chunk */ + int nrefs; /* reference count */ + size_t size; /* total size of object */ + uint8_t *begin; /* ptr to object into heap->chunk */ } H5HG_obj_t; /* Forward declarations for fields */ struct H5F_shared_t; struct H5HG_heap_t { - H5AC_info_t cache_info; /* Information for H5AC cache functions, _must_ be */ - /* first field in structure */ - haddr_t addr; /*collection address */ - size_t size; /*total size of collection */ - uint8_t *chunk; /*the collection, incl. header */ - size_t nalloc; /*numb object slots allocated */ - size_t nused; /*number of slots used */ - /* If this value is >65535 then all indices */ - /* have been used at some time and the */ - /* correct new index should be searched for */ - struct H5F_shared_t *shared; /* shared file */ - H5HG_obj_t *obj; /*array of object descriptions */ + H5AC_info_t cache_info; /* Information for H5AC cache functions, _must_ be */ + /* first field in structure */ + haddr_t addr; /*collection address */ + size_t size; /*total size of collection */ + uint8_t *chunk; /*the collection, incl. header */ + size_t nalloc; /*numb object slots allocated */ + size_t nused; /*number of slots used */ + /* If this value is >65535 then all indices */ + /* have been used at some time and the */ + /* correct new index should be searched for */ + struct H5F_shared_t *shared; /* shared file */ + H5HG_obj_t * obj; /*array of object descriptions */ }; /******************************/ @@ -141,4 +137,3 @@ H5_DLL herr_t H5HG__free(H5HG_heap_t *heap); H5_DLL H5HG_heap_t *H5HG__protect(H5F_t *f, haddr_t addr, unsigned flags); #endif /* _H5HGpkg_H */ - |