Blender
V3.3
|
#include "DNA_node_types.h"
#include "BLI_listbase.h"
#include "BLI_utildefines.h"
#include "BKE_global.h"
#include "BKE_node.h"
#include "BKE_node_tree_update.h"
#include "MEM_guardedalloc.h"
#include "node_exec.h"
#include "node_util.h"
Go to the source code of this file.
Functions | |
static int | node_exec_socket_use_stack (bNodeSocket *sock) |
bNodeStack * | node_get_socket_stack (bNodeStack *stack, bNodeSocket *sock) |
void | node_get_stack (bNode *node, bNodeStack *stack, bNodeStack **in, bNodeStack **out) |
static void | node_init_input_index (bNodeSocket *sock, int *index) |
static void | node_init_output_index (bNodeSocket *sock, int *index, ListBase *internal_links) |
static struct bNodeStack * | setup_stack (bNodeStack *stack, bNodeTree *ntree, bNode *node, bNodeSocket *sock) |
bNodeTreeExec * | ntree_exec_begin (bNodeExecContext *context, bNodeTree *ntree, bNodeInstanceKey parent_key) |
void | ntree_exec_end (bNodeTreeExec *exec) |
|
static |
Definition at line 22 of file node_exec.cc.
References ELEM, SOCK_FLOAT, SOCK_INT, SOCK_RGBA, SOCK_SHADER, SOCK_VECTOR, and bNodeSocket::type.
Referenced by node_init_input_index(), and node_init_output_index().
bNodeStack* node_get_socket_stack | ( | struct bNodeStack * | stack, |
struct bNodeSocket * | sock | ||
) |
For a given socket, find the actual stack entry.
Definition at line 28 of file node_exec.cc.
References bNodeSocket::stack_index.
Referenced by group_copy_inputs(), group_copy_outputs(), group_gpu_copy_inputs(), group_gpu_move_outputs(), node_get_stack(), and setup_stack().
void node_get_stack | ( | bNode * | node, |
bNodeStack * | stack, | ||
bNodeStack ** | in, | ||
bNodeStack ** | out | ||
) |
Definition at line 36 of file node_exec.cc.
References bNodeSocket::next, node, node_get_socket_stack(), and usdtokens::out().
Referenced by ntreeExecGPUNodes(), and ntreeExecThreadNodes().
|
static |
Definition at line 54 of file node_exec.cc.
References bNodeLink::flag, bNodeLink::fromsock, bNodeSocket::link, node_exec_socket_use_stack(), NODE_LINK_MUTED, and bNodeSocket::stack_index.
Referenced by ntree_exec_begin().
|
static |
Definition at line 71 of file node_exec.cc.
References ListBase::first, bNodeLink::fromsock, bNodeSocket::link, bNodeLink::next, node_exec_socket_use_stack(), bNodeSocket::stack_index, and bNodeLink::tosock.
Referenced by ntree_exec_begin().
bNodeTreeExec* ntree_exec_begin | ( | bNodeExecContext * | context, |
bNodeTree * | ntree, | ||
bNodeInstanceKey | parent_key | ||
) |
Definition at line 139 of file node_exec.cc.
References BKE_node_instance_hash_lookup(), BKE_node_instance_key(), BKE_ntree_update_main_tree(), blender::compositor::context, bNodeExec::data, bNodeExecData::data, exec(), bNodeLink::flag, bNodeExec::free_exec_fn, G, bNodeStack::hasoutput, bNodeSocket::link, MEM_callocN, MEM_freeN, bNodeSocket::next, node, bNodeExec::node, node_init_input_index(), node_init_output_index(), NODE_LINK_VALID, NODE_MUTED, NODE_REROUTE, ntree, ntreeGetDependencyList(), bNodeExecData::preview, and setup_stack().
Referenced by ntreeShaderBeginExecTree_internal(), and ntreeTexBeginExecTree_internal().
void ntree_exec_end | ( | bNodeTreeExec * | exec | ) |
Definition at line 242 of file node_exec.cc.
References bNodeExec::data, bNodeExecData::data, exec(), bNodeExec::free_exec_fn, and MEM_freeN.
Referenced by ntreeShaderEndExecTree_internal(), and ntreeTexEndExecTree_internal().
|
static |
Definition at line 107 of file node_exec.cc.
References bNodeLink::flag, bNodeSocket::link, node, node_get_socket_stack(), NODE_LINK_MUTED, node_socket_get_color(), node_socket_get_float(), node_socket_get_vector(), ntree, SOCK_FLOAT, SOCK_RGBA, SOCK_VECTOR, bNodeStack::sockettype, bNodeSocket::type, and bNodeStack::vec.
Referenced by ntree_exec_begin().