summaryrefslogtreecommitdiffstats
path: root/src/H5HLprivate.h
diff options
context:
space:
mode:
authorRobb Matzke <matzke@llnl.gov>1998-03-30 19:24:08 (GMT)
committerRobb Matzke <matzke@llnl.gov>1998-03-30 19:24:08 (GMT)
commit78c1574378256975b39d4b65a011307a631dc667 (patch)
tree84e0dc9edf12a69a405c0d9da02803f2cc291382 /src/H5HLprivate.h
parent2d9f2282e6e639dc5a7881c5c55c3f56d43526b1 (diff)
downloadhdf5-78c1574378256975b39d4b65a011307a631dc667.zip
hdf5-78c1574378256975b39d4b65a011307a631dc667.tar.gz
hdf5-78c1574378256975b39d4b65a011307a631dc667.tar.bz2
[svn-r333] Changes since 19980324
---------------------- ./MANIFEST ./src/H5HG.c [new] ./src/H5HGprivate.h [new] ./src/H5HGpublic.h [new] ./src/Makefile.in Added global heaps, H5HG. This compiles but is untested. ./src/H5D.c ./src/H5G.c ./src/H5Gnode.c ./src/H5Gstab.c ./src/H5HL.c [renamed from H5H.c] ./src/H5HLprivate.h [renamed from H5Hprivate.h] ./src/H5HLpublic.h [renamed from H5Hpublic.h] ./src/H5Oefl.c ./src/Makefile.in ./src/hdf5.h ./test/theap.c Renamed local heaps from H5H to H5HL. ./src/H5AC.c ./src/H5ACprivate.h ./src/debug.c Added debugging support for global heap collections. ./html/H5.format.html Ripped out the old small object heap documentation and added documentation for the new global heap. ./html/H5.api.html ./src/H5P.c ./src/H5Ppublic.h ./src/H5F.c ./src/H5Fprivate.h ./src/H5private.h The H5Pget_version() function no longer returns a small object heap version number. Instead, each collection of the global heap has its own version number instead of a single number in the file boot block. ./bin/release Omit files marked for removal by CVS even though the removal hasn't been committed yet. ./test/iopipe.c Removed warnings about casting unsigned int to double on Irix64. ./MANIFEST Removed ./test/testpar/phdf5sup.c
Diffstat (limited to 'src/H5HLprivate.h')
-rw-r--r--src/H5HLprivate.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/H5HLprivate.h b/src/H5HLprivate.h
new file mode 100644
index 0000000..8ccc2ed
--- /dev/null
+++ b/src/H5HLprivate.h
@@ -0,0 +1,56 @@
+/*-------------------------------------------------------------------------
+ * Copyright (C) 1997 National Center for Supercomputing Applications.
+ * All rights reserved.
+ *
+ *-------------------------------------------------------------------------
+ *
+ * Created: H5HLprivate.h
+ * Jul 16 1997
+ * Robb Matzke <matzke@llnl.gov>
+ *
+ * Purpose:
+ *
+ * Modifications:
+ *
+ *-------------------------------------------------------------------------
+ */
+#ifndef _H5HLprivate_H
+#define _H5HLprivate_H
+
+#include <H5HLpublic.h>
+
+/* Private headers needed by this file. */
+#include <H5private.h>
+#include <H5Fprivate.h>
+
+#define H5HL_MAGIC "HEAP" /*heap magic number */
+#define H5HL_SIZEOF_MAGIC 4
+
+#define H5HL_ALIGN(X) (((X)+7)&~0x07) /*align on 8-byte boundary */
+
+#define H5HL_SIZEOF_HDR(F) \
+ H5HL_ALIGN(H5HL_SIZEOF_MAGIC + /*heap signature */ \
+ 4 + /*reserved */ \
+ H5F_SIZEOF_SIZE (F) + /*data size */ \
+ H5F_SIZEOF_SIZE (F) + /*free list head */ \
+ H5F_SIZEOF_ADDR (F)) /*data address */
+
+#define H5HL_SIZEOF_FREE(F) \
+ H5HL_ALIGN(H5F_SIZEOF_SIZE (F) + /*ptr to next free block */ \
+ H5F_SIZEOF_SIZE (F)) /*size of this free block */
+
+/*
+ * Library prototypes...
+ */
+herr_t H5HL_create (H5F_t *f, size_t size_hint, haddr_t *addr/*out*/);
+void *H5HL_read (H5F_t *f, const haddr_t *addr, size_t offset, size_t size,
+ void *buf);
+const void *H5HL_peek (H5F_t *f, const haddr_t *addr, size_t offset);
+size_t H5HL_insert (H5F_t *f, const haddr_t *addr, size_t size,
+ const void *buf);
+herr_t H5HL_write (H5F_t *f, const haddr_t *addr, size_t offset, size_t size,
+ const void *buf);
+herr_t H5HL_remove (H5F_t *f, const haddr_t *addr, size_t offset, size_t size);
+herr_t H5HL_debug (H5F_t *f, const haddr_t *addr, FILE * stream, intn indent,
+ intn fwidth);
+#endif