diff options
author | Jacques Lucke <jacques@blender.org> | 2022-09-07 11:24:34 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-09-07 11:24:51 +0300 |
commit | 17d8028181e268f728ced259f7f9960b0fae7722 (patch) | |
tree | fedf4dc1ce28e83b8b17f1ecbcd6b95076bdedea /source | |
parent | 2b43173fa922b04e5e1db092964aa6c263450667 (diff) |
Nodes: add owner_tree method to nodes
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/BKE_node_runtime.hh | 6 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_node_types.h | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_node_runtime.hh b/source/blender/blenkernel/BKE_node_runtime.hh index 49a6953d0a3..f2e551a9f32 100644 --- a/source/blender/blenkernel/BKE_node_runtime.hh +++ b/source/blender/blenkernel/BKE_node_runtime.hh @@ -361,6 +361,12 @@ inline const bNodeSocket &bNode::output_by_identifier(blender::StringRef identif return *this->runtime->outputs_by_identifier.lookup_as(identifier); } +inline const bNodeTree &bNode::owner_tree() const +{ + BLI_assert(blender::bke::node_tree_runtime::topology_cache_is_available(*this)); + return *this->runtime->owner_tree; +} + inline blender::StringRefNull bNode::label_or_name() const { if (this->label[0] == '\0') { diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h index 67ff6586de0..28bbd3a3e4e 100644 --- a/source/blender/makesdna/DNA_node_types.h +++ b/source/blender/makesdna/DNA_node_types.h @@ -410,6 +410,8 @@ typedef struct bNode { /** Lookup socket of this node by its identifier. */ const bNodeSocket &input_by_identifier(blender::StringRef identifier) const; const bNodeSocket &output_by_identifier(blender::StringRef identifier) const; + /** Node tree this node belongs to. */ + const bNodeTree &owner_tree() const; #endif } bNode; |