diff options
author | Robb Matzke <matzke@llnl.gov> | 1997-08-13 15:36:47 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1997-08-13 15:36:47 (GMT) |
commit | 5cae95154903ecd6564f0712e42168892df17b7d (patch) | |
tree | ffc18b449e49921bbe15cb7a02c6b2f0785f3324 /src/H5Bprivate.h | |
parent | 46ef9d9c266b704ba93ed55296ed2ebab600a2a4 (diff) | |
download | hdf5-5cae95154903ecd6564f0712e42168892df17b7d.zip hdf5-5cae95154903ecd6564f0712e42168892df17b7d.tar.gz hdf5-5cae95154903ecd6564f0712e42168892df17b7d.tar.bz2 |
[svn-r27] ./src/H5B.c
./src/H5Bprivate.h
The B-tree K value comes from a combination of the B-tree
subclass and the file.
./src/H5C.c
./src/H5F.c
./src/hdf5lims.h
./src/hdf5type.h
Removed the B-tree size parameter and added an array of B-tree
K values. Also added symbol table node K value.
./src/H5Eprivate.h
./src/H5Eproto.h
Added H5E_LINK for errors involving link counts.
./src/H5G.c
Inserting something into a directory with H5G_insert()
increments the link count in the object header. The root
object should always have a link count of at least 1.
./src/H5Gnode.c
./src/H5Gprivate.h
The symbol table node K value comes from the file instead of
being a constant.
./src/H5Olink.c
Added an assert(), fixed a hard-link bug.
Diffstat (limited to 'src/H5Bprivate.h')
-rw-r--r-- | src/H5Bprivate.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/H5Bprivate.h b/src/H5Bprivate.h index 92c2985..618e344 100644 --- a/src/H5Bprivate.h +++ b/src/H5Bprivate.h @@ -29,21 +29,26 @@ 4 + /*type, level, num entries */ \ 2*H5F_SIZEOF_OFFSET(F)) /*left and right sibling addresses */ +#define H5B_K(F,TYPE) /*K value given file and Btree subclass */ \ + ((F)->file_create_parms.btree_k[(TYPE)->id]) + #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_SNODE_ID =0 /*B-tree is for symbol table nodes */ } H5B_subid_t; /* * Each class of object that can be pointed to by a B-link tree has a - * variable of this type that contains class variables and methods. + * variable of this type that contains class variables and methods. Each + * tree has a K (1/2 rank) value on a per-file basis. The file_create_parms + * has an array of K values indexed by the `id' class field below. The + * array is initialized with the HDF5_BTREE_K_DEFAULT macro. */ typedef struct H5B_class_t { 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*); haddr_t (*new)(hdf5_file_t*,void*,void*,void*); |