|
Blender V5.0
|
Inherits blender::fn::lazy_function::GraphExecutorSideEffectProvider.
Public Member Functions | |
| ClosureIntermediateGraphSideEffectProvider (const lf::FunctionNode &body_node) | |
| Vector< const lf::FunctionNode * > | get_nodes_with_side_effects (const lf::Context &context) const override |
| Public Member Functions inherited from blender::fn::lazy_function::GraphExecutorSideEffectProvider | |
| virtual | ~GraphExecutorSideEffectProvider ()=default |
Evaluating a closure lazy function creates a wrapper lazy function graph around it which handles things like type conversion and missing inputs. This side effect provider is used to make sure that if the closure itself contains a side-effect node (e.g. a viewer), the wrapper graph will also have a side-effect node. Otherwise, the inner side-effect node will not be executed in some cases.
Definition at line 38 of file geometry_nodes_closure_zone.cc.
|
inline |
Definition at line 47 of file geometry_nodes_closure_zone.cc.
|
inlineoverridevirtual |
Reimplemented from blender::fn::lazy_function::GraphExecutorSideEffectProvider.
Definition at line 52 of file geometry_nodes_closure_zone.cc.
References blender::nodes::GeoNodesUserData::call_data, blender::nodes::GeoNodesUserData::compute_context, blender::ComputeContext::hash(), blender::Span< T >::is_empty(), blender::nodes::GeoNodesSideEffectNodes::nodes_by_context, and blender::nodes::GeoNodesCallData::side_effect_nodes.