|
Blender V5.0
|
Inherits blender::fn::lazy_function::LazyFunction.
Additional Inherited Members | |
| Protected Attributes inherited from blender::fn::lazy_function::LazyFunction | |
| const char * | debug_name_ = "unknown" |
| Vector< Input > | inputs_ |
| Vector< Output > | outputs_ |
| bool | allow_missing_requested_inputs_ = false |
Definition at line 233 of file geometry_nodes_foreach_geometry_element_zone.cc.
|
inline |
Definition at line 261 of file geometry_nodes_foreach_geometry_element_zone.cc.
References BLI_assert, blender::fn::lazy_function::LazyFunction::debug_name_, blender::IndexRange::from_begin_size(), i, blender::nodes::ZoneBuildInfo::indices, blender::nodes::initialize_zone_wrapper(), blender::nodes::ZoneFunctionIndices::inputs, blender::fn::lazy_function::LazyFunction::inputs_, blender::nodes::ZoneFunctionIndices::main, blender::fn::lazy_function::LazyFunction::outputs_, and blender::fn::lazy_function::Used.
|
inline |
Definition at line 650 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::fn::lazy_function::Graph::add_function(), blender::fn::lazy_function::Graph::add_link(), blender::VectorSet< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add_new(), BLI_assert, blender::nodes::ForeachElementComponent::body_nodes_range, blender::nodes::ForeachGeometryElementEvalStorage::components, blender::nodes::ForeachElementComponent::element_geometries, SocketValueVariant::From(), NodeGeometryForeachGeometryElementOutput::generation_items, blender::nodes::ForeachGeometryElementEvalStorage::graph, i, blender::IndexRange::index_range(), blender::VectorSet< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::index_range(), blender::nodes::ForeachElementComponent::index_values, blender::fn::lazy_function::Node::input(), NodeGeometryForeachGeometryElementOutput::input_items, blender::nodes::ForeachElementComponent::item_input_values, NodeForeachGeometryElementGenerationItems::items_num, NodeForeachGeometryElementInputItems::items_num, NodeForeachGeometryElementMainItems::items_num, blender::nodes::ForeachGeometryElementEvalStorage::lf_body_nodes, NodeGeometryForeachGeometryElementOutput::main_items, blender::nodes::ForeachGeometryElementEvalStorage::or_function, blender::fn::lazy_function::Node::output(), blender::nodes::ForeachGeometryElementEvalStorage::reduce_function, blender::fn::lazy_function::InputSocket::set_default_value(), and blender::nodes::ForeachGeometryElementEvalStorage::total_iterations_num.
Referenced by initialize_execution_graph().
|
inlineoverridevirtual |
Destruct the storage created in init_storage.
Reimplemented from blender::fn::lazy_function::LazyFunction.
Definition at line 315 of file geometry_nodes_foreach_geometry_element_zone.cc.
|
inlineoverridevirtual |
Needs to be implemented by subclasses. This is separate from execute so that additional debugging logic can be implemented in execute.
Implements blender::fn::lazy_function::LazyFunction.
Definition at line 324 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::nodes::geo_eval_log::GeoTreeLogger::allocator, initialize_execution_graph(), blender::nodes::geo_eval_log::GeoTreeLogger::node_warnings, and params.
|
inlineoverridevirtual |
Allocates storage for this function. The storage will be passed to every call to execute. If the function does not keep track of any state, this does not have to be implemented.
Reimplemented from blender::fn::lazy_function::LazyFunction.
Definition at line 310 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::LinearAllocator< Allocator >::construct().
|
inline |
Definition at line 359 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::fn::lazy_function::Graph::add_input(), blender::fn::lazy_function::Graph::add_output(), blender::nodes::ForeachGeometryElementEvalStorage::allocator, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), blender::nodes::ForeachGeometryElementEvalStorage::body_execute_wrapper, build_graph_contents(), DEG_get_original(), extract(), blender::nodes::ForeachGeometryElementEvalStorage::graph, blender::nodes::ForeachGeometryElementEvalStorage::graph_executor, blender::nodes::ForeachGeometryElementEvalStorage::graph_executor_storage, i, input, blender::fn::lazy_function::LazyFunction::inputs_, blender::nodes::ForeachGeometryElementEvalStorage::lf_body_nodes, lock, blender::nodes::ForeachGeometryElementEvalStorage::main_geometry, output, blender::fn::lazy_function::LazyFunction::outputs_, params, prepare_components(), bNodeTree::runtime, blender::nodes::ForeachGeometryElementEvalStorage::side_effect_provider, and blender::fn::lazy_function::Graph::update_node_indices().
Referenced by execute_impl().
|
inlineoverridevirtual |
Reimplemented from blender::fn::lazy_function::LazyFunction.
Definition at line 771 of file geometry_nodes_foreach_geometry_element_zone.cc.
References i, blender::fn::lazy_function::LazyFunction::inputs_, and blender::nodes::zone_wrapper_input_name().
|
inlineoverridevirtual |
Reimplemented from blender::fn::lazy_function::LazyFunction.
Definition at line 776 of file geometry_nodes_foreach_geometry_element_zone.cc.
References i, blender::fn::lazy_function::LazyFunction::outputs_, and blender::nodes::zone_wrapper_output_name().
|
inline |
Definition at line 417 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::bke::SocketValueVariant::allocate_single(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BLI_assert, blender::nodes::ForeachElementComponent::body_nodes_range, blender::nodes::ForeachGeometryElementEvalStorage::components, NodeGeometryForeachGeometryElementOutput::domain, blender::bke::AttributeAccessor::domain_size(), ELEM, blender::nodes::ForeachElementComponent::element_geometries, blender::nodes::ForeachElementComponent::emplace_field_context(), extract(), blender::nodes::ForeachElementComponent::field_context, blender::nodes::ForeachElementComponent::field_evaluator, blender::IndexRange::from_begin_size(), blender::bke::GeometrySet::get_components(), blender::bke::GeometrySet::get_grease_pencil(), blender::GVArrayCommon::get_to_uninitialized(), i, blender::nodes::ForeachElementComponent::id, blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), blender::nodes::ForeachElementComponent::index_values, blender::nodes::ForeachElementComponent::input_attributes(), NodeGeometryForeachGeometryElementOutput::input_items, blender::bke::CurvesGeometry::is_empty(), NodeForeachGeometryElementInputItems::items, NodeForeachGeometryElementInputItems::items_num, blender::nodes::ForeachGeometryElementEvalStorage::main_geometry, mask(), blender::threading::parallel_for(), params, pos, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), NodeForeachGeometryElementInputItem::socket_type, blender::bke::greasepencil::Drawing::strokes(), and try_extract_element_geometries().
Referenced by initialize_execution_graph().
|
inline |
Definition at line 536 of file geometry_nodes_foreach_geometry_element_zone.cc.
References blender::geometry::extract_curves(), blender::geometry::extract_curves_points(), blender::geometry::extract_greasepencil_layer_curves(), blender::geometry::extract_greasepencil_layer_points(), blender::geometry::extract_greasepencil_layers(), blender::geometry::extract_instances(), blender::geometry::extract_mesh_edges(), blender::geometry::extract_mesh_faces(), blender::geometry::extract_mesh_vertices(), blender::geometry::extract_pointcloud_points(), blender::bke::GeometrySet::get_curves(), blender::bke::GeometrySet::get_grease_pencil(), blender::bke::GeometrySet::get_instances(), blender::bke::GeometrySet::get_mesh(), blender::bke::GeometrySet::get_pointcloud(), i, blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), mask(), and blender::Array< T, InlineBufferCapacity, Allocator >::size().
Referenced by prepare_components().
| ItemIndices blender::nodes::LazyFunctionForForeachGeometryElementZone::generation |
Definition at line 255 of file geometry_nodes_foreach_geometry_element_zone.cc.
| ItemIndices blender::nodes::LazyFunctionForForeachGeometryElementZone::inputs |
Definition at line 253 of file geometry_nodes_foreach_geometry_element_zone.cc.
| ItemIndices blender::nodes::LazyFunctionForForeachGeometryElementZone::main |
Definition at line 254 of file geometry_nodes_foreach_geometry_element_zone.cc.