Blender V5.0
blender::nodes::LazyFunctionForGizmoNode Class Reference

Inherits blender::fn::lazy_function::LazyFunction.

Public Member Functions

 LazyFunctionForGizmoNode (const bNode &bnode, MutableSpan< int > r_lf_index_by_bsocket)
void execute_impl (lf::Params &params, const lf::Context &context) const override
Public Member Functions inherited from blender::fn::lazy_function::LazyFunction
virtual ~LazyFunction ()=default
virtual std::string name () const
virtual std::string input_name (int index) const
virtual std::string output_name (int index) const
virtual void * init_storage (LinearAllocator<> &allocator) const
virtual void destruct_storage (void *storage) const
virtual void possible_output_dependencies (int output_index, FunctionRef< void(Span< int >)> fn) const
bool always_used_inputs_available (const Params &params) const
bool allow_missing_requested_inputs () const
Span< Inputinputs () const
Span< Outputoutputs () const
void execute (Params &params, const Context &context) const

Public Attributes

const lf::FunctionNodeself_node = nullptr
Vector< const bNodeLink * > gizmo_links

Additional Inherited Members

Protected Attributes inherited from blender::fn::lazy_function::LazyFunction
const char * debug_name_ = "unknown"
Vector< Inputinputs_
Vector< Outputoutputs_
bool allow_missing_requested_inputs_ = false

Detailed Description

A lazy-function that is used for gizmo nodes. All inputs are only required if the node is a side effect node. They are evaluated because their value has to be logged. The transform output should only contain the transform if it is a side effect node as well.

Definition at line 891 of file geometry_nodes_lazy_function.cc.

Constructor & Destructor Documentation

◆ LazyFunctionForGizmoNode()

blender::nodes::LazyFunctionForGizmoNode::LazyFunctionForGizmoNode ( const bNode & bnode,
MutableSpan< int > r_lf_index_by_bsocket )
inline

Member Function Documentation

◆ execute_impl()

void blender::nodes::LazyFunctionForGizmoNode::execute_impl ( lf::Params & params,
const lf::Context & context ) const
inlineoverridevirtual

Member Data Documentation

◆ gizmo_links

Vector<const bNodeLink *> blender::nodes::LazyFunctionForGizmoNode::gizmo_links

Definition at line 897 of file geometry_nodes_lazy_function.cc.

Referenced by LazyFunctionForGizmoNode().

◆ self_node

const lf::FunctionNode* blender::nodes::LazyFunctionForGizmoNode::self_node = nullptr

Definition at line 896 of file geometry_nodes_lazy_function.cc.


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