diff options
Diffstat (limited to 'source/blender/nodes/NOD_node_tree_multi_function.hh')
-rw-r--r-- | source/blender/nodes/NOD_node_tree_multi_function.hh | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/source/blender/nodes/NOD_node_tree_multi_function.hh b/source/blender/nodes/NOD_node_tree_multi_function.hh index cbd7a47f090..25787231afa 100644 --- a/source/blender/nodes/NOD_node_tree_multi_function.hh +++ b/source/blender/nodes/NOD_node_tree_multi_function.hh @@ -126,8 +126,20 @@ class MFNetworkTreeMap { void add_try_match(const DNode &dnode, fn::MFNode &node) { - this->add_try_match(dnode.inputs(), node.inputs()); - this->add_try_match(dnode.outputs(), node.outputs()); + this->add_try_match(dnode.inputs().cast<const DSocket *>(), + node.inputs().cast<fn::MFSocket *>()); + this->add_try_match(dnode.outputs().cast<const DSocket *>(), + node.outputs().cast<fn::MFSocket *>()); + } + + void add_try_match(Span<const DInputSocket *> dsockets, Span<fn::MFInputSocket *> sockets) + { + this->add_try_match(dsockets.cast<const DSocket *>(), sockets.cast<fn::MFSocket *>()); + } + + void add_try_match(Span<const DOutputSocket *> dsockets, Span<fn::MFOutputSocket *> sockets) + { + this->add_try_match(dsockets.cast<const DSocket *>(), sockets.cast<fn::MFSocket *>()); } void add_try_match(Span<const DSocket *> dsockets, Span<fn::MFSocket *> sockets) @@ -277,7 +289,7 @@ class SocketMFNetworkBuilder : public MFNetworkBuilderBase { */ template<typename T> T *socket_default_value() { - return (T *)bsocket_->default_value; + return static_cast<T *>(bsocket_->default_value); } /** |