solstice-solver

Solver library of the solstice app
git clone git://git.meso-star.com/solstice-solver.git
Log | Files | Refs | README | LICENSE

commit 25a5253945085b69d96924ede79944e59ea885a4
parent 1949d290aef94a2382217bfec3d5ef5b021bc51f
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date:   Mon, 27 Jun 2016 12:19:50 +0200

Add asserts

Diffstat:
Msrc/ssol_quadric.c | 8+++++---
Msrc/ssol_quadric_c.h | 5++++-
Msrc/ssol_shape.c | 4+++-
Msrc/ssol_shape_c.h | 5++++-
4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/ssol_quadric.c b/src/ssol_quadric.c @@ -146,7 +146,7 @@ quadric_create(struct ssol_device* dev, struct ssol_quadric** out_quadric) ASSERT(dev && out_quadric); quadric = (struct ssol_quadric*)MEM_CALLOC - (dev->allocator, 1, sizeof(struct ssol_quadric)); + (dev->allocator, 1, sizeof(struct ssol_quadric)); if (!quadric) { res = RES_MEM_ERR; goto error; @@ -177,7 +177,7 @@ quadric_plane_create(struct ssol_device* dev, struct quadric_plane** out_plane) ASSERT(dev && out_plane); plane = (struct quadric_plane*)MEM_CALLOC - (dev->allocator, 1, sizeof(struct quadric_plane)); + (dev->allocator, 1, sizeof(struct quadric_plane)); if (!plane) { res = RES_MEM_ERR; goto error; @@ -208,7 +208,7 @@ quadric_parabol_create(struct ssol_device* dev, struct quadric_parabol** out_par ASSERT(dev && out_parabol); parabol = (struct quadric_parabol*)MEM_CALLOC - (dev->allocator, 1, sizeof(struct quadric_parabol)); + (dev->allocator, 1, sizeof(struct quadric_parabol)); if (!parabol) { res = RES_MEM_ERR; goto error; @@ -413,6 +413,7 @@ ssol_quadric_ref_get (struct ssol_quadric* quadric) { if (!quadric) return RES_BAD_ARG; + ASSERT(QUADRIC_FIRST_TYPE <= quadric->type && quadric->type <= QUADRIC_LAST_TYPE); ref_get(&quadric->ref); return RES_OK; } @@ -422,6 +423,7 @@ ssol_quadric_ref_put (struct ssol_quadric* quadric) { if (!quadric) return RES_BAD_ARG; + ASSERT(QUADRIC_FIRST_TYPE <= quadric->type && quadric->type <= QUADRIC_LAST_TYPE); ref_put(&quadric->ref, quadric_release); return RES_OK; } diff --git a/src/ssol_quadric_c.h b/src/ssol_quadric_c.h @@ -22,7 +22,10 @@ enum quadric_type { QUADRIC_NONE, QUADRIC_PLANE, QUADRIC_PARABOL, - QUADRIC_PARABOLIC_CYLINDER + QUADRIC_PARABOLIC_CYLINDER, + + QUADRIC_FIRST_TYPE = QUADRIC_PLANE, + QUADRIC_LAST_TYPE = QUADRIC_PARABOLIC_CYLINDER }; /* The following quadric definitions are in local coordinate system. */ diff --git a/src/ssol_shape.c b/src/ssol_shape.c @@ -196,7 +196,7 @@ ssol_shape_create_punched_surface if (!dev || !out_shape) { return RES_BAD_ARG; } - + /* TODO */ return res; } @@ -205,6 +205,7 @@ ssol_shape_ref_get (struct ssol_shape* shape) { if (!shape) return RES_BAD_ARG; + ASSERT(SHAPE_FIRST_TYPE <= shape->type && shape->type <= SHAPE_LAST_TYPE); ref_get(&shape->ref); return RES_OK; } @@ -214,6 +215,7 @@ ssol_shape_ref_put (struct ssol_shape* shape) { if (!shape) return RES_BAD_ARG; + ASSERT(SHAPE_FIRST_TYPE <= shape->type && shape->type <= SHAPE_LAST_TYPE); ref_put(&shape->ref, shape_release); return RES_OK; } diff --git a/src/ssol_shape_c.h b/src/ssol_shape_c.h @@ -21,7 +21,10 @@ enum shape_type { SHAPE_NONE, SHAPE_MESH, - SHAPE_PUNCHED + SHAPE_PUNCHED, + + SHAPE_FIRST_TYPE = SHAPE_MESH, + SHAPE_LAST_TYPE = SHAPE_PUNCHED }; struct shape_mesh {