77 if (link->
tosock == sock) {
124 switch (sock->
type) {
164 exec = MEM_cnew<bNodeTreeExec>(
"node tree execution data");
170 for (n = 0; n < totnodes; n++) {
191 exec->totnodes = totnodes;
193 "node execution data");
195 exec->stacksize = index;
199 for (n = 0; n <
exec->stacksize; n++) {
200 exec->stack[n].hasinput = 1;
204 for (n = 0, nodeexec =
exec->nodeexec; n < totnodes; n++, nodeexec++) {
205 node = nodeexec->
node = nodelist[n];
230 if (
node->typeinfo->init_exec_fn) {
251 for (n = 0, nodeexec =
exec->nodeexec; n < exec->totnodes; n++, nodeexec++) {
257 if (
exec->nodeexec) {
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 BKE_ntree_update_main_tree(struct Main *bmain, struct bNodeTree *ntree, struct NodeTreeUpdateExtraParams *params)
Read Guarded memory(de)allocation.
void(* MEM_freeN)(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
static const pxr::TfToken out("out", pxr::TfToken::Immortal)
bNodeTreeExec * ntree_exec_begin(bNodeExecContext *context, bNodeTree *ntree, bNodeInstanceKey parent_key)
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)
static int node_exec_socket_use_stack(bNodeSocket *sock)
void ntree_exec_end(bNodeTreeExec *exec)
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 bNodePreview * preview
NodeFreeExecFunction free_exec_fn
struct bNodeSocket * next