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>2012-12-12 09:04:01 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-12-12 09:04:01 +0400
commit3d69dbd44a8c14c54785833fc469ee14173c6132 (patch)
treedd6a25201b769c5312e83f1ea05290f432808ab0 /source/blender/bmesh/bmesh_class.h
parent21a2660290fd74da5adea6df944922180ffe6c91 (diff)
use openmp to thread some common bmesh operations
- BM_mesh_elem_toolflags_ensure / bmo_flag_layer_alloc / bmo_flag_layer_free / bmo_flag_layer_clear - BM_mesh_select_flush - EDBM_index_arrays_init notes: - mostly use openmp `sections` to split operations on vert/edge/face since this is a fairly minor change. - split tool flag pool in 3, this means we can allocate exact sizes needed and iterate on them in threads without alloc'ing.
Diffstat (limited to 'source/blender/bmesh/bmesh_class.h')
-rw-r--r--source/blender/bmesh/bmesh_class.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/bmesh/bmesh_class.h b/source/blender/bmesh/bmesh_class.h
index 9d797c1e602..4a370a24c7d 100644
--- a/source/blender/bmesh/bmesh_class.h
+++ b/source/blender/bmesh/bmesh_class.h
@@ -187,8 +187,9 @@ typedef struct BMesh {
/*element pools*/
struct BLI_mempool *vpool, *epool, *lpool, *fpool;
- /*operator api stuff*/
- struct BLI_mempool *toolflagpool;
+ /*operator api stuff (must be all NULL or all alloc'd)*/
+ struct BLI_mempool *vtoolflagpool, *etoolflagpool, *ftoolflagpool;
+
int stackdepth;
struct BMOperator *currentop;