summaryrefslogtreecommitdiffstats
path: root/src/H5B2private.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2006-08-17 15:49:06 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2006-08-17 15:49:06 (GMT)
commit832305699d1ef7c43ac93bc83dc3bb724249f240 (patch)
tree526437dadbe6e614580850327786adf9f46fed70 /src/H5B2private.h
parent7fd5028f7ccfa34bec0e46c21113dbc664c4b850 (diff)
downloadhdf5-832305699d1ef7c43ac93bc83dc3bb724249f240.zip
hdf5-832305699d1ef7c43ac93bc83dc3bb724249f240.tar.gz
hdf5-832305699d1ef7c43ac93bc83dc3bb724249f240.tar.bz2
[svn-r12589] Description:
Revert passing the v2 B-tree class to callbacks, it turns out to be unnecessary. Also revert have a "class private" pointer for each v2 B-tree class. Add in support for the different flavors of fractal heap 'huge' objects also. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
Diffstat (limited to 'src/H5B2private.h')
-rw-r--r--src/H5B2private.h18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/H5B2private.h b/src/H5B2private.h
index f71a256..cda4df0 100644
--- a/src/H5B2private.h
+++ b/src/H5B2private.h
@@ -52,7 +52,10 @@
/* B-tree IDs for various internal things. */
typedef enum H5B2_subid_t {
H5B2_TEST_ID = 0, /* B-tree is for testing (do not use for actual data) */
- H5B2_FHEAP_ID, /* B-tree is for fractal heap */
+ H5B2_FHEAP_HUGE_INDIR_ID, /* B-tree is for fractal heap indirectly accessed, non-filtered 'huge' objects */
+ H5B2_FHEAP_HUGE_FILT_INDIR_ID, /* B-tree is for fractal heap indirectly accessed, filtered 'huge' objects */
+ H5B2_FHEAP_HUGE_DIR_ID, /* B-tree is for fractal heap directly accessed, non-filtered 'huge' objects */
+ H5B2_FHEAP_HUGE_FILT_DIR_ID, /* B-tree is for fractal heap directly accessed, filtered 'huge' objects */
H5B2_NUM_BTREE_ID /* Number of B-tree IDs (must be last) */
} H5B2_subid_t;
@@ -82,22 +85,21 @@ typedef struct H5B2_class_t H5B2_class_t;
struct H5B2_class_t {
H5B2_subid_t id; /* ID of B-tree class, as found in file */
size_t nrec_size; /* Size of native (memory) record */
- void *cls_private; /* Pointer to class-private information */
/* Store & retrieve record from application to B-tree 'native' form */
- herr_t (*store)(const H5B2_class_t *cls, void *nrecord, const void *udata); /* Store record in native record table */
- herr_t (*retrieve)(const H5B2_class_t *cls, void *udata, const void *nrecord); /* Retrieve record in native record table */
+ herr_t (*store)(void *nrecord, const void *udata); /* Store record in native record table */
+ herr_t (*retrieve)(void *udata, const void *nrecord); /* Retrieve record in native record table */
/* Compare records, according to a key */
- herr_t (*compare)(const H5B2_class_t *cls, const void *rec1, const void *rec2); /* Compare two native records */
+ herr_t (*compare)(const void *rec1, const void *rec2); /* Compare two native records */
/* Encode & decode record values */
- herr_t (*encode)(const H5F_t *f, const H5B2_class_t *cls, uint8_t *raw, const void *record); /* Encode record from native form to disk storage form */
- herr_t (*decode)(const H5F_t *f, const H5B2_class_t *cls, const uint8_t *raw, void *record); /* Decode record from disk storage form to native form */
+ herr_t (*encode)(const H5F_t *f, uint8_t *raw, const void *record); /* Encode record from native form to disk storage form */
+ herr_t (*decode)(const H5F_t *f, const uint8_t *raw, void *record); /* Decode record from disk storage form to native form */
/* Debug record values */
herr_t (*debug)(FILE *stream, const H5F_t *f, hid_t dxpl_id, /* Print a record for debugging */
- int indent, int fwidth, const H5B2_class_t *cls, const void *record,
+ int indent, int fwidth, const void *record,
const void *udata);
};