diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-08-16 17:02:34 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-08-16 17:02:34 +0400 |
commit | 1677758e459dbbbc0ad8bd2cd87bfaf925414952 (patch) | |
tree | 312208c4701ca3fb88bf3f9ece944faf06b0de1d /source/blender/blenlib/BLI_linklist.h | |
parent | d75e14b31e5e65d1e38b1ca4688a42a346ac9495 (diff) |
new bmesh queries BM_face_exists_overlap, BM_face_exists_overlap_subset
the subset version of the function checks if any faces has all its verts in the given array.
also made some additions to linklist functions (arena and pool versions of append).
Diffstat (limited to 'source/blender/blenlib/BLI_linklist.h')
-rw-r--r-- | source/blender/blenlib/BLI_linklist.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/source/blender/blenlib/BLI_linklist.h b/source/blender/blenlib/BLI_linklist.h index 9c1e1f88bab..2ca363ee780 100644 --- a/source/blender/blenlib/BLI_linklist.h +++ b/source/blender/blenlib/BLI_linklist.h @@ -54,10 +54,16 @@ struct LinkNode *BLI_linklist_find(struct LinkNode *list, int index); void BLI_linklist_reverse(struct LinkNode **listp); +void BLI_linklist_prepend_nlink(struct LinkNode **listp, void *ptr, struct LinkNode *nlink); void BLI_linklist_prepend(struct LinkNode **listp, void *ptr); -void BLI_linklist_append(struct LinkNode **listp, void *ptr); void BLI_linklist_prepend_arena(struct LinkNode **listp, void *ptr, struct MemArena *ma); void BLI_linklist_prepend_pool(struct LinkNode **listp, void *ptr, struct BLI_mempool *mempool); + +void BLI_linklist_append_nlink(LinkNode **listp, void *ptr, LinkNode *nlink); +void BLI_linklist_append(struct LinkNode **listp, void *ptr); +void BLI_linklist_append_arena(LinkNode **listp, void *ptr, struct MemArena *ma); +void BLI_linklist_append_pool(LinkNode **listp, void *ptr, struct BLI_mempool *mempool); + void *BLI_linklist_pop(struct LinkNode **listp); void *BLI_linklist_pop_pool(struct LinkNode **listp, struct BLI_mempool *mempool); void BLI_linklist_insert_after(struct LinkNode **listp, void *ptr); @@ -67,4 +73,7 @@ void BLI_linklist_freeN(struct LinkNode *list); void BLI_linklist_free_pool(LinkNode *list, LinkNodeFreeFP freefunc, struct BLI_mempool *mempool); void BLI_linklist_apply(struct LinkNode *list, LinkNodeApplyFP applyfunc, void *userdata); -#endif +#define BLI_linklist_prepend_alloca(listp, ptr) \ + BLI_linklist_prepend_nlink(listp, ptr, alloca(sizeof(LinkNode))) + +#endif /* __BLI_LINKLIST_H__ */ |