[Bf-blender-cvs] [288b562e46b] functions: cleanup

Jacques Lucke noreply at git.blender.org
Tue Nov 26 17:31:56 CET 2019


Commit: 288b562e46b2dca93c1d131c2df3990dde922222
Author: Jacques Lucke
Date:   Tue Nov 26 16:41:31 2019 +0100
Branches: functions
https://developer.blender.org/rB288b562e46b2dca93c1d131c2df3990dde922222

cleanup

===================================================================

M	source/blender/blenkernel/BKE_inlined_node_tree.h
M	source/blender/blenkernel/intern/inlined_node_tree.cc

===================================================================

diff --git a/source/blender/blenkernel/BKE_inlined_node_tree.h b/source/blender/blenkernel/BKE_inlined_node_tree.h
index 5f77af3fd52..8fe82afb8d6 100644
--- a/source/blender/blenkernel/BKE_inlined_node_tree.h
+++ b/source/blender/blenkernel/BKE_inlined_node_tree.h
@@ -146,6 +146,10 @@ class InlinedNodeTree : BLI::NonCopyable, BLI::NonMovable {
   void to_dot__clipboard() const;
 
  private:
+  void expand_groups(Vector<XNode *> &all_nodes,
+                     Vector<XGroupInput *> &all_group_inputs,
+                     Vector<XParentNode *> &all_parent_nodes,
+                     BTreeVTreeMap &vtrees);
   void expand_group_node(XNode &group_node,
                          Vector<XNode *> &all_nodes,
                          Vector<XGroupInput *> &all_group_inputs,
diff --git a/source/blender/blenkernel/intern/inlined_node_tree.cc b/source/blender/blenkernel/intern/inlined_node_tree.cc
index 1df721dfb1f..58751383c09 100644
--- a/source/blender/blenkernel/intern/inlined_node_tree.cc
+++ b/source/blender/blenkernel/intern/inlined_node_tree.cc
@@ -102,14 +102,7 @@ InlinedNodeTree::InlinedNodeTree(bNodeTree *btree, BTreeVTreeMap &vtrees) : m_bt
   Vector<XParentNode *> all_parent_nodes;
 
   this->insert_linked_nodes_for_vtree_in_id_order(main_vtree, all_nodes, nullptr);
-
-  /* Expand node groups one after another. */
-  for (uint i = 0; i < all_nodes.size(); i++) {
-    XNode &current_node = *all_nodes[i];
-    if (is_group_node(*current_node.m_vnode)) {
-      this->expand_group_node(current_node, all_nodes, all_group_inputs, all_parent_nodes, vtrees);
-    }
-  }
+  this->expand_groups(all_nodes, all_group_inputs, all_parent_nodes, vtrees);
 
   /* Remove unused nodes. */
   for (int i = 0; i < all_nodes.size(); i++) {
@@ -142,6 +135,19 @@ InlinedNodeTree::InlinedNodeTree(bNodeTree *btree, BTreeVTreeMap &vtrees) : m_bt
   }
 }
 
+BLI_NOINLINE void InlinedNodeTree::expand_groups(Vector<XNode *> &all_nodes,
+                                                 Vector<XGroupInput *> &all_group_inputs,
+                                                 Vector<XParentNode *> &all_parent_nodes,
+                                                 BTreeVTreeMap &vtrees)
+{
+  for (uint i = 0; i < all_nodes.size(); i++) {
+    XNode &current_node = *all_nodes[i];
+    if (is_group_node(*current_node.m_vnode)) {
+      this->expand_group_node(current_node, all_nodes, all_group_inputs, all_parent_nodes, vtrees);
+    }
+  }
+}
+
 void XNode::destruct_with_sockets()
 {
   for (XInputSocket *socket : m_inputs) {



More information about the Bf-blender-cvs mailing list