|
Blender V4.3
|
#include <BKE_node_runtime.hh>
Inherits blender::NonCopyable, and blender::NonMovable.
Public Attributes | |
| const nodes::SocketDeclaration * | declaration = nullptr |
| uint32_t | changed_flag = 0 |
| short | total_inputs = 0 |
| float2 | location |
| std::optional< FieldSocketState > | field_state |
| Vector< bNodeLink * > | directly_linked_links |
| Vector< bNodeSocket * > | directly_linked_sockets |
| Vector< bNodeSocket * > | logically_linked_sockets |
| Vector< bNodeSocket * > | logically_linked_skipped_sockets |
| bNode * | owner_node = nullptr |
| bNodeSocket * | internal_link_input = nullptr |
| int | index_in_node = -1 |
| int | index_in_all_sockets = -1 |
| int | index_in_inout_sockets = -1 |
Run-time data for every socket. This should only contain data that is somewhat persistent (i.e. data that lives longer than a single depsgraph evaluation + redraw). Data that's only used in smaller scopes should generally be stored in separate arrays and/or maps.
Definition at line 223 of file BKE_node_runtime.hh.
| uint32_t blender::bke::bNodeSocketRuntime::changed_flag = 0 |
Definition at line 233 of file BKE_node_runtime.hh.
| const nodes::SocketDeclaration* blender::bke::bNodeSocketRuntime::declaration = nullptr |
References a socket declaration that is owned by node->declaration. This is only runtime data. It has to be updated when the node declaration changes. Access can be allowed by using #AllowUsingOutdatedInfo.
Definition at line 230 of file BKE_node_runtime.hh.
Only valid when #topology_cache_is_dirty is false.
Definition at line 254 of file BKE_node_runtime.hh.
| Vector<bNodeSocket *> blender::bke::bNodeSocketRuntime::directly_linked_sockets |
Definition at line 255 of file BKE_node_runtime.hh.
| std::optional<FieldSocketState> blender::bke::bNodeSocketRuntime::field_state |
This is computed during field inferencing and influences the socket shape in geometry nodes.
Definition at line 251 of file BKE_node_runtime.hh.
| int blender::bke::bNodeSocketRuntime::index_in_all_sockets = -1 |
Definition at line 261 of file BKE_node_runtime.hh.
| int blender::bke::bNodeSocketRuntime::index_in_inout_sockets = -1 |
Definition at line 262 of file BKE_node_runtime.hh.
| int blender::bke::bNodeSocketRuntime::index_in_node = -1 |
Definition at line 260 of file BKE_node_runtime.hh.
| bNodeSocket* blender::bke::bNodeSocketRuntime::internal_link_input = nullptr |
Definition at line 259 of file BKE_node_runtime.hh.
| float2 blender::bke::bNodeSocketRuntime::location |
The location of the socket in the tree, calculated while drawing the nodes and invalid if the node tree hasn't been drawn yet. In the node tree's "world space" (the same as #bNode::runtime::totr).
Definition at line 246 of file BKE_node_runtime.hh.
| Vector<bNodeSocket *> blender::bke::bNodeSocketRuntime::logically_linked_skipped_sockets |
Definition at line 257 of file BKE_node_runtime.hh.
| Vector<bNodeSocket *> blender::bke::bNodeSocketRuntime::logically_linked_sockets |
Definition at line 256 of file BKE_node_runtime.hh.
| bNode* blender::bke::bNodeSocketRuntime::owner_node = nullptr |
Definition at line 258 of file BKE_node_runtime.hh.
| short blender::bke::bNodeSocketRuntime::total_inputs = 0 |
Runtime-only cache of the number of input links, for multi-input sockets, including dragged node links that aren't actually in the tree.
Definition at line 239 of file BKE_node_runtime.hh.