|
Blender
V2.93
|
#include <stdlib.h>#include <string.h>#include "BLI_ghash.h"#include "BLI_mempool.h"#include "BLI_utildefines.h"#include "DNA_outliner_types.h"#include "BKE_outliner_treehash.h"#include "MEM_guardedalloc.h"Go to the source code of this file.
Classes | |
| struct | TseGroup |
Typedefs | |
| typedef struct TseGroup | TseGroup |
Tree hash for the outliner space.
Definition in file outliner_treehash.c.
| void BKE_outliner_treehash_add_element | ( | void * | treehash, |
| TreeStoreElem * | elem | ||
| ) |
Definition at line 165 of file outliner_treehash.c.
References BLI_ghash_ensure_p(), TseGroup::lastused, tse_group_add_element(), and tse_group_create().
Referenced by check_persistent(), and fill_treehash().
| void BKE_outliner_treehash_clear_used | ( | void * | treehash | ) |
Definition at line 146 of file outliner_treehash.c.
References BLI_ghashIterator_getValue(), GHASH_ITER, and TseGroup::lastused.
Referenced by outliner_storage_cleanup().
| void* BKE_outliner_treehash_create_from_treestore | ( | BLI_mempool * | treestore | ) |
Definition at line 134 of file outliner_treehash.c.
References BLI_ghash_new_ex(), BLI_mempool_len(), fill_treehash(), tse_cmp(), and tse_hash().
Referenced by check_persistent().
| void BKE_outliner_treehash_free | ( | void * | treehash | ) |
Definition at line 247 of file outliner_treehash.c.
References BLI_assert, BLI_ghash_free(), free_treehash_group(), and NULL.
Referenced by outliner_free(), and outliner_storage_cleanup().
| TreeStoreElem* BKE_outliner_treehash_lookup_any | ( | void * | treehash, |
| short | type, | ||
| short | nr, | ||
| struct ID * | id | ||
| ) |
Definition at line 234 of file outliner_treehash.c.
References BKE_outliner_treehash_lookup_group(), BLI_assert, TseGroup::elems, NULL, and type.
Referenced by outliner_find_tse().
|
static |
Definition at line 192 of file outliner_treehash.c.
References BLI_assert, BLI_ghash_lookup(), id, TreeStoreElem::id, TreeStoreElem::nr, TSE_SOME_ID, type, and TreeStoreElem::type.
Referenced by BKE_outliner_treehash_lookup_any(), and BKE_outliner_treehash_lookup_unused().
| TreeStoreElem* BKE_outliner_treehash_lookup_unused | ( | void * | treehash, |
| short | type, | ||
| short | nr, | ||
| struct ID * | id | ||
| ) |
Definition at line 204 of file outliner_treehash.c.
References BKE_outliner_treehash_lookup_group(), BLI_assert, TseGroup::elems, TseGroup::lastused, NULL, size(), TseGroup::size, type, and TreeStoreElem::used.
Referenced by check_persistent().
| void* BKE_outliner_treehash_rebuild_from_treestore | ( | void * | treehash, |
| BLI_mempool * | treestore | ||
| ) |
Definition at line 156 of file outliner_treehash.c.
References BLI_assert, BLI_ghash_clear_ex(), BLI_mempool_len(), fill_treehash(), free_treehash_group(), and NULL.
Referenced by outliner_build_tree(), and outliner_storage_cleanup().
| void BKE_outliner_treehash_remove_element | ( | void * | treehash, |
| TreeStoreElem * | elem | ||
| ) |
Definition at line 178 of file outliner_treehash.c.
References BLI_assert, BLI_ghash_lookup(), BLI_ghash_remove(), free_treehash_group(), NULL, TseGroup::size, and tse_group_remove_element().
|
static |
Definition at line 121 of file outliner_treehash.c.
References BKE_outliner_treehash_add_element(), BLI_assert, BLI_mempool_iternew(), and BLI_mempool_iterstep().
Referenced by BKE_outliner_treehash_create_from_treestore(), and BKE_outliner_treehash_rebuild_from_treestore().
|
static |
Definition at line 141 of file outliner_treehash.c.
References tse_group_free().
Referenced by BKE_outliner_treehash_free(), BKE_outliner_treehash_rebuild_from_treestore(), and BKE_outliner_treehash_remove_element().
|
static |
Definition at line 114 of file outliner_treehash.c.
References Freestyle::a, TreeStoreElem::id, TreeStoreElem::nr, and TreeStoreElem::type.
Referenced by BKE_outliner_treehash_create_from_treestore().
|
static |
Definition at line 56 of file outliner_treehash.c.
References TseGroup::allocated, TseGroup::elems, MEM_reallocN, TseGroup::size, and UNLIKELY.
Referenced by BKE_outliner_treehash_add_element().
|
static |
Definition at line 46 of file outliner_treehash.c.
References TseGroup::allocated, TseGroup::elems, TseGroup::lastused, MEM_mallocN, and TseGroup::size.
Referenced by BKE_outliner_treehash_add_element().
|
static |
Definition at line 90 of file outliner_treehash.c.
References TseGroup::elems, and MEM_freeN.
Referenced by free_treehash_group().
|
static |
Definition at line 67 of file outliner_treehash.c.
References TseGroup::allocated, BLI_assert, TseGroup::elems, MAX2, MEM_reallocN, TseGroup::size, and UNLIKELY.
Referenced by BKE_outliner_treehash_remove_element().
|
static |
Definition at line 96 of file outliner_treehash.c.
References BLI_assert, BLI_ghashutil_ptrhash(), hash, TreeStoreElem::id, TreeStoreElem::nr, ptr, TSE_SOME_ID, and TreeStoreElem::type.
Referenced by BKE_outliner_treehash_create_from_treestore().