diff options
author | Robb Matzke <matzke@llnl.gov> | 1997-08-04 16:19:57 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1997-08-04 16:19:57 (GMT) |
commit | 6a3cb617d3aa57f439065118fbc68afcb1465a54 (patch) | |
tree | b9062c04a678e7615a437afe04fc7ca86f06efc7 /src/H5Bprivate.h | |
parent | 5cc4d0dcde9fb0f5a941c90a1de9ab964d09a163 (diff) | |
download | hdf5-6a3cb617d3aa57f439065118fbc68afcb1465a54.zip hdf5-6a3cb617d3aa57f439065118fbc68afcb1465a54.tar.gz hdf5-6a3cb617d3aa57f439065118fbc68afcb1465a54.tar.bz2 |
[svn-r12] ./src/H5AC.c
Fails sooner if the type of object requested doesn't match
the type of object cached.
./src/H5B.c
./src/H5Bprivate.h
./src/H5Fprivate.h
./src/H5G.c
./src/H5Gnode.c
./src/H5Gprivate.h
./src/H5H.c
./src/H5Hprivate.h
Changed lots of `H5*_HDR_SIZE' macros to `H5*_SIZEOF_HDR' to make
things more consistent.
Added H5*_SIZEOF_MAGIC macros.
Added debugging functions to some of the packages.
./src/H5F.c
Fixed a bug with reading past the end of a buffer.
./src/H5Tproto.h
Added prototypes for H5Tadd_field() and H5Tget_fields().
./src/debug.c
Low-level file debugging program.
./src/Makefile
Builds `debug' as one of the main targets. The target is
called `debug_hdf5' so it doesn't conflict with the `debug'
target that was already there. But the executable is called
`debug'.
Diffstat (limited to 'src/H5Bprivate.h')
-rw-r--r-- | src/H5Bprivate.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/H5Bprivate.h b/src/H5Bprivate.h index 3a029e4..bb9d95c 100644 --- a/src/H5Bprivate.h +++ b/src/H5Bprivate.h @@ -21,11 +21,20 @@ #include "H5Fprivate.h" -#define H5B_MAGIC "TREE" /* tree node magic number */ -#define H5B_HDR_SIZE(F) (8+2*H5F_SIZEOF_OFFSET(F)) +#define H5B_MAGIC "TREE" /*tree node magic number */ +#define H5B_SIZEOF_MAGIC 4 /*size of magic number */ + +#define H5B_SIZEOF_HDR(F) \ + (H5B_SIZEOF_MAGIC + /*magic number */ \ + 4 + /*type, level, num entries */ \ + 2*H5F_SIZEOF_OFFSET(F)) /*left and right sibling addresses */ #define H5B_ANCHOR_LT 0 /* left node is anchored, right is new */ #define H5B_ANCHOR_RT 1 /* right node is anchored, left is new */ + +typedef enum H5B_subid_t { + H5B_SUBTYPE_SNODE =0 /*B-tree is for symbol table nodes */ +} H5B_subid_t; /* @@ -33,7 +42,7 @@ * variable of this type that contains class variables and methods. */ typedef struct H5B_class_t { - intn id; /*id as found in file */ + H5B_subid_t id; /*id as found in file */ intn k; /* max children is 2k */ size_t sizeof_nkey; /*size of native (memory) key */ size_t (*get_sizeof_rkey)(hdf5_file_t*); @@ -75,7 +84,8 @@ typedef struct H5B_t { /* * Library prototypes. */ -herr_t H5B_debug (hdf5_file_t *f, haddr_t addr, const H5B_class_t *type); +herr_t H5B_debug (hdf5_file_t *f, haddr_t addr, FILE *stream, intn indent, + intn fwidth, const H5B_class_t *type); haddr_t H5B_new (hdf5_file_t *f, const H5B_class_t *type, size_t sizeof_rkey); herr_t H5B_find (hdf5_file_t *f, const H5B_class_t *type, haddr_t addr, void *udata); |