Blender Git Commit Log
Git Commits -> Revision 86fe1ec
Revision 86fe1ec by Julian Eisel (outliner-cpp-refactor) November 6, 2020, 23:15 (GMT) |
UI Code Quality: Use C++ data-structures for Outliner object hierarchy building * Use `blender::Map` over `GHash` * Use `blender::Vector` over allocated `ListBase *` Benefits: * Significantly reduces the amount of heap allocations in large trees (e.g. from O(n) to O(log(n)), where n is number of objects). * Higher type safety (no `void *`, virtually no casts). * More optimized (e.g. small buffer optimization). * More practicable, const-correct APIs with well-defined exception behavior. Code generally becomes more readable (less lines of code, less boilerplate, more logic-focused APIs because of greater language flexibility). |
Commit Details:
Full Hash: 86fe1ec96833b6e386b2fbbc663d61b3447c39cc
Parent Commit: 6f87489
Lines Changed: +22, -42
1 Modified Path:
/source/blender/editors/space_outliner/tree/tree_view_view_layer.cc (+22, -42) (Diff)