commit 77be9c16d21807b5956fdbc3efe0b0be2f1fec23
parent 290716a4bca6200bcfb04f784fb753e45e979a30
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Thu, 12 Apr 2018 14:33:40 +0200
API change: get enclosure header by copy (was by ptr).
Diffstat:
7 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/src/senc2d.h b/src/senc2d.h
@@ -240,13 +240,13 @@ senc2d_descriptor_ref_put
* case the 2 occurences of the segment have reversed vertices order and
* unique_segment_count and segment_count differ.
* By-index API accesses of segments (or properties) visit unique segments
- * for indexes in the [0 unique_segment_count[ and back-faces of the
+ * for indexes in the [0 unique_segment_count[ range and back-faces of the
* doubly-listed segments in the [unique_segment_count segment_count[ range.
******************************************************************************/
SENC2D_API res_T
senc2d_enclosure_get_header
(const struct senc2d_enclosure* enclosure,
- const struct senc2d_enclosure_header** header);
+ struct senc2d_enclosure_header* header);
SENC2D_API res_T
senc2d_enclosure_get_segment
diff --git a/src/senc2d_enclosure.c b/src/senc2d_enclosure.c
@@ -66,10 +66,10 @@ enclosure_create
res_T
senc2d_enclosure_get_header
(const struct senc2d_enclosure* enclosure,
- const struct senc2d_enclosure_header** header)
+ struct senc2d_enclosure_header* header)
{
if(!enclosure || !header) return RES_BAD_ARG;
- *header = &enclosure->data->header;
+ *header = enclosure->data->header;
return RES_OK;
}
diff --git a/src/test_senc2d_enclosure.c b/src/test_senc2d_enclosure.c
@@ -31,7 +31,7 @@ main(int argc, char** argv)
struct senc2d_scene* scn = NULL;
struct senc2d_enclosure* enclosures[2] = { NULL, NULL };
struct senc2d_enclosure* enclosure;
- const struct senc2d_enclosure_header* header;
+ struct senc2d_enclosure_header header;
struct s2d_device* s2d = NULL;
struct s2d_scene* s2d_scn = NULL;
struct s2d_shape* s2d_shp = NULL;
@@ -144,14 +144,14 @@ main(int argc, char** argv)
CHK(senc2d_enclosure_get_header(NULL, NULL) == RES_BAD_ARG);
CHK(senc2d_enclosure_get_header(enclosure, &header) == RES_OK);
- CHK(header->enclosure_id == i);
- CHK(header->enclosed_medium == (i == 0 ? 0U : 1U));
- CHK(header->segment_count == square_nsegments);
- CHK(header->unique_segment_count == square_nsegments);
- CHK(header->vertices_count == square_nvertices);
- CHK(header->is_infinite == (i == 0));
+ CHK(header.enclosure_id == i);
+ CHK(header.enclosed_medium == (i == 0 ? 0U : 1U));
+ CHK(header.segment_count == square_nsegments);
+ CHK(header.unique_segment_count == square_nsegments);
+ CHK(header.vertices_count == square_nvertices);
+ CHK(header.is_infinite == (i == 0));
- FOR_EACH(t, 0, header->segment_count) {
+ FOR_EACH(t, 0, header.segment_count) {
CHK(senc2d_enclosure_get_segment_global_id(enclosure, t, &gid) == RES_OK);
CHK(gid == t);
}
@@ -204,26 +204,26 @@ main(int argc, char** argv)
CHK(senc2d_enclosure_get_header(NULL, NULL) == RES_BAD_ARG);
CHK(senc2d_enclosure_get_header(enclosure, &header) == RES_OK);
- CHK(header->enclosure_id == 0);
- CHK(header->enclosed_medium == 0);
- CHK(header->segment_count == 2 * header->unique_segment_count);
- CHK(header->unique_segment_count == square_nsegments - 1);
- CHK(header->vertices_count == square_nvertices);
- CHK(header->is_infinite == 1);
+ CHK(header.enclosure_id == 0);
+ CHK(header.enclosed_medium == 0);
+ CHK(header.segment_count == 2 * header.unique_segment_count);
+ CHK(header.unique_segment_count == square_nsegments - 1);
+ CHK(header.vertices_count == square_nvertices);
+ CHK(header.is_infinite == 1);
- FOR_EACH(t, 0, header->unique_segment_count) {
+ FOR_EACH(t, 0, header.unique_segment_count) {
/* The first unique_segment_count segments of an enclosure
* are unique segments */
CHK(senc2d_enclosure_get_segment_global_id(enclosure, t, &gid) == RES_OK);
CHK(gid == t);
}
- FOR_EACH(n, 0, header->unique_segment_count) {
+ FOR_EACH(n, 0, header.unique_segment_count) {
/* Put geometry in a 2D view */
CHK(s2d_shape_create_line_segments(s2d, &s2d_shp) == RES_OK);
- CHK(s2d_line_segments_setup_indexed_vertices(s2d_shp, header->segment_count,
- senc2d_enclosure_get_segment__, header->vertices_count, &s2d_attribs,
+ CHK(s2d_line_segments_setup_indexed_vertices(s2d_shp, header.segment_count,
+ senc2d_enclosure_get_segment__, header.vertices_count, &s2d_attribs,
1, enclosure)
== RES_OK);
diff --git a/src/test_senc2d_many_enclosures.c b/src/test_senc2d_many_enclosures.c
@@ -127,13 +127,13 @@ main(int argc, char** argv)
FOR_EACH(e, 0, count) {
struct senc2d_enclosure* enclosure;
- const struct senc2d_enclosure_header* header;
+ struct senc2d_enclosure_header header;
CHK(senc2d_descriptor_get_enclosure(desc, e, &enclosure) == RES_OK);
CHK(senc2d_enclosure_get_header(enclosure, &header) == RES_OK);
- CHK(header->segment_count ==
+ CHK(header.segment_count ==
(e == 0 /* Outermost enclosure: NB_CIRC_1*NB_CIRC_1 circles */
? NB_CIRC_1 * NB_CIRC_1 * circ_seg_count
- : (header->enclosed_medium == 0
+ : (header.enclosed_medium == 0
? circ_seg_count /* Innermost enclosures: 1 circle */
: 2 * circ_seg_count))); /* Other enclosures: 2 circles */
CHK(senc2d_enclosure_ref_put(enclosure) == RES_OK);
diff --git a/src/test_senc2d_many_segments.c b/src/test_senc2d_many_segments.c
@@ -116,10 +116,10 @@ main(int argc, char** argv)
CHK(count == 1 + NB_CIRC);
FOR_EACH(i, 0, count) {
struct senc2d_enclosure* enclosure;
- const struct senc2d_enclosure_header* header;
+ struct senc2d_enclosure_header header;
CHK(senc2d_descriptor_get_enclosure(desc, i, &enclosure) == RES_OK);
CHK(senc2d_enclosure_get_header(enclosure, &header) == RES_OK);
- CHK(header->segment_count ==
+ CHK(header.segment_count ==
i ? circ_seg_count : NB_CIRC * circ_seg_count);
CHK(senc2d_enclosure_ref_put(enclosure) == RES_OK);
}
diff --git a/src/test_senc2d_sample_enclosure.c b/src/test_senc2d_sample_enclosure.c
@@ -31,7 +31,7 @@ main(int argc, char** argv)
struct senc2d_device* dev = NULL;
struct senc2d_scene* scn = NULL;
struct senc2d_enclosure* enclosure = NULL;
- const struct senc2d_enclosure_header* header = NULL;
+ struct senc2d_enclosure_header header;
struct s2d_device* s2d = NULL;
struct s2d_scene* s2d_scn = NULL;
struct s2d_scene_view* s2d_view = NULL;
@@ -80,8 +80,8 @@ main(int argc, char** argv)
/* Put enclosure in a 2D view... */
S2D(shape_create_line_segments(s2d, &s2d_shp));
- S2D(line_segments_setup_indexed_vertices(s2d_shp, header->segment_count,
- senc2d_enclosure_get_segment__, header->vertices_count, &vrtx_get, 1,
+ S2D(line_segments_setup_indexed_vertices(s2d_shp, header.segment_count,
+ senc2d_enclosure_get_segment__, header.vertices_count, &vrtx_get, 1,
enclosure));
S2D(scene_attach_shape(s2d_scn, s2d_shp));
diff --git a/src/test_senc2d_utils.h b/src/test_senc2d_utils.h
@@ -146,7 +146,7 @@ dump_enclosure
const char* name)
{
struct senc2d_enclosure* enclosure;
- const struct senc2d_enclosure_header* header;
+ struct senc2d_enclosure_header header;
FILE* stream;
unsigned count, i;
@@ -159,12 +159,12 @@ dump_enclosure
stream = fopen(name, "w");
CHK(stream);
- FOR_EACH(i, 0, header->vertices_count) {
+ FOR_EACH(i, 0, header.vertices_count) {
double tmp[2];
CHK(senc2d_enclosure_get_vertex(enclosure, i, tmp) == RES_OK);
fprintf(stream, "v %g %g 0\n", SPLIT2(tmp));
}
- FOR_EACH(i, 0, header->segment_count) {
+ FOR_EACH(i, 0, header.segment_count) {
unsigned indices[2];
CHK(senc2d_enclosure_get_segment(enclosure, i, indices) == RES_OK);
fprintf(stream, "l %lu %lu\n",