diff options
author | Jacques Lucke <jacques@blender.org> | 2020-06-09 18:08:41 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-06-09 18:08:41 +0300 |
commit | e1cc9aa7f2813004cad34a580e2faa1b7ca21db1 (patch) | |
tree | d73e31186b808c6290a6fc4ecc7bcf97844f7144 /source/blender/editors/space_file/file_ops.c | |
parent | b37fca650eeaefc0980ffa10a56c80a5ee875c01 (diff) |
Nodes: efficient node tree queries and inlining
This adds two data structures that wrap a node tree. However, they work
on different abstraction levels.
`NodeTreeRef` is an immutable structure that makes working with a node
tree in C++ much more efficient and convenient. It supports various
queries efficiently, that are not easily possible using just `bNodeTree`.
`DerivedNodeTree` builds on top of `NodeTreeRef`. It contains a flattened
view on the node tree, i.e. with node groups being inlined. Every inlined
node still knows its "call stack". It supports pretty much the same queries
as `NodeTreeRef`.
Both data structures come with a dot graph exporter for debugging purposes.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D7628
Diffstat (limited to 'source/blender/editors/space_file/file_ops.c')
0 files changed, 0 insertions, 0 deletions