Blender V4.3
blender::nodes::BuildGraphParams Struct Reference

Public Member Functions

 BuildGraphParams (lf::Graph &lf_graph)
 

Public Attributes

lf::Graphlf_graph
 
MultiValueMap< const bNodeSocket *, lf::InputSocket * > lf_inputs_by_bsocket
 
Map< const bNodeSocket *, lf::OutputSocket * > lf_output_by_bsocket
 
Map< const bNodeSocket *, lf::OutputSocket * > usage_by_bsocket
 
Map< const bNodeSocket *, lf::InputSocket * > lf_attribute_set_input_by_output_geometry_bsocket
 
Map< const bNodeLink *, lf::InputSocket * > lf_input_by_multi_input_link
 
Map< const bNodeLink *, lf::InputSocket * > lf_input_by_border_link
 
Set< lf::InputSocket * > socket_usage_inputs
 
MultiValueMap< int, lf::InputSocket * > lf_attribute_set_input_by_field_source_index
 
MultiValueMap< int, lf::InputSocket * > lf_attribute_set_input_by_caller_propagation_index
 
Map< Vector< lf::OutputSocket * >, lf::OutputSocket * > socket_usages_combination_cache
 

Detailed Description

Definition at line 1512 of file geometry_nodes_lazy_function.cc.

Constructor & Destructor Documentation

◆ BuildGraphParams()

blender::nodes::BuildGraphParams::BuildGraphParams ( lf::Graph & lf_graph)
inline

Definition at line 1553 of file geometry_nodes_lazy_function.cc.

Member Data Documentation

◆ lf_attribute_set_input_by_caller_propagation_index

MultiValueMap<int, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_attribute_set_input_by_caller_propagation_index

Definition at line 1548 of file geometry_nodes_lazy_function.cc.

◆ lf_attribute_set_input_by_field_source_index

MultiValueMap<int, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_attribute_set_input_by_field_source_index

Collect input sockets that anonymous attribute sets based on fields or group inputs have to be linked to later.

Definition at line 1547 of file geometry_nodes_lazy_function.cc.

◆ lf_attribute_set_input_by_output_geometry_bsocket

Map<const bNodeSocket *, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_attribute_set_input_by_output_geometry_bsocket

Nodes that propagate anonymous attributes have to know which of those attributes to propagate. For that they have an attribute set input for each geometry output.

Definition at line 1527 of file geometry_nodes_lazy_function.cc.

◆ lf_graph

lf::Graph& blender::nodes::BuildGraphParams::lf_graph

Lazy-function graph that nodes and links should be inserted into.

Definition at line 1514 of file geometry_nodes_lazy_function.cc.

◆ lf_input_by_border_link

Map<const bNodeLink *, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_input_by_border_link

This is similar to lf_inputs_by_bsocket but contains more relevant information when border links are linked to multi-input sockets.

Definition at line 1536 of file geometry_nodes_lazy_function.cc.

◆ lf_input_by_multi_input_link

Map<const bNodeLink *, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_input_by_multi_input_link

Multi-input sockets are split into separate sockets, once for each incoming link.

Definition at line 1531 of file geometry_nodes_lazy_function.cc.

◆ lf_inputs_by_bsocket

MultiValueMap<const bNodeSocket *, lf::InputSocket *> blender::nodes::BuildGraphParams::lf_inputs_by_bsocket

Map bNodeSocket to newly generated sockets. Those maps are later used to insert links.

Definition at line 1516 of file geometry_nodes_lazy_function.cc.

◆ lf_output_by_bsocket

Map<const bNodeSocket *, lf::OutputSocket *> blender::nodes::BuildGraphParams::lf_output_by_bsocket

Definition at line 1517 of file geometry_nodes_lazy_function.cc.

◆ socket_usage_inputs

Set<lf::InputSocket *> blender::nodes::BuildGraphParams::socket_usage_inputs

Keeps track of all boolean inputs that indicate whether a socket is used. Links to those sockets may be replaced with a constant-true if necessary to break dependency cycles in #fix_link_cycles.

Definition at line 1542 of file geometry_nodes_lazy_function.cc.

◆ socket_usages_combination_cache

Map<Vector<lf::OutputSocket *>, lf::OutputSocket *> blender::nodes::BuildGraphParams::socket_usages_combination_cache

Cache to avoid building the same socket combinations multiple times.

Definition at line 1551 of file geometry_nodes_lazy_function.cc.

◆ usage_by_bsocket

Map<const bNodeSocket *, lf::OutputSocket *> blender::nodes::BuildGraphParams::usage_by_bsocket

Maps sockets to corresponding generated boolean sockets that indicate whether the socket is used or not.

Definition at line 1522 of file geometry_nodes_lazy_function.cc.


The documentation for this struct was generated from the following file: