summaryrefslogtreecommitdiffstats
path: root/src/H5Oprivate.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2007-03-01 21:26:31 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2007-03-01 21:26:31 (GMT)
commit2e8b6c0223e6969e3840e2dfefdfa34a223f3e15 (patch)
tree2b2dae6d7e737de43d23ba0f4fb0a07596a21078 /src/H5Oprivate.h
parent2618906fee4c3fe20c81c8b2b2d744af4f13e5a7 (diff)
downloadhdf5-2e8b6c0223e6969e3840e2dfefdfa34a223f3e15.zip
hdf5-2e8b6c0223e6969e3840e2dfefdfa34a223f3e15.tar.gz
hdf5-2e8b6c0223e6969e3840e2dfefdfa34a223f3e15.tar.bz2
[svn-r13440] Description:
Revise latest form of superblock format pretty drastically, to eliminate unused fields and move rarely used fields into superblock extension. Finished removing last vestiges of references to (never used) i"shared" object header message ID. Added object header messages for non-default v1 B-tree 'K' values and for driver info. Updated testfiles to reflect size changes, etc. Various minor cleanups, etc. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
Diffstat (limited to 'src/H5Oprivate.h')
-rw-r--r--src/H5Oprivate.h30
1 files changed, 27 insertions, 3 deletions
diff --git a/src/H5Oprivate.h b/src/H5Oprivate.h
index 88c2a33..0438101 100644
--- a/src/H5Oprivate.h
+++ b/src/H5Oprivate.h
@@ -128,11 +128,12 @@ typedef struct H5O_copy_t {
#define H5O_ATTR_ID 0x000c /* Attribute Message. */
#define H5O_NAME_ID 0x000d /* Object name message. */
#define H5O_MTIME_ID 0x000e /* Modification time message. (Old) */
-#define H5O_SHARED_ID 0x000f /* Shared object message. */
+#define H5O_SHMESG_ID 0x000f /* Shared message "SOHM" table. */
#define H5O_CONT_ID 0x0010 /* Object header continuation message. */
#define H5O_STAB_ID 0x0011 /* Symbol table message. */
#define H5O_MTIME_NEW_ID 0x0012 /* Modification time message. (New) */
-#define H5O_SHMESG_ID 0x0013 /* Shared message "SOHM" table. */
+#define H5O_BTREEK_ID 0x0013 /* v1 B-tree 'K' values message. */
+#define H5O_DRVINFO_ID 0x0014 /* Driver info message. */
/* Shared object message flags.
@@ -147,7 +148,7 @@ typedef struct H5O_copy_t {
#define H5O_IS_SHARED(F) (((F) & (H5O_SHARED_IN_HEAP_FLAG | H5O_COMMITTED_FLAG)) ? TRUE : FALSE)
/*
- * Shared object message.
+ * Shared object header message info.
* This needs to go first because other messages can be shared and
* include a H5O_shared_t struct
* The oloc shouldn't ever be holding open a file; if it ever is (if
@@ -384,6 +385,29 @@ typedef struct H5O_shmesg_table_t {
unsigned nindexes; /*number of indexes in the table */
} H5O_shmesg_table_t;
+/*
+ * v1 B-tree 'K' value message
+ * Information about file-wide non-default v1 B-tree 'K' values, stored in
+ * superblock extension
+ * (Data structure in memory)
+ */
+typedef struct H5O_btreek_t {
+ unsigned btree_k[H5B_NUM_BTREE_ID]; /* B-tree internal node 'K' values */
+ unsigned sym_leaf_k; /* Symbol table leaf node's 'K' value */
+} H5O_btreek_t;
+
+/*
+ * Driver info message
+ * Information about driver info, stored in superblock extension
+ * (Data structure in memory)
+ */
+typedef struct H5O_drvinfo_t {
+ char name[9]; /* Driver name */
+ size_t len; /* Length of encoded buffer */
+ uint8_t *buf; /* Buffer for encoded info */
+} H5O_drvinfo_t;
+
+
/* Typedef for iteration operations */
typedef herr_t (*H5O_operator_t)(const void *mesg/*in*/, unsigned idx,
void *operator_data/*in,out*/);