2 utility functions added for projection painting.
* BLI_linklist_index() - to get an items index in a LinkList * BLI_memarena_use_malloc() - BLI_memarena_use_calloc alredy existed but there was no way to switch back to malloc. also added texnodes to cmake
This commit is contained in:
@@ -45,6 +45,7 @@ typedef struct LinkNode {
|
||||
} LinkNode;
|
||||
|
||||
int BLI_linklist_length (struct LinkNode *list);
|
||||
int BLI_linklist_index (struct LinkNode *list, void *ptr);
|
||||
|
||||
void BLI_linklist_reverse (struct LinkNode **listp);
|
||||
|
||||
|
||||
@@ -50,6 +50,7 @@ typedef struct MemArena MemArena;
|
||||
struct MemArena* BLI_memarena_new (int bufsize);
|
||||
void BLI_memarena_free (struct MemArena *ma);
|
||||
|
||||
void BLI_memarena_use_malloc (struct MemArena *ma);
|
||||
void BLI_memarena_use_calloc (struct MemArena *ma);
|
||||
|
||||
void* BLI_memarena_alloc (struct MemArena *ma, int size);
|
||||
|
||||
@@ -50,6 +50,18 @@ int BLI_linklist_length(LinkNode *list) {
|
||||
}
|
||||
}
|
||||
|
||||
int BLI_linklist_index(struct LinkNode *list, void *ptr)
|
||||
{
|
||||
int index;
|
||||
|
||||
for (index = 0; list; list= list->next, index++) {
|
||||
if (list->link == ptr)
|
||||
return index;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
void BLI_linklist_reverse(LinkNode **listp) {
|
||||
LinkNode *rhead= NULL, *cur= *listp;
|
||||
|
||||
|
||||
@@ -60,6 +60,10 @@ void BLI_memarena_use_calloc(MemArena *ma) {
|
||||
ma->use_calloc= 1;
|
||||
}
|
||||
|
||||
void BLI_memarena_use_malloc(MemArena *ma) {
|
||||
ma->use_calloc= 0;
|
||||
}
|
||||
|
||||
void BLI_memarena_free(MemArena *ma) {
|
||||
BLI_linklist_free(ma->bufs, (void(*)(void*)) MEM_freeN);
|
||||
MEM_freeN(ma);
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#
|
||||
# ***** END GPL LICENSE BLOCK *****
|
||||
|
||||
FILE(GLOB SRC intern/*.c intern/CMP_nodes/*.c intern/SHD_nodes/*.c)
|
||||
FILE(GLOB SRC intern/*.c intern/CMP_nodes/*.c intern/SHD_nodes/*.c intern/TEX_nodes/*.c)
|
||||
|
||||
SET(INC
|
||||
. ../../../intern/guardedalloc ../include ../blenlib ../makesdna
|
||||
|
||||
Reference in New Issue
Block a user