|
Blender V4.3
|
Inherits blender::fn::lazy_function::LazyFunction.
Public Member Functions | |
| LazyFunctionForIndexSwitchNode (const bNode &node, GeometryNodesLazyFunctionGraphInfo &lf_graph_info) | |
| void | execute_impl (lf::Params ¶ms, const lf::Context &) const override |
| int | values_num () const |
| void | execute_single (const int index, lf::Params ¶ms) const |
| void | execute_field (Field< int > index, lf::Params ¶ms) const |
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 ¶ms) const |
| bool | allow_missing_requested_inputs () const |
| Span< Input > | inputs () const |
| Span< Output > | outputs () const |
| void | execute (Params ¶ms, const Context &context) const |
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 209 of file node_geo_index_switch.cc.
|
inline |
Definition at line 216 of file node_geo_index_switch.cc.
References NodeIndexSwitch::data_type, blender::fn::lazy_function::LazyFunction::debug_name_, blender::CPPType::get(), blender::fn::lazy_function::LazyFunction::inputs_, blender::nodes::GeometryNodeLazyFunctionGraphMapping::lf_index_by_bsocket, blender::nodes::GeometryNodesLazyFunctionGraphInfo::mapping, blender::fn::lazy_function::LazyFunction::outputs_, blender::nodes::socket_type_supports_fields(), bNodeSocket::typeinfo, and blender::nodes::node_geo_index_switch_cc::value_inputs_start.
|
inline |
Definition at line 287 of file node_geo_index_switch.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::Array< T, InlineBufferCapacity, Allocator >::as_span(), blender::fn::FieldOperation::Create(), extract(), params, blender::nodes::node_geo_index_switch_cc::value_inputs_start, and values_num().
Referenced by execute_impl().
|
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 244 of file node_geo_index_switch.cc.
References execute_field(), execute_single(), blender::bke::SocketValueVariant::get(), blender::bke::SocketValueVariant::is_context_dependent_field(), and params.
|
inline |
Definition at line 260 of file node_geo_index_switch.cc.
References blender::IndexRange::contains(), blender::fn::lazy_function::LazyFunction::outputs_, params, blender::nodes::set_default_remaining_node_outputs(), blender::nodes::node_geo_index_switch_cc::value_inputs_start, and values_num().
Referenced by execute_impl().
|
inline |
Definition at line 255 of file node_geo_index_switch.cc.
References blender::fn::lazy_function::LazyFunction::inputs_, and blender::nodes::node_geo_index_switch_cc::value_inputs_start.
Referenced by execute_field(), and execute_single().