summaryrefslogtreecommitdiffstats
path: root/src/H5B2test.c
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2020-10-01 16:47:45 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2020-10-01 16:47:45 (GMT)
commit1ba1f2f3222cbe8df0bf601929a4bffd478d7e02 (patch)
treeae51dfc33cf40432dad25a5088767115a98f195e /src/H5B2test.c
parent8eef7d295cc3dd134aef0a826f1de4287629996d (diff)
downloadhdf5-1ba1f2f3222cbe8df0bf601929a4bffd478d7e02.zip
hdf5-1ba1f2f3222cbe8df0bf601929a4bffd478d7e02.tar.gz
hdf5-1ba1f2f3222cbe8df0bf601929a4bffd478d7e02.tar.bz2
Source formatted
Diffstat (limited to 'src/H5B2test.c')
-rw-r--r--src/H5B2test.c159
1 files changed, 69 insertions, 90 deletions
diff --git a/src/H5B2test.c b/src/H5B2test.c
index b7fab99..14b01e6 100644
--- a/src/H5B2test.c
+++ b/src/H5B2test.c
@@ -18,92 +18,82 @@
*
*/
-
/****************/
/* Module Setup */
/****************/
-#define H5B2_PACKAGE /*suppress error about including H5B2pkg */
-#define H5B2_TESTING /*suppress warning about H5B2 testing funcs*/
-
+#define H5B2_PACKAGE /*suppress error about including H5B2pkg */
+#define H5B2_TESTING /*suppress warning about H5B2 testing funcs*/
/***********/
/* Headers */
/***********/
-#include "H5private.h" /* Generic Functions */
-#include "H5B2pkg.h" /* v2 B-trees */
-#include "H5Eprivate.h" /* Error handling */
-
+#include "H5private.h" /* Generic Functions */
+#include "H5B2pkg.h" /* v2 B-trees */
+#include "H5Eprivate.h" /* Error handling */
/****************/
/* Local Macros */
/****************/
-
/******************/
/* Local Typedefs */
/******************/
/* v2 B-tree client callback context */
typedef struct H5B2_test_ctx_t {
- uint8_t sizeof_size; /* Size of file sizes */
+ uint8_t sizeof_size; /* Size of file sizes */
} H5B2_test_ctx_t;
-
/********************/
/* Package Typedefs */
/********************/
-
/********************/
/* Local Prototypes */
/********************/
-static void *H5B2_test_crt_context(void *udata);
+static void * H5B2_test_crt_context(void *udata);
static herr_t H5B2_test_dst_context(void *ctx);
static herr_t H5B2_test_store(void *nrecord, const void *udata);
static herr_t H5B2_test_compare(const void *rec1, const void *rec2, int *result);
static herr_t H5B2_test_encode(uint8_t *raw, const void *nrecord, void *ctx);
static herr_t H5B2_test_decode(const uint8_t *raw, void *nrecord, void *ctx);
-static herr_t H5B2_test_debug(FILE *stream, const H5F_t *f, hid_t dxpl_id,
- int indent, int fwidth, const void *record, const void *_udata);
-static void *H5B2_test_crt_dbg_context(H5F_t *f, hid_t dxpl_id, haddr_t addr);
-
+static herr_t H5B2_test_debug(FILE *stream, const H5F_t *f, hid_t dxpl_id, int indent, int fwidth,
+ const void *record, const void *_udata);
+static void * H5B2_test_crt_dbg_context(H5F_t *f, hid_t dxpl_id, haddr_t addr);
/*********************/
/* Package Variables */
/*********************/
-const H5B2_class_t H5B2_TEST[1]={{ /* B-tree class information */
- H5B2_TEST_ID, /* Type of B-tree */
- "H5B2_TEST_ID", /* Name of B-tree class */
- sizeof(hsize_t), /* Size of native record */
- H5B2_test_crt_context, /* Create client callback context */
- H5B2_test_dst_context, /* Destroy client callback context */
- H5B2_test_store, /* Record storage callback */
- H5B2_test_compare, /* Record comparison callback */
- H5B2_test_encode, /* Record encoding callback */
- H5B2_test_decode, /* Record decoding callback */
- H5B2_test_debug, /* Record debugging callback */
- H5B2_test_crt_dbg_context, /* Create debugging context */
- H5B2_test_dst_context /* Destroy debugging context */
+const H5B2_class_t H5B2_TEST[1] = {{
+ /* B-tree class information */
+ H5B2_TEST_ID, /* Type of B-tree */
+ "H5B2_TEST_ID", /* Name of B-tree class */
+ sizeof(hsize_t), /* Size of native record */
+ H5B2_test_crt_context, /* Create client callback context */
+ H5B2_test_dst_context, /* Destroy client callback context */
+ H5B2_test_store, /* Record storage callback */
+ H5B2_test_compare, /* Record comparison callback */
+ H5B2_test_encode, /* Record encoding callback */
+ H5B2_test_decode, /* Record decoding callback */
+ H5B2_test_debug, /* Record debugging callback */
+ H5B2_test_crt_dbg_context, /* Create debugging context */
+ H5B2_test_dst_context /* Destroy debugging context */
}};
-
/*****************************/
/* Library Private Variables */
/*****************************/
-
/*******************/
/* Local Variables */
/*******************/
-
/* Declare a free list to manage the H5B2_test_ctx_t struct */
H5FL_DEFINE_STATIC(H5B2_test_ctx_t);
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_crt_context
*
@@ -120,9 +110,9 @@ H5FL_DEFINE_STATIC(H5B2_test_ctx_t);
static void *
H5B2_test_crt_context(void *_f)
{
- H5F_t *f = (H5F_t *)_f; /* User data for building callback context */
- H5B2_test_ctx_t *ctx; /* Callback context structure */
- void *ret_value; /* Return value */
+ H5F_t * f = (H5F_t *)_f; /* User data for building callback context */
+ H5B2_test_ctx_t *ctx; /* Callback context structure */
+ void * ret_value; /* Return value */
FUNC_ENTER_NOAPI_NOINIT
@@ -130,7 +120,7 @@ H5B2_test_crt_context(void *_f)
HDassert(f);
/* Allocate callback context */
- if(NULL == (ctx = H5FL_MALLOC(H5B2_test_ctx_t)))
+ if (NULL == (ctx = H5FL_MALLOC(H5B2_test_ctx_t)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "can't allocate callback context")
/* Determine the size of lengths in the file */
@@ -143,7 +133,6 @@ done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5B2_test_crt_context() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_dst_context
*
@@ -160,7 +149,7 @@ done:
static herr_t
H5B2_test_dst_context(void *_ctx)
{
- H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
+ H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
FUNC_ENTER_NOAPI_NOINIT_NOERR
@@ -173,7 +162,6 @@ H5B2_test_dst_context(void *_ctx)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_dst_context() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_store
*
@@ -197,7 +185,6 @@ H5B2_test_store(void *nrecord, const void *udata)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_store() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_compare
*
@@ -222,7 +209,6 @@ H5B2_test_compare(const void *rec1, const void *rec2, int *result)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_compare() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_encode
*
@@ -239,7 +225,7 @@ H5B2_test_compare(const void *rec1, const void *rec2, int *result)
static herr_t
H5B2_test_encode(uint8_t *raw, const void *nrecord, void *_ctx)
{
- H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
+ H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
FUNC_ENTER_NOAPI_NOINIT_NOERR
@@ -251,7 +237,6 @@ H5B2_test_encode(uint8_t *raw, const void *nrecord, void *_ctx)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_encode() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_decode
*
@@ -268,7 +253,7 @@ H5B2_test_encode(uint8_t *raw, const void *nrecord, void *_ctx)
static herr_t
H5B2_test_decode(const uint8_t *raw, void *nrecord, void *_ctx)
{
- H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
+ H5B2_test_ctx_t *ctx = (H5B2_test_ctx_t *)_ctx; /* Callback context structure */
FUNC_ENTER_NOAPI_NOINIT_NOERR
@@ -280,7 +265,6 @@ H5B2_test_decode(const uint8_t *raw, void *nrecord, void *_ctx)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_decode() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_debug
*
@@ -295,21 +279,18 @@ H5B2_test_decode(const uint8_t *raw, void *nrecord, void *_ctx)
*-------------------------------------------------------------------------
*/
static herr_t
-H5B2_test_debug(FILE *stream, const H5F_t H5_ATTR_UNUSED *f, hid_t H5_ATTR_UNUSED dxpl_id,
- int indent, int fwidth, const void *record,
- const void H5_ATTR_UNUSED *_udata)
+H5B2_test_debug(FILE *stream, const H5F_t H5_ATTR_UNUSED *f, hid_t H5_ATTR_UNUSED dxpl_id, int indent,
+ int fwidth, const void *record, const void H5_ATTR_UNUSED *_udata)
{
FUNC_ENTER_NOAPI_NOINIT_NOERR
- HDassert (record);
+ HDassert(record);
- HDfprintf(stream, "%*s%-*s %Hu\n", indent, "", fwidth, "Record:",
- *(const hsize_t *)record);
+ HDfprintf(stream, "%*s%-*s %Hu\n", indent, "", fwidth, "Record:", *(const hsize_t *)record);
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_test_debug() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_test_crt_dbg_context
*
@@ -327,7 +308,7 @@ static void *
H5B2_test_crt_dbg_context(H5F_t *f, hid_t H5_ATTR_UNUSED dxpl_id, haddr_t H5_ATTR_UNUSED addr)
{
H5B2_test_ctx_t *ctx; /* Callback context structure */
- void *ret_value; /* Return value */
+ void * ret_value; /* Return value */
FUNC_ENTER_NOAPI_NOINIT
@@ -335,7 +316,7 @@ H5B2_test_crt_dbg_context(H5F_t *f, hid_t H5_ATTR_UNUSED dxpl_id, haddr_t H5_ATT
HDassert(f);
/* Allocate callback context */
- if(NULL == (ctx = H5FL_MALLOC(H5B2_test_ctx_t)))
+ if (NULL == (ctx = H5FL_MALLOC(H5B2_test_ctx_t)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "can't allocate callback context")
/* Determine the size of addresses & lengths in the file */
@@ -348,7 +329,6 @@ done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5B2_test_crt_dbg_context() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_get_root_addr_test
*
@@ -377,7 +357,6 @@ H5B2_get_root_addr_test(H5B2_t *bt2, haddr_t *root_addr)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5B2_get_root_addr_test() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_get_node_info_test
*
@@ -392,15 +371,14 @@ H5B2_get_root_addr_test(H5B2_t *bt2, haddr_t *root_addr)
*-------------------------------------------------------------------------
*/
herr_t
-H5B2_get_node_info_test(H5B2_t *bt2, hid_t dxpl_id, void *udata,
- H5B2_node_info_test_t *ninfo)
+H5B2_get_node_info_test(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_node_info_test_t *ninfo)
{
- H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
- H5B2_node_ptr_t curr_node_ptr; /* Node pointer info for current node */
- unsigned depth; /* Current depth of the tree */
- int cmp; /* Comparison value of records */
- unsigned idx; /* Location of record which matches key */
- herr_t ret_value = SUCCEED; /* Return value */
+ H5B2_hdr_t * hdr; /* Pointer to the B-tree header */
+ H5B2_node_ptr_t curr_node_ptr; /* Node pointer info for current node */
+ unsigned depth; /* Current depth of the tree */
+ int cmp; /* Comparison value of records */
+ unsigned idx; /* Location of record which matches key */
+ herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_NOAPI(FAIL)
@@ -420,33 +398,35 @@ H5B2_get_node_info_test(H5B2_t *bt2, hid_t dxpl_id, void *udata,
depth = hdr->depth;
/* Check for empty tree */
- if(0 == curr_node_ptr.node_nrec)
+ if (0 == curr_node_ptr.node_nrec)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "B-tree has no records")
/* Walk down B-tree to find record or leaf node where record is located */
cmp = -1;
- while(depth > 0 && cmp != 0) {
- H5B2_internal_t *internal; /* Pointer to internal node in B-tree */
- H5B2_node_ptr_t next_node_ptr; /* Node pointer info for next node */
+ while (depth > 0 && cmp != 0) {
+ H5B2_internal_t *internal; /* Pointer to internal node in B-tree */
+ H5B2_node_ptr_t next_node_ptr; /* Node pointer info for next node */
/* Lock B-tree current node */
- if(NULL == (internal = H5B2_protect_internal(hdr, dxpl_id, curr_node_ptr.addr, curr_node_ptr.node_nrec, depth, H5AC_READ)))
+ if (NULL == (internal = H5B2_protect_internal(hdr, dxpl_id, curr_node_ptr.addr,
+ curr_node_ptr.node_nrec, depth, H5AC_READ)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to load B-tree internal node")
/* Locate node pointer for child */
- if(H5B2_locate_record(hdr->cls, internal->nrec, hdr->nat_off, internal->int_native,
- udata, &idx, &cmp) < 0)
+ if (H5B2_locate_record(hdr->cls, internal->nrec, hdr->nat_off, internal->int_native, udata, &idx,
+ &cmp) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTCOMPARE, FAIL, "can't compare btree2 records")
- if(cmp > 0)
+ if (cmp > 0)
idx++;
- if(cmp != 0) {
+ if (cmp != 0) {
/* Get node pointer for next node to search */
next_node_ptr = internal->node_ptrs[idx];
/* Unlock current node */
- if(H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal, H5AC__NO_FLAGS_SET) < 0)
+ if (H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal,
+ H5AC__NO_FLAGS_SET) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
/* Set pointer to next node to load */
@@ -454,12 +434,13 @@ H5B2_get_node_info_test(H5B2_t *bt2, hid_t dxpl_id, void *udata,
} /* end if */
else {
/* Unlock current node */
- if(H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal, H5AC__NO_FLAGS_SET) < 0)
+ if (H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal,
+ H5AC__NO_FLAGS_SET) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
/* Fill in information about the node */
ninfo->depth = depth;
- ninfo->nrec = curr_node_ptr.node_nrec;
+ ninfo->nrec = curr_node_ptr.node_nrec;
/* Indicate success */
HGOTO_DONE(SUCCEED)
@@ -470,35 +451,34 @@ H5B2_get_node_info_test(H5B2_t *bt2, hid_t dxpl_id, void *udata,
} /* end while */
{
- H5B2_leaf_t *leaf; /* Pointer to leaf node in B-tree */
+ H5B2_leaf_t *leaf; /* Pointer to leaf node in B-tree */
/* Lock B-tree leaf node */
- if(NULL == (leaf = H5B2_protect_leaf(hdr, dxpl_id, curr_node_ptr.addr, curr_node_ptr.node_nrec, H5AC_READ)))
+ if (NULL ==
+ (leaf = H5B2_protect_leaf(hdr, dxpl_id, curr_node_ptr.addr, curr_node_ptr.node_nrec, H5AC_READ)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to protect B-tree leaf node")
/* Locate record */
- if(H5B2_locate_record(hdr->cls, leaf->nrec, hdr->nat_off, leaf->leaf_native,
- udata, &idx, &cmp) < 0)
+ if (H5B2_locate_record(hdr->cls, leaf->nrec, hdr->nat_off, leaf->leaf_native, udata, &idx, &cmp) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTCOMPARE, FAIL, "can't compare btree2 records")
/* Unlock current node */
- if(H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_LEAF, curr_node_ptr.addr, leaf, H5AC__NO_FLAGS_SET) < 0)
+ if (H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_LEAF, curr_node_ptr.addr, leaf, H5AC__NO_FLAGS_SET) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
/* Indicate the depth that the record was found */
- if(cmp != 0)
+ if (cmp != 0)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "record not in B-tree")
} /* end block */
/* Fill in information about the leaf node */
ninfo->depth = depth;
- ninfo->nrec = curr_node_ptr.node_nrec;
+ ninfo->nrec = curr_node_ptr.node_nrec;
done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5B2_get_node_info_test() */
-
/*-------------------------------------------------------------------------
* Function: H5B2_get_node_depth_test
*
@@ -518,8 +498,8 @@ done:
int
H5B2_get_node_depth_test(H5B2_t *bt2, hid_t dxpl_id, void *udata)
{
- H5B2_node_info_test_t ninfo; /* Node information */
- int ret_value; /* Return information */
+ H5B2_node_info_test_t ninfo; /* Node information */
+ int ret_value; /* Return information */
FUNC_ENTER_NOAPI(FAIL)
@@ -527,7 +507,7 @@ H5B2_get_node_depth_test(H5B2_t *bt2, hid_t dxpl_id, void *udata)
HDassert(bt2);
/* Get information abou the node */
- if(H5B2_get_node_info_test(bt2, dxpl_id, udata, &ninfo) < 0)
+ if (H5B2_get_node_info_test(bt2, dxpl_id, udata, &ninfo) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "error looking up node info")
/* Set return value */
@@ -536,4 +516,3 @@ H5B2_get_node_depth_test(H5B2_t *bt2, hid_t dxpl_id, void *udata)
done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5B2_get_node_depth_test() */
-