[Bf-blender-cvs] [be23e6e2f27] functions: extract members from builder
Jacques Lucke
noreply at git.blender.org
Sat Jan 4 16:38:37 CET 2020
Commit: be23e6e2f27fc8f573bb2530d2ee78a61c94c084
Author: Jacques Lucke
Date: Fri Jan 3 14:21:17 2020 +0100
Branches: functions
https://developer.blender.org/rBbe23e6e2f27fc8f573bb2530d2ee78a61c94c084
extract members from builder
===================================================================
M source/blender/functions/intern/node_tree_multi_function_network/builder.cc
M source/blender/functions/intern/node_tree_multi_function_network/builder.h
M source/blender/functions/intern/node_tree_multi_function_network/generate.cc
===================================================================
diff --git a/source/blender/functions/intern/node_tree_multi_function_network/builder.cc b/source/blender/functions/intern/node_tree_multi_function_network/builder.cc
index 8ce3a721704..ce3cf074446 100644
--- a/source/blender/functions/intern/node_tree_multi_function_network/builder.cc
+++ b/source/blender/functions/intern/node_tree_multi_function_network/builder.cc
@@ -8,13 +8,15 @@ FunctionTreeMFNetworkBuilder::FunctionTreeMFNetworkBuilder(
const FunctionNodeTree &function_tree,
const PreprocessedVTreeMFData &preprocessed_function_tree_data,
const VTreeMultiFunctionMappings &function_tree_mappings,
- ResourceCollector &resources)
+ ResourceCollector &resources,
+ IndexToRefMultiMap<MFBuilderSocket> &sockets_by_fsocket_id,
+ IndexToRefMap<MFBuilderOutputSocket> &socket_by_group_input_id)
: m_function_tree(function_tree),
m_preprocessed_function_tree_data(preprocessed_function_tree_data),
m_function_tree_mappings(function_tree_mappings),
m_resources(resources),
- m_sockets_by_fsocket_id(function_tree.socket_count()),
- m_socket_by_group_input_id(function_tree.all_group_inputs().size()),
+ m_sockets_by_fsocket_id(sockets_by_fsocket_id),
+ m_socket_by_group_input_id(socket_by_group_input_id),
m_builder(BLI::make_unique<MFNetworkBuilder>())
{
}
diff --git a/source/blender/functions/intern/node_tree_multi_function_network/builder.h b/source/blender/functions/intern/node_tree_multi_function_network/builder.h
index 164f1cf5aa6..03d0345311c 100644
--- a/source/blender/functions/intern/node_tree_multi_function_network/builder.h
+++ b/source/blender/functions/intern/node_tree_multi_function_network/builder.h
@@ -65,8 +65,8 @@ class FunctionTreeMFNetworkBuilder : BLI::NonCopyable, BLI::NonMovable {
const VTreeMultiFunctionMappings &m_function_tree_mappings;
ResourceCollector &m_resources;
- IndexToRefMultiMap<MFBuilderSocket> m_sockets_by_fsocket_id;
- IndexToRefMap<MFBuilderOutputSocket> m_socket_by_group_input_id;
+ IndexToRefMultiMap<MFBuilderSocket> &m_sockets_by_fsocket_id;
+ IndexToRefMap<MFBuilderOutputSocket> &m_socket_by_group_input_id;
std::unique_ptr<MFNetworkBuilder> m_builder;
@@ -74,7 +74,9 @@ class FunctionTreeMFNetworkBuilder : BLI::NonCopyable, BLI::NonMovable {
FunctionTreeMFNetworkBuilder(const FunctionNodeTree &function_tree,
const PreprocessedVTreeMFData &preprocessed_function_tree_data,
const VTreeMultiFunctionMappings &function_tree_mappings,
- ResourceCollector &resources);
+ ResourceCollector &resources,
+ IndexToRefMultiMap<MFBuilderSocket> &sockets_by_fsocket_id,
+ IndexToRefMap<MFBuilderOutputSocket> &socket_by_group_input_id);
const FunctionNodeTree &function_tree() const
{
diff --git a/source/blender/functions/intern/node_tree_multi_function_network/generate.cc b/source/blender/functions/intern/node_tree_multi_function_network/generate.cc
index dd19a64b15a..dfb1b1e96c0 100644
--- a/source/blender/functions/intern/node_tree_multi_function_network/generate.cc
+++ b/source/blender/functions/intern/node_tree_multi_function_network/generate.cc
@@ -135,8 +135,16 @@ std::unique_ptr<FunctionTreeMFNetwork> generate_node_tree_multi_function_network
{
const VTreeMultiFunctionMappings &mappings = get_function_tree_multi_function_mappings();
PreprocessedVTreeMFData preprocessed_data{function_tree};
-
- FunctionTreeMFNetworkBuilder builder(function_tree, preprocessed_data, mappings, resources);
+ IndexToRefMultiMap<MFBuilderSocket> sockets_by_fsocket_id(function_tree.all_sockets().size());
+ IndexToRefMap<MFBuilderOutputSocket> socket_by_group_input_id(
+ function_tree.all_group_inputs().size());
+
+ FunctionTreeMFNetworkBuilder builder(function_tree,
+ preprocessed_data,
+ mappings,
+ resources,
+ sockets_by_fsocket_id,
+ socket_by_group_input_id);
if (!insert_nodes(builder, mappings)) {
BLI_assert(false);
}
More information about the Bf-blender-cvs
mailing list