94 if (link->
tosock == sock) {
141 switch (sock->
type) {
187 for (n = 0; n < totnodes; n++) {
208 exec->totnodes = totnodes;
210 "node execution data");
212 exec->stacksize = index;
216 for (n = 0; n <
exec->stacksize; n++) {
217 exec->stack[n].hasinput = 1;
221 for (n = 0, nodeexec =
exec->nodeexec; n < totnodes; n++, nodeexec++) {
222 node = nodeexec->
node = nodelist[n];
247 if (
node->typeinfo->init_exec_fn) {
268 for (n = 0, nodeexec =
exec->nodeexec; n < exec->totnodes; n++, nodeexec++) {
274 if (
exec->nodeexec) {
320 for (n = 0, nodeexec =
exec->nodeexec; n < exec->totnodes; n++, nodeexec++) {
322 if (
node->need_exec) {
void ntreeUpdateTree(struct Main *main, struct bNodeTree *ntree)
void ntreeGetDependencyList(struct bNodeTree *ntree, struct bNode ***r_deplist, int *r_deplist_len)
void * BKE_node_instance_hash_lookup(bNodeInstanceHash *hash, bNodeInstanceKey key)
bNodeInstanceKey BKE_node_instance_key(bNodeInstanceKey parent_key, const struct bNodeTree *ntree, const struct bNode *node)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
Read Guarded memory(de)allocation.
void(* MEM_freeN)(void *vmemh)
void *(* MEM_dupallocN)(const void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
bNodeTreeExec * ntree_exec_begin(bNodeExecContext *context, bNodeTree *ntree, bNodeInstanceKey parent_key)
bNodeThreadStack * ntreeGetThreadStack(bNodeTreeExec *exec, int thread)
bool ntreeExecThreadNodes(bNodeTreeExec *exec, bNodeThreadStack *nts, void *callerdata, int thread)
static struct bNodeStack * setup_stack(bNodeStack *stack, bNodeTree *ntree, bNode *node, 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)
int node_exec_socket_use_stack(bNodeSocket *sock)
void ntree_exec_end(bNodeTreeExec *exec)
void ntreeReleaseThreadStack(bNodeThreadStack *nts)
bNodeStack * node_get_socket_stack(bNodeStack *stack, bNodeSocket *sock)
static void exec(void *data, int UNUSED(thread), bNode *node, bNodeExecData *execdata, bNodeStack **in, bNodeStack **out)
void node_socket_get_color(bNodeTree *ntree, bNode *UNUSED(node), bNodeSocket *sock, float *value)
float node_socket_get_float(bNodeTree *ntree, bNode *UNUSED(node), bNodeSocket *sock)
void node_socket_get_vector(bNodeTree *ntree, bNode *UNUSED(node), bNodeSocket *sock, float *value)
struct SELECTID_Context context
struct bNodePreview * preview
NodeFreeExecFunction free_exec_fn
struct bNodeSocket * next
struct bNodeThreadStack * next
struct bNodeStack * stack