Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-04-17 07:17:24 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-04-17 07:21:24 +0300
commite12c08e8d170b7ca40f204a5b0423c23a9fbc2c1 (patch)
tree8cf3453d12edb177a218ef8009357518ec6cab6a /source/blender/bmesh/intern/bmesh_iterators.c
parentb3dabc200a4b0399ec6b81f2ff2730d07b44fcaa (diff)
ClangFormat: apply to source, most of intern
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_iterators.c')
-rw-r--r--source/blender/bmesh/intern/bmesh_iterators.c863
1 files changed, 430 insertions, 433 deletions
diff --git a/source/blender/bmesh/intern/bmesh_iterators.c b/source/blender/bmesh/intern/bmesh_iterators.c
index 31e0fc00f59..b1e20dd6058 100644
--- a/source/blender/bmesh/intern/bmesh_iterators.c
+++ b/source/blender/bmesh/intern/bmesh_iterators.c
@@ -31,20 +31,20 @@
#include "intern/bmesh_private.h"
const char bm_iter_itype_htype_map[BM_ITYPE_MAX] = {
- '\0',
- BM_VERT, /* BM_VERTS_OF_MESH */
- BM_EDGE, /* BM_EDGES_OF_MESH */
- BM_FACE, /* BM_FACES_OF_MESH */
- BM_EDGE, /* BM_EDGES_OF_VERT */
- BM_FACE, /* BM_FACES_OF_VERT */
- BM_LOOP, /* BM_LOOPS_OF_VERT */
- BM_VERT, /* BM_VERTS_OF_EDGE */
- BM_FACE, /* BM_FACES_OF_EDGE */
- BM_VERT, /* BM_VERTS_OF_FACE */
- BM_EDGE, /* BM_EDGES_OF_FACE */
- BM_LOOP, /* BM_LOOPS_OF_FACE */
- BM_LOOP, /* BM_LOOPS_OF_LOOP */
- BM_LOOP, /* BM_LOOPS_OF_EDGE */
+ '\0',
+ BM_VERT, /* BM_VERTS_OF_MESH */
+ BM_EDGE, /* BM_EDGES_OF_MESH */
+ BM_FACE, /* BM_FACES_OF_MESH */
+ BM_EDGE, /* BM_EDGES_OF_VERT */
+ BM_FACE, /* BM_FACES_OF_VERT */
+ BM_LOOP, /* BM_LOOPS_OF_VERT */
+ BM_VERT, /* BM_VERTS_OF_EDGE */
+ BM_FACE, /* BM_FACES_OF_EDGE */
+ BM_VERT, /* BM_VERTS_OF_FACE */
+ BM_EDGE, /* BM_EDGES_OF_FACE */
+ BM_LOOP, /* BM_LOOPS_OF_FACE */
+ BM_LOOP, /* BM_LOOPS_OF_LOOP */
+ BM_LOOP, /* BM_LOOPS_OF_EDGE */
};
/**
@@ -52,25 +52,25 @@ const char bm_iter_itype_htype_map[BM_ITYPE_MAX] = {
*/
int BM_iter_mesh_count(const char itype, BMesh *bm)
{
- int count;
+ int count;
- switch (itype) {
- case BM_VERTS_OF_MESH:
- count = bm->totvert;
- break;
- case BM_EDGES_OF_MESH:
- count = bm->totedge;
- break;
- case BM_FACES_OF_MESH:
- count = bm->totface;
- break;
- default:
- count = 0;
- BLI_assert(0);
- break;
- }
+ switch (itype) {
+ case BM_VERTS_OF_MESH:
+ count = bm->totvert;
+ break;
+ case BM_EDGES_OF_MESH:
+ count = bm->totedge;
+ break;
+ case BM_FACES_OF_MESH:
+ count = bm->totface;
+ break;
+ default:
+ count = 0;
+ BLI_assert(0);
+ break;
+ }
- return count;
+ return count;
}
/**
@@ -78,27 +78,26 @@ int BM_iter_mesh_count(const char itype, BMesh *bm)
*/
void *BM_iter_at_index(BMesh *bm, const char itype, void *data, int index)
{
- BMIter iter;
- void *val;
- int i;
+ BMIter iter;
+ void *val;
+ int i;
- /* sanity check */
- if (index < 0) {
- return NULL;
- }
+ /* sanity check */
+ if (index < 0) {
+ return NULL;
+ }
- val = BM_iter_new(&iter, bm, itype, data);
+ val = BM_iter_new(&iter, bm, itype, data);
- i = 0;
- while (i < index) {
- val = BM_iter_step(&iter);
- i++;
- }
+ i = 0;
+ while (i < index) {
+ val = BM_iter_step(&iter);
+ i++;
+ }
- return val;
+ return val;
}
-
/**
* \brief Iterator as Array
*
@@ -107,53 +106,55 @@ void *BM_iter_at_index(BMesh *bm, const char itype, void *data, int index)
*/
int BM_iter_as_array(BMesh *bm, const char itype, void *data, void **array, const int len)
{
- int i = 0;
+ int i = 0;
- /* sanity check */
- if (len > 0) {
- BMIter iter;
- void *ele;
+ /* sanity check */
+ if (len > 0) {
+ BMIter iter;
+ void *ele;
- for (ele = BM_iter_new(&iter, bm, itype, data); ele; ele = BM_iter_step(&iter)) {
- array[i] = ele;
- i++;
- if (i == len) {
- return len;
- }
- }
- }
+ for (ele = BM_iter_new(&iter, bm, itype, data); ele; ele = BM_iter_step(&iter)) {
+ array[i] = ele;
+ i++;
+ if (i == len) {
+ return len;
+ }
+ }
+ }
- return i;
+ return i;
}
/**
* \brief Operator Iterator as Array
*
* Sometimes its convenient to get the iterator as an array.
*/
-int BMO_iter_as_array(
- BMOpSlot slot_args[BMO_OP_MAX_SLOTS], const char *slot_name, const char restrictmask,
- void **array, const int len)
+int BMO_iter_as_array(BMOpSlot slot_args[BMO_OP_MAX_SLOTS],
+ const char *slot_name,
+ const char restrictmask,
+ void **array,
+ const int len)
{
- int i = 0;
+ int i = 0;
- /* sanity check */
- if (len > 0) {
- BMOIter oiter;
- void *ele;
+ /* sanity check */
+ if (len > 0) {
+ BMOIter oiter;
+ void *ele;
- for (ele = BMO_iter_new(&oiter, slot_args, slot_name, restrictmask); ele; ele = BMO_iter_step(&oiter)) {
- array[i] = ele;
- i++;
- if (i == len) {
- return len;
- }
- }
- }
+ for (ele = BMO_iter_new(&oiter, slot_args, slot_name, restrictmask); ele;
+ ele = BMO_iter_step(&oiter)) {
+ array[i] = ele;
+ i++;
+ if (i == len) {
+ return len;
+ }
+ }
+ }
- return i;
+ return i;
}
-
/**
* \brief Iterator as Array
*
@@ -164,143 +165,146 @@ int BMO_iter_as_array(
*
* Caller needs to free the array.
*/
-void *BM_iter_as_arrayN(
- BMesh *bm, const char itype, void *data, int *r_len,
- /* optional args to avoid an alloc (normally stack array) */
- void **stack_array, int stack_array_size)
-{
- BMIter iter;
-
- BLI_assert(stack_array_size == 0 || (stack_array_size && stack_array));
-
- /* we can't rely on coun't being set */
- switch (itype) {
- case BM_VERTS_OF_MESH:
- iter.count = bm->totvert;
- break;
- case BM_EDGES_OF_MESH:
- iter.count = bm->totedge;
- break;
- case BM_FACES_OF_MESH:
- iter.count = bm->totface;
- break;
- default:
- break;
- }
-
- if (BM_iter_init(&iter, bm, itype, data) && iter.count > 0) {
- BMElem *ele;
- BMElem **array = iter.count > stack_array_size ?
- MEM_mallocN(sizeof(ele) * iter.count, __func__) :
- stack_array;
- int i = 0;
-
- *r_len = iter.count; /* set before iterating */
-
- while ((ele = BM_iter_step(&iter))) {
- array[i++] = ele;
- }
- return array;
- }
- else {
- *r_len = 0;
- return NULL;
- }
-}
-
-void *BMO_iter_as_arrayN(
- BMOpSlot slot_args[BMO_OP_MAX_SLOTS], const char *slot_name, const char restrictmask,
- int *r_len,
- /* optional args to avoid an alloc (normally stack array) */
- void **stack_array, int stack_array_size)
-{
- BMOIter iter;
- BMElem *ele;
- int count = BMO_slot_buffer_count(slot_args, slot_name);
-
- BLI_assert(stack_array_size == 0 || (stack_array_size && stack_array));
-
- if ((ele = BMO_iter_new(&iter, slot_args, slot_name, restrictmask)) && count > 0) {
- BMElem **array = count > stack_array_size ?
- MEM_mallocN(sizeof(ele) * count, __func__) :
- stack_array;
- int i = 0;
-
- do {
- array[i++] = ele;
- } while ((ele = BMO_iter_step(&iter)));
- BLI_assert(i <= count);
-
- if (i != count) {
- if ((void **)array != stack_array) {
- array = MEM_reallocN(array, sizeof(ele) * i);
- }
- }
- *r_len = i;
- return array;
- }
- else {
- *r_len = 0;
- return NULL;
- }
-}
-
-int BM_iter_mesh_bitmap_from_filter(
- const char itype, BMesh *bm,
- BLI_bitmap *bitmap,
- bool (*test_fn)(BMElem *, void *user_data),
- void *user_data)
-{
- BMIter iter;
- BMElem *ele;
- int i;
- int bitmap_enabled = 0;
-
- BM_ITER_MESH_INDEX (ele, &iter, bm, itype, i) {
- if (test_fn(ele, user_data)) {
- BLI_BITMAP_ENABLE(bitmap, i);
- bitmap_enabled++;
- }
- else {
- BLI_BITMAP_DISABLE(bitmap, i);
- }
- }
-
- return bitmap_enabled;
+void *BM_iter_as_arrayN(BMesh *bm,
+ const char itype,
+ void *data,
+ int *r_len,
+ /* optional args to avoid an alloc (normally stack array) */
+ void **stack_array,
+ int stack_array_size)
+{
+ BMIter iter;
+
+ BLI_assert(stack_array_size == 0 || (stack_array_size && stack_array));
+
+ /* we can't rely on coun't being set */
+ switch (itype) {
+ case BM_VERTS_OF_MESH:
+ iter.count = bm->totvert;
+ break;
+ case BM_EDGES_OF_MESH:
+ iter.count = bm->totedge;
+ break;
+ case BM_FACES_OF_MESH:
+ iter.count = bm->totface;
+ break;
+ default:
+ break;
+ }
+
+ if (BM_iter_init(&iter, bm, itype, data) && iter.count > 0) {
+ BMElem *ele;
+ BMElem **array = iter.count > stack_array_size ?
+ MEM_mallocN(sizeof(ele) * iter.count, __func__) :
+ stack_array;
+ int i = 0;
+
+ *r_len = iter.count; /* set before iterating */
+
+ while ((ele = BM_iter_step(&iter))) {
+ array[i++] = ele;
+ }
+ return array;
+ }
+ else {
+ *r_len = 0;
+ return NULL;
+ }
+}
+
+void *BMO_iter_as_arrayN(BMOpSlot slot_args[BMO_OP_MAX_SLOTS],
+ const char *slot_name,
+ const char restrictmask,
+ int *r_len,
+ /* optional args to avoid an alloc (normally stack array) */
+ void **stack_array,
+ int stack_array_size)
+{
+ BMOIter iter;
+ BMElem *ele;
+ int count = BMO_slot_buffer_count(slot_args, slot_name);
+
+ BLI_assert(stack_array_size == 0 || (stack_array_size && stack_array));
+
+ if ((ele = BMO_iter_new(&iter, slot_args, slot_name, restrictmask)) && count > 0) {
+ BMElem **array = count > stack_array_size ? MEM_mallocN(sizeof(ele) * count, __func__) :
+ stack_array;
+ int i = 0;
+
+ do {
+ array[i++] = ele;
+ } while ((ele = BMO_iter_step(&iter)));
+ BLI_assert(i <= count);
+
+ if (i != count) {
+ if ((void **)array != stack_array) {
+ array = MEM_reallocN(array, sizeof(ele) * i);
+ }
+ }
+ *r_len = i;
+ return array;
+ }
+ else {
+ *r_len = 0;
+ return NULL;
+ }
+}
+
+int BM_iter_mesh_bitmap_from_filter(const char itype,
+ BMesh *bm,
+ BLI_bitmap *bitmap,
+ bool (*test_fn)(BMElem *, void *user_data),
+ void *user_data)
+{
+ BMIter iter;
+ BMElem *ele;
+ int i;
+ int bitmap_enabled = 0;
+
+ BM_ITER_MESH_INDEX (ele, &iter, bm, itype, i) {
+ if (test_fn(ele, user_data)) {
+ BLI_BITMAP_ENABLE(bitmap, i);
+ bitmap_enabled++;
+ }
+ else {
+ BLI_BITMAP_DISABLE(bitmap, i);
+ }
+ }
+
+ return bitmap_enabled;
}
/**
* Needed when we want to check faces, but return a loop aligned array.
*/
-int BM_iter_mesh_bitmap_from_filter_tessface(
- BMesh *bm,
- BLI_bitmap *bitmap,
- bool (*test_fn)(BMFace *, void *user_data),
- void *user_data)
-{
- BMIter iter;
- BMFace *f;
- int i;
- int j = 0;
- int bitmap_enabled = 0;
-
- BM_ITER_MESH_INDEX (f, &iter, bm, BM_FACES_OF_MESH, i) {
- if (test_fn(f, user_data)) {
- for (int tri = 2; tri < f->len; tri++) {
- BLI_BITMAP_ENABLE(bitmap, j);
- bitmap_enabled++;
- j++;
- }
- }
- else {
- for (int tri = 2; tri < f->len; tri++) {
- BLI_BITMAP_DISABLE(bitmap, j);
- j++;
- }
- }
- }
-
- return bitmap_enabled;
+int BM_iter_mesh_bitmap_from_filter_tessface(BMesh *bm,
+ BLI_bitmap *bitmap,
+ bool (*test_fn)(BMFace *, void *user_data),
+ void *user_data)
+{
+ BMIter iter;
+ BMFace *f;
+ int i;
+ int j = 0;
+ int bitmap_enabled = 0;
+
+ BM_ITER_MESH_INDEX (f, &iter, bm, BM_FACES_OF_MESH, i) {
+ if (test_fn(f, user_data)) {
+ for (int tri = 2; tri < f->len; tri++) {
+ BLI_BITMAP_ENABLE(bitmap, j);
+ bitmap_enabled++;
+ j++;
+ }
+ }
+ else {
+ for (int tri = 2; tri < f->len; tri++) {
+ BLI_BITMAP_DISABLE(bitmap, j);
+ j++;
+ }
+ }
+ }
+
+ return bitmap_enabled;
}
/**
@@ -310,17 +314,17 @@ int BM_iter_mesh_bitmap_from_filter_tessface(
*/
int BM_iter_elem_count_flag(const char itype, void *data, const char hflag, const bool value)
{
- BMIter iter;
- BMElem *ele;
- int count = 0;
+ BMIter iter;
+ BMElem *ele;
+ int count = 0;
- BM_ITER_ELEM (ele, &iter, data, itype) {
- if (BM_elem_flag_test_bool(ele, hflag) == value) {
- count++;
- }
- }
+ BM_ITER_ELEM (ele, &iter, data, itype) {
+ if (BM_elem_flag_test_bool(ele, hflag) == value) {
+ count++;
+ }
+ }
- return count;
+ return count;
}
/**
@@ -329,52 +333,46 @@ int BM_iter_elem_count_flag(const char itype, void *data, const char hflag, cons
* Counts how many flagged / unflagged items are found in this element.
*/
int BMO_iter_elem_count_flag(
- BMesh *bm, const char itype, void *data,
- const short oflag, const bool value)
-{
- BMIter iter;
- int count = 0;
-
- /* loops have no header flags */
- BLI_assert(bm_iter_itype_htype_map[itype] != BM_LOOP);
-
- switch (bm_iter_itype_htype_map[itype]) {
- case BM_VERT:
- {
- BMVert *ele;
- BM_ITER_ELEM (ele, &iter, data, itype) {
- if (BMO_vert_flag_test_bool(bm, ele, oflag) == value) {
- count++;
- }
- }
- break;
- }
- case BM_EDGE:
- {
- BMEdge *ele;
- BM_ITER_ELEM (ele, &iter, data, itype) {
- if (BMO_edge_flag_test_bool(bm, ele, oflag) == value) {
- count++;
- }
- }
- break;
- }
- case BM_FACE:
- {
- BMFace *ele;
- BM_ITER_ELEM (ele, &iter, data, itype) {
- if (BMO_face_flag_test_bool(bm, ele, oflag) == value) {
- count++;
- }
- }
- break;
- }
-
- }
- return count;
+ BMesh *bm, const char itype, void *data, const short oflag, const bool value)
+{
+ BMIter iter;
+ int count = 0;
+
+ /* loops have no header flags */
+ BLI_assert(bm_iter_itype_htype_map[itype] != BM_LOOP);
+
+ switch (bm_iter_itype_htype_map[itype]) {
+ case BM_VERT: {
+ BMVert *ele;
+ BM_ITER_ELEM (ele, &iter, data, itype) {
+ if (BMO_vert_flag_test_bool(bm, ele, oflag) == value) {
+ count++;
+ }
+ }
+ break;
+ }
+ case BM_EDGE: {
+ BMEdge *ele;
+ BM_ITER_ELEM (ele, &iter, data, itype) {
+ if (BMO_edge_flag_test_bool(bm, ele, oflag) == value) {
+ count++;
+ }
+ }
+ break;
+ }
+ case BM_FACE: {
+ BMFace *ele;
+ BM_ITER_ELEM (ele, &iter, data, itype) {
+ if (BMO_face_flag_test_bool(bm, ele, oflag) == value) {
+ count++;
+ }
+ }
+ break;
+ }
+ }
+ return count;
}
-
/**
* \brief Mesh Iter Flag Count
*
@@ -382,17 +380,17 @@ int BMO_iter_elem_count_flag(
*/
int BM_iter_mesh_count_flag(const char itype, BMesh *bm, const char hflag, const bool value)
{
- BMIter iter;
- BMElem *ele;
- int count = 0;
+ BMIter iter;
+ BMElem *ele;
+ int count = 0;
- BM_ITER_MESH (ele, &iter, bm, itype) {
- if (BM_elem_flag_test_bool(ele, hflag) == value) {
- count++;
- }
- }
+ BM_ITER_MESH (ele, &iter, bm, itype) {
+ if (BM_elem_flag_test_bool(ele, hflag) == value) {
+ count++;
+ }
+ }
- return count;
+ return count;
}
/**
@@ -424,17 +422,17 @@ int BM_iter_mesh_count_flag(const char itype, BMesh *bm, const char hflag, const
void bmiter__elem_of_mesh_begin(struct BMIter__elem_of_mesh *iter)
{
#ifdef USE_IMMUTABLE_ASSERT
- ((BMIter *)iter)->count = BLI_mempool_len(iter->pooliter.pool);
+ ((BMIter *)iter)->count = BLI_mempool_len(iter->pooliter.pool);
#endif
- BLI_mempool_iternew(iter->pooliter.pool, &iter->pooliter);
+ BLI_mempool_iternew(iter->pooliter.pool, &iter->pooliter);
}
void *bmiter__elem_of_mesh_step(struct BMIter__elem_of_mesh *iter)
{
#ifdef USE_IMMUTABLE_ASSERT
- BLI_assert(((BMIter *)iter)->count <= BLI_mempool_len(iter->pooliter.pool));
+ BLI_assert(((BMIter *)iter)->count <= BLI_mempool_len(iter->pooliter.pool));
#endif
- return BLI_mempool_iterstep(&iter->pooliter);
+ return BLI_mempool_iterstep(&iter->pooliter);
}
#ifdef USE_IMMUTABLE_ASSERT
@@ -445,274 +443,273 @@ void *bmiter__elem_of_mesh_step(struct BMIter__elem_of_mesh *iter)
* EDGE OF VERT CALLBACKS
*/
-void bmiter__edge_of_vert_begin(struct BMIter__edge_of_vert *iter)
+void bmiter__edge_of_vert_begin(struct BMIter__edge_of_vert *iter)
{
- if (iter->vdata->e) {
- iter->e_first = iter->vdata->e;
- iter->e_next = iter->vdata->e;
- }
- else {
- iter->e_first = NULL;
- iter->e_next = NULL;
- }
+ if (iter->vdata->e) {
+ iter->e_first = iter->vdata->e;
+ iter->e_next = iter->vdata->e;
+ }
+ else {
+ iter->e_first = NULL;
+ iter->e_next = NULL;
+ }
}
-void *bmiter__edge_of_vert_step(struct BMIter__edge_of_vert *iter)
+void *bmiter__edge_of_vert_step(struct BMIter__edge_of_vert *iter)
{
- BMEdge *e_curr = iter->e_next;
+ BMEdge *e_curr = iter->e_next;
- if (iter->e_next) {
- iter->e_next = bmesh_disk_edge_next(iter->e_next, iter->vdata);
- if (iter->e_next == iter->e_first) {
- iter->e_next = NULL;
- }
- }
+ if (iter->e_next) {
+ iter->e_next = bmesh_disk_edge_next(iter->e_next, iter->vdata);
+ if (iter->e_next == iter->e_first) {
+ iter->e_next = NULL;
+ }
+ }
- return e_curr;
+ return e_curr;
}
/*
* FACE OF VERT CALLBACKS
*/
-void bmiter__face_of_vert_begin(struct BMIter__face_of_vert *iter)
+void bmiter__face_of_vert_begin(struct BMIter__face_of_vert *iter)
{
- ((BMIter *)iter)->count = bmesh_disk_facevert_count(iter->vdata);
- if (((BMIter *)iter)->count) {
- iter->l_first = bmesh_disk_faceloop_find_first(iter->vdata->e, iter->vdata);
- iter->e_first = iter->l_first->e;
- iter->e_next = iter->e_first;
- iter->l_next = iter->l_first;
- }
- else {
- iter->l_first = iter->l_next = NULL;
- iter->e_first = iter->e_next = NULL;
- }
+ ((BMIter *)iter)->count = bmesh_disk_facevert_count(iter->vdata);
+ if (((BMIter *)iter)->count) {
+ iter->l_first = bmesh_disk_faceloop_find_first(iter->vdata->e, iter->vdata);
+ iter->e_first = iter->l_first->e;
+ iter->e_next = iter->e_first;
+ iter->l_next = iter->l_first;
+ }
+ else {
+ iter->l_first = iter->l_next = NULL;
+ iter->e_first = iter->e_next = NULL;
+ }
}
-void *bmiter__face_of_vert_step(struct BMIter__face_of_vert *iter)
+void *bmiter__face_of_vert_step(struct BMIter__face_of_vert *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (((BMIter *)iter)->count && iter->l_next) {
- ((BMIter *)iter)->count--;
- iter->l_next = bmesh_radial_faceloop_find_next(iter->l_next, iter->vdata);
- if (iter->l_next == iter->l_first) {
- iter->e_next = bmesh_disk_faceedge_find_next(iter->e_next, iter->vdata);
- iter->l_first = bmesh_radial_faceloop_find_first(iter->e_next->l, iter->vdata);
- iter->l_next = iter->l_first;
- }
- }
+ if (((BMIter *)iter)->count && iter->l_next) {
+ ((BMIter *)iter)->count--;
+ iter->l_next = bmesh_radial_faceloop_find_next(iter->l_next, iter->vdata);
+ if (iter->l_next == iter->l_first) {
+ iter->e_next = bmesh_disk_faceedge_find_next(iter->e_next, iter->vdata);
+ iter->l_first = bmesh_radial_faceloop_find_first(iter->e_next->l, iter->vdata);
+ iter->l_next = iter->l_first;
+ }
+ }
- if (!((BMIter *)iter)->count) {
- iter->l_next = NULL;
- }
+ if (!((BMIter *)iter)->count) {
+ iter->l_next = NULL;
+ }
- return l_curr ? l_curr->f : NULL;
+ return l_curr ? l_curr->f : NULL;
}
-
/*
* LOOP OF VERT CALLBACKS
*/
-void bmiter__loop_of_vert_begin(struct BMIter__loop_of_vert *iter)
+void bmiter__loop_of_vert_begin(struct BMIter__loop_of_vert *iter)
{
- ((BMIter *)iter)->count = bmesh_disk_facevert_count(iter->vdata);
- if (((BMIter *)iter)->count) {
- iter->l_first = bmesh_disk_faceloop_find_first(iter->vdata->e, iter->vdata);
- iter->e_first = iter->l_first->e;
- iter->e_next = iter->e_first;
- iter->l_next = iter->l_first;
- }
- else {
- iter->l_first = iter->l_next = NULL;
- iter->e_first = iter->e_next = NULL;
- }
+ ((BMIter *)iter)->count = bmesh_disk_facevert_count(iter->vdata);
+ if (((BMIter *)iter)->count) {
+ iter->l_first = bmesh_disk_faceloop_find_first(iter->vdata->e, iter->vdata);
+ iter->e_first = iter->l_first->e;
+ iter->e_next = iter->e_first;
+ iter->l_next = iter->l_first;
+ }
+ else {
+ iter->l_first = iter->l_next = NULL;
+ iter->e_first = iter->e_next = NULL;
+ }
}
-void *bmiter__loop_of_vert_step(struct BMIter__loop_of_vert *iter)
+void *bmiter__loop_of_vert_step(struct BMIter__loop_of_vert *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (((BMIter *)iter)->count) {
- ((BMIter *)iter)->count--;
- iter->l_next = bmesh_radial_faceloop_find_next(iter->l_next, iter->vdata);
- if (iter->l_next == iter->l_first) {
- iter->e_next = bmesh_disk_faceedge_find_next(iter->e_next, iter->vdata);
- iter->l_first = bmesh_radial_faceloop_find_first(iter->e_next->l, iter->vdata);
- iter->l_next = iter->l_first;
- }
- }
+ if (((BMIter *)iter)->count) {
+ ((BMIter *)iter)->count--;
+ iter->l_next = bmesh_radial_faceloop_find_next(iter->l_next, iter->vdata);
+ if (iter->l_next == iter->l_first) {
+ iter->e_next = bmesh_disk_faceedge_find_next(iter->e_next, iter->vdata);
+ iter->l_first = bmesh_radial_faceloop_find_first(iter->e_next->l, iter->vdata);
+ iter->l_next = iter->l_first;
+ }
+ }
- if (!((BMIter *)iter)->count) {
- iter->l_next = NULL;
- }
+ if (!((BMIter *)iter)->count) {
+ iter->l_next = NULL;
+ }
- /* NULL on finish */
- return l_curr;
+ /* NULL on finish */
+ return l_curr;
}
/*
* LOOP OF EDGE CALLBACKS
*/
-void bmiter__loop_of_edge_begin(struct BMIter__loop_of_edge *iter)
+void bmiter__loop_of_edge_begin(struct BMIter__loop_of_edge *iter)
{
- iter->l_first = iter->l_next = iter->edata->l;
+ iter->l_first = iter->l_next = iter->edata->l;
}
-void *bmiter__loop_of_edge_step(struct BMIter__loop_of_edge *iter)
+void *bmiter__loop_of_edge_step(struct BMIter__loop_of_edge *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->radial_next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->radial_next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- /* NULL on finish */
- return l_curr;
+ /* NULL on finish */
+ return l_curr;
}
/*
* LOOP OF LOOP CALLBACKS
*/
-void bmiter__loop_of_loop_begin(struct BMIter__loop_of_loop *iter)
+void bmiter__loop_of_loop_begin(struct BMIter__loop_of_loop *iter)
{
- iter->l_first = iter->ldata;
- iter->l_next = iter->l_first->radial_next;
+ iter->l_first = iter->ldata;
+ iter->l_next = iter->l_first->radial_next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
}
-void *bmiter__loop_of_loop_step(struct BMIter__loop_of_loop *iter)
+void *bmiter__loop_of_loop_step(struct BMIter__loop_of_loop *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->radial_next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->radial_next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- /* NULL on finish */
- return l_curr;
+ /* NULL on finish */
+ return l_curr;
}
/*
* FACE OF EDGE CALLBACKS
*/
-void bmiter__face_of_edge_begin(struct BMIter__face_of_edge *iter)
+void bmiter__face_of_edge_begin(struct BMIter__face_of_edge *iter)
{
- iter->l_first = iter->l_next = iter->edata->l;
+ iter->l_first = iter->l_next = iter->edata->l;
}
-void *bmiter__face_of_edge_step(struct BMIter__face_of_edge *iter)
+void *bmiter__face_of_edge_step(struct BMIter__face_of_edge *iter)
{
- BMLoop *current = iter->l_next;
+ BMLoop *current = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->radial_next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->radial_next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- return current ? current->f : NULL;
+ return current ? current->f : NULL;
}
/*
* VERTS OF EDGE CALLBACKS
*/
-void bmiter__vert_of_edge_begin(struct BMIter__vert_of_edge *iter)
+void bmiter__vert_of_edge_begin(struct BMIter__vert_of_edge *iter)
{
- ((BMIter *)iter)->count = 0;
+ ((BMIter *)iter)->count = 0;
}
-void *bmiter__vert_of_edge_step(struct BMIter__vert_of_edge *iter)
+void *bmiter__vert_of_edge_step(struct BMIter__vert_of_edge *iter)
{
- switch (((BMIter *)iter)->count++) {
- case 0:
- return iter->edata->v1;
- case 1:
- return iter->edata->v2;
- default:
- return NULL;
- }
+ switch (((BMIter *)iter)->count++) {
+ case 0:
+ return iter->edata->v1;
+ case 1:
+ return iter->edata->v2;
+ default:
+ return NULL;
+ }
}
/*
* VERT OF FACE CALLBACKS
*/
-void bmiter__vert_of_face_begin(struct BMIter__vert_of_face *iter)
+void bmiter__vert_of_face_begin(struct BMIter__vert_of_face *iter)
{
- iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
+ iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
}
-void *bmiter__vert_of_face_step(struct BMIter__vert_of_face *iter)
+void *bmiter__vert_of_face_step(struct BMIter__vert_of_face *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- return l_curr ? l_curr->v : NULL;
+ return l_curr ? l_curr->v : NULL;
}
/*
* EDGE OF FACE CALLBACKS
*/
-void bmiter__edge_of_face_begin(struct BMIter__edge_of_face *iter)
+void bmiter__edge_of_face_begin(struct BMIter__edge_of_face *iter)
{
- iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
+ iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
}
-void *bmiter__edge_of_face_step(struct BMIter__edge_of_face *iter)
+void *bmiter__edge_of_face_step(struct BMIter__edge_of_face *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- return l_curr ? l_curr->e : NULL;
+ return l_curr ? l_curr->e : NULL;
}
/*
* LOOP OF FACE CALLBACKS
*/
-void bmiter__loop_of_face_begin(struct BMIter__loop_of_face *iter)
+void bmiter__loop_of_face_begin(struct BMIter__loop_of_face *iter)
{
- iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
+ iter->l_first = iter->l_next = BM_FACE_FIRST_LOOP(iter->pdata);
}
-void *bmiter__loop_of_face_step(struct BMIter__loop_of_face *iter)
+void *bmiter__loop_of_face_step(struct BMIter__loop_of_face *iter)
{
- BMLoop *l_curr = iter->l_next;
+ BMLoop *l_curr = iter->l_next;
- if (iter->l_next) {
- iter->l_next = iter->l_next->next;
- if (iter->l_next == iter->l_first) {
- iter->l_next = NULL;
- }
- }
+ if (iter->l_next) {
+ iter->l_next = iter->l_next->next;
+ if (iter->l_next == iter->l_first) {
+ iter->l_next = NULL;
+ }
+ }
- return l_curr;
+ return l_curr;
}