summaryrefslogtreecommitdiffstats
path: root/src/H5MF.c
diff options
context:
space:
mode:
authorRobb Matzke <matzke@llnl.gov>1997-08-07 19:23:00 (GMT)
committerRobb Matzke <matzke@llnl.gov>1997-08-07 19:23:00 (GMT)
commita905a3a1e343d4507049c30512842957e2f6307c (patch)
treeaa01b7418431c48634458a028c2fe6fd354f1684 /src/H5MF.c
parentdd0fbd5b0060ebc7703da8eaab747f7a3025be2a (diff)
downloadhdf5-a905a3a1e343d4507049c30512842957e2f6307c.zip
hdf5-a905a3a1e343d4507049c30512842957e2f6307c.tar.gz
hdf5-a905a3a1e343d4507049c30512842957e2f6307c.tar.bz2
[svn-r15] ./src/H5AC.c
./src/H5ACprivate.h ./src/H5ACproto.h ./src/H5Bproto.h ./src/H5Gproto.h ./src/H5Hproto.h ./src/H5MFprivate.h ./src/H5MFproto.h ./src/H5MM.c ./src/H5MMprivate.h ./src/H5MMproto.h Changed my e-mail address. ./src/H5O.c NEW ./src/H5Onull.c NEW ./src/H5Ocont. NEW ./src/H5Ostab.c NEW New functions for dealing with object headers. The H5O.c is the generic stuff, and each particular message has a source file for the specific stuff. Use ./src/H5Ostab.c as a model for implementing other messages. ./src/Makefile ./src/test/Makefile Added new files ./src/debug.c Added debugging calls for object headers. ./src/H5B.c ./src/H5Bprivate.h ./src/H5Gnode.c ./src/H5MF.c Changed my e-mail address. Improved error handling. ./src/H5Eprivate.h ./src/H5Eproto.h Added more error symbols ./src/H5F.c Changed my e-mail address. Used macros for sizeof offsets and lengths. Added the interface initialization function to H5F_block_read() and H5F_block_write(). Updated H5F_debug() ./src/H5Fprivate.h Got rid of H5F_symbol_table_size(). Use H5G_SIZEOF_ENTRY() instead. Reformatted H5F_decode_offset() for readability. ./src/H5G.c Changed my e-mail address. Improved error handling. Replaced not_implemented_yet__*() with real functions from H5O. ./src/H5Gprivate.h Changed `symtab' to `stab' to be consistent with other stuff. ./src/H5H.c ./src/H5Hprivate.h Changed my e-mail address. Improved error handling. Added an extra argument to H5H_new() to indicate whether you want a global heap or a local heap. ./src/hdf5gen.h Added NELMTS() Fixed FUNC_ENTER() Rewrote FUNC_LEAVE() in terms of HRETURN(). ./src/hdf5meta.h Added `const' to the decode macros. ./src/hdf5pabl.h Added PABLO_SAVE() ./test/testhdf5.c ./test/testhdf5.h Added calls for object header testing. ./test/theap.c Turned off some output.
Diffstat (limited to 'src/H5MF.c')
-rw-r--r--src/H5MF.c40
1 files changed, 30 insertions, 10 deletions
diff --git a/src/H5MF.c b/src/H5MF.c
index 16c2746..b6900cc 100644
--- a/src/H5MF.c
+++ b/src/H5MF.c
@@ -6,20 +6,29 @@
*
* Created: H5MF.c
* Jul 11 1997
- * Robb Matzke <robb@maya.nuance.com>
+ * Robb Matzke <matzke@llnl.gov>
*
* Purpose: File memory management functions.
*
- * Modifications:
+ * Modifications:
+ *
+ * Robb Matzke, 5 Aug 1997
+ * Added calls to H5E.
*
*-------------------------------------------------------------------------
*/
#include <assert.h>
#include "hdf5.h"
+#include "H5private.h"
#include "H5Fprivate.h"
#include "H5MFprivate.h"
+#define PABLO_MASK H5MF_mask
+
+/* Is the interface initialized? */
+static intn interface_initialize_g = FALSE;
+
/*-------------------------------------------------------------------------
* Function: H5MF_alloc
@@ -30,10 +39,10 @@
*
* Return: Success: File address of new chunk.
*
- * Failure: -1
+ * Failure: FAIL
*
* Programmer: Robb Matzke
- * robb@maya.nuance.com
+ * matzke@llnl.gov
* Jul 11 1997
*
* Modifications:
@@ -44,14 +53,19 @@ haddr_t
H5MF_alloc (hdf5_file_t *f, size_t size)
{
haddr_t addr;
-
+
+ FUNC_ENTER (H5MF_alloc, NULL, FAIL);
+
+ /* check arguments */
assert (f);
assert (f->logical_len>0);
assert (size>0);
+ /* reserve space from the end of the file */
addr = f->logical_len;
f->logical_len += size;
- return addr;
+
+ FUNC_LEAVE (addr);
}
@@ -68,7 +82,7 @@ H5MF_alloc (hdf5_file_t *f, size_t size)
* Failure: -1
*
* Programmer: Robb Matzke
- * robb@maya.nuance.com
+ * matzke@llnl.gov
* Jul 17 1997
*
* Modifications:
@@ -78,11 +92,17 @@ H5MF_alloc (hdf5_file_t *f, size_t size)
herr_t
H5MF_free (hdf5_file_t *f, haddr_t addr, size_t size)
{
- if (addr<=0 || 0==size) return 0;
+ FUNC_ENTER (H5MF_free, NULL, FAIL);
+ /* check arguments */
+ assert (f);
+ if (addr<=0 || 0==size) HRETURN (SUCCEED);
+
+#ifndef NDEBUG
fprintf (stderr, "H5MF_free: lost %lu bytes of file storage\n",
(unsigned long)size);
-
- return 0;
+#endif
+
+ FUNC_LEAVE (SUCCEED);
}