|
Blender V5.0
|
Classes | |
| struct | StructureTypeInferenceResult |
Enumerations | |
| enum class | DataRequirement : int8_t { None , Field , Single , Grid , List , Invalid } |
| enum class | ZoneInOutChange { None = 0 , In = (1 << 1) , Out = (1 << 2) } |
|
strong |
| Enumerator | |
|---|---|
| None | |
| Field | |
| Single | |
| Grid | |
| List | |
| Invalid | |
Definition at line 92 of file node_tree_structure_type_inferencing.cc.
|
strong |
| Enumerator | |
|---|---|
| None | |
| In | |
| Out | |
Definition at line 338 of file node_tree_structure_type_inferencing.cc.
|
static |
Definition at line 27 of file node_tree_structure_type_inferencing.cc.
References Array< T, InlineBufferCapacity, Allocator >::as_mutable_span(), blender::nodes::DependentField, blender::nodes::OutputFieldDependency::field_type(), blender::nodes::FieldSource, blender::array_utils::fill_index_range(), i, blender::Span< T >::index_range(), blender::nodes::OutputFieldDependency::linked_input_indices(), blender::nodes::StructureTypeInterface::OutputDependency::linked_inputs, blender::nodes::None, output, blender::nodes::SocketDeclaration::output_field_dependency, blender::nodes::PartiallyDependent, Array< T, InlineBufferCapacity, Allocator >::reinitialize(), blender::Span< T >::size(), blender::nodes::SocketDeclaration::structure_type, and blender::nodes::StructureTypeInterface::OutputDependency::type.
Referenced by calc_node_interfaces().
|
static |
Definition at line 82 of file node_tree_structure_type_inferencing.cc.
References calc_node_interface(), i, and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 270 of file node_tree_structure_type_inferencing.cc.
Referenced by repeat_zone_requirements_propagate(), simulation_zone_requirements_propagate(), store_auto_output_structure_types(), and store_group_input_structure_types().
|
static |
Definition at line 874 of file node_tree_structure_type_inferencing.cc.
References calc_node_interfaces(), find_auto_structure_type_sockets(), i, init_input_requirements(), propagate_left_to_right(), propagate_right_to_left(), result, blender::nodes::socket_type_always_single(), store_auto_output_structure_types(), store_group_input_structure_types(), store_group_output_structure_types(), tree, and bNodeSocket::type.
Referenced by update_structure_type_interface().
|
static |
Definition at line 114 of file node_tree_structure_type_inferencing.cc.
References BLI_assert_unreachable, Field, Grid, Invalid, List, None, and Single.
Referenced by store_auto_output_structure_types(), and store_group_input_structure_types().
| blender::bke::node_structure_type_inferencing::ENUM_OPERATORS | ( | ZoneInOutChange | , |
| ZoneInOutChange::Out | ) |
References Out.
|
static |
Definition at line 134 of file node_tree_structure_type_inferencing.cc.
References blender::bke::bNodeZoneType::get_corresponding_output(), i, NODE_CLOSURE_OUTPUT, NODE_INTERFACE_SOCKET_STRUCTURE_TYPE_AUTO, blender::bits::MutableBitSpan::set_all(), blender::bits::MutableBitSpan::slice(), bNodeTreeInterfaceSocket::structure_type, NodeClosureInputItem::structure_type, NodeClosureOutputItem::structure_type, NodeCombineBundleItem::structure_type, NodeEvaluateClosureInputItem::structure_type, NodeEvaluateClosureOutputItem::structure_type, NodeSeparateBundleItem::structure_type, tree, and blender::bke::zone_type_by_node_type().
Referenced by calc_structure_type_interface().
|
static |
Definition at line 797 of file node_tree_structure_type_inferencing.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Vector< T, InlineBufferCapacity, Allocator >::append_non_duplicates(), input, blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty(), blender::Stack< T, InlineBufferCapacity, Allocator >::pop(), and blender::Stack< T, InlineBufferCapacity, Allocator >::push().
Referenced by store_group_output_structure_types().
|
static |
Definition at line 678 of file node_tree_structure_type_inferencing.cc.
References blender::nodes::Implicit, and blender::nodes::SocketDeclaration::input_field_type.
Referenced by propagate_left_to_right().
|
static |
Definition at line 224 of file node_tree_structure_type_inferencing.cc.
References Field, Grid, List, None, Single, blender::nodes::socket_type_always_single(), blender::nodes::SocketDeclaration::structure_type, and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 536 of file node_tree_structure_type_inferencing.cc.
References b.
Referenced by propagate_left_to_right(), repeat_zone_status_propagate(), and simulation_zone_status_propagate().
|
static |
Definition at line 94 of file node_tree_structure_type_inferencing.cc.
References b, Field, Invalid, None, and Single.
Referenced by calc_output_socket_requirement(), propagate_right_to_left(), repeat_zone_requirements_propagate(), simulation_zone_requirements_propagate(), and store_group_input_structure_types().
|
static |
Definition at line 687 of file node_tree_structure_type_inferencing.cc.
References blender::IndexRange::drop_back(), get_unconnected_input_structure_type(), i, blender::Span< T >::index_range(), input, left_to_right_merge(), output, propagate_zone_status(), blender::nodes::SocketDeclaration::structure_type, and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 455 of file node_tree_structure_type_inferencing.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), Field, blender::Vector< T, InlineBufferCapacity, Allocator >::first(), Grid, input, Invalid, List, merge(), None, output, propagate_zone_data_requirements(), Single, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 396 of file node_tree_structure_type_inferencing.cc.
References data, GEO_NODE_REPEAT_INPUT, GEO_NODE_REPEAT_OUTPUT, GEO_NODE_SIMULATION_INPUT, GEO_NODE_SIMULATION_OUTPUT, bNode::identifier, In, None, Out, repeat_zone_requirements_propagate(), simulation_zone_requirements_propagate(), bNode::storage, tree, and bNode::type_legacy.
Referenced by propagate_right_to_left().
|
static |
Definition at line 619 of file node_tree_structure_type_inferencing.cc.
References data, GEO_NODE_REPEAT_INPUT, GEO_NODE_REPEAT_OUTPUT, GEO_NODE_SIMULATION_INPUT, GEO_NODE_SIMULATION_OUTPUT, bNode::identifier, In, None, Out, repeat_zone_status_propagate(), simulation_zone_status_propagate(), bNode::storage, tree, and bNode::type_legacy.
Referenced by propagate_left_to_right().
|
static |
Definition at line 371 of file node_tree_structure_type_inferencing.cc.
References calc_output_socket_requirement(), i, In, merge(), None, and Out.
Referenced by propagate_zone_data_requirements().
|
static |
Definition at line 596 of file node_tree_structure_type_inferencing.cc.
References i, In, left_to_right_merge(), None, and Out.
Referenced by propagate_zone_status().
|
static |
Definition at line 345 of file node_tree_structure_type_inferencing.cc.
References calc_output_socket_requirement(), i, In, merge(), None, and Out.
Referenced by propagate_zone_data_requirements().
|
static |
Definition at line 573 of file node_tree_structure_type_inferencing.cc.
References i, In, input, left_to_right_merge(), None, Out, and output.
Referenced by propagate_zone_status().
|
static |
Definition at line 315 of file node_tree_structure_type_inferencing.cc.
References calc_output_socket_requirement(), data_requirement_to_auto_structure_type(), blender::bits::foreach_1_index(), i, and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 286 of file node_tree_structure_type_inferencing.cc.
References calc_output_socket_requirement(), data_requirement_to_auto_structure_type(), blender::IndexRange::drop_back(), i, blender::Span< T >::index_range(), blender::nodes::StructureTypeInterface::inputs, merge(), NODE_INTERFACE_SOCKET_STRUCTURE_TYPE_AUTO, None, output, bNodeTreeInterfaceSocket::structure_type, and tree.
Referenced by calc_structure_type_interface().
|
static |
Definition at line 838 of file node_tree_structure_type_inferencing.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), find_dynamic_output_linked_inputs(), i, blender::Span< T >::index_range(), NODE_INTERFACE_SOCKET_STRUCTURE_TYPE_AUTO, output, and tree.
Referenced by calc_structure_type_interface().
| bool blender::bke::node_structure_type_inferencing::update_structure_type_interface | ( | bNodeTree & | tree | ) |
Definition at line 921 of file node_tree_structure_type_inferencing.cc.
References calc_structure_type_interface(), i, result, bNodeSocket::runtime, and tree.
Referenced by blender::ed::space_node::node_group_make_insert_selected().