Blender V4.5
node_util.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2007 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include "DNA_node_types.h"
12
13struct bNode;
14struct bNodeTree;
15
16/* data for initializing node execution */
18
20 void *data; /* custom data storage */
21};
22
23/**** Storage Data ****/
24
25void node_free_curves(bNode *node);
27
28void node_copy_curves(bNodeTree *dest_ntree, bNode *dest_node, const bNode *src_node);
29void node_copy_standard_storage(bNodeTree *dest_ntree, bNode *dest_node, const bNode *src_node);
31
32/**** Updates ****/
33void node_sock_label(bNodeSocket *sock, const char *name);
35void node_math_update(bNodeTree *ntree, bNode *node);
36
37/**** Labels ****/
38void node_blend_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy);
39void node_image_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy);
40void node_math_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy);
41void node_vector_math_label(const bNodeTree *ntree,
42 const bNode *node,
43 char *label,
44 int label_maxncpy);
45void node_filter_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy);
47
48/*** Link Handling */
49
53bool node_insert_link_default(bNodeTree *ntree, bNode *node, bNodeLink *link);
54
55float node_socket_get_float(bNodeTree *ntree, bNode *node, bNodeSocket *sock);
56void node_socket_set_float(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float value);
57void node_socket_get_color(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float *value);
58void node_socket_set_color(bNodeTree *ntree, bNode *node, bNodeSocket *sock, const float *value);
59void node_socket_get_vector(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float *value);
60void node_socket_set_vector(bNodeTree *ntree, bNode *node, bNodeSocket *sock, const float *value);
NodeCombSepColorMode
void node_sock_label_clear(bNodeSocket *sock)
Definition node_util.cc:78
void * node_initexec_curves(bNodeExecContext *context, bNode *node, bNodeInstanceKey key)
Definition node_util.cc:61
void node_sock_label(bNodeSocket *sock, const char *name)
Definition node_util.cc:73
void node_math_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition node_util.cc:201
void node_socket_set_float(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float value)
Definition node_util.cc:298
void node_free_standard_storage(bNode *node)
Definition node_util.cc:42
void node_filter_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition node_util.cc:227
void node_image_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition node_util.cc:189
bool node_insert_link_default(bNodeTree *ntree, bNode *node, bNodeLink *link)
Definition node_util.cc:279
void node_copy_standard_storage(bNodeTree *dest_ntree, bNode *dest_node, const bNode *src_node)
Definition node_util.cc:54
void node_free_curves(bNode *node)
Definition node_util.cc:37
void node_math_update(bNodeTree *ntree, bNode *node)
Definition node_util.cc:85
void node_socket_get_vector(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float *value)
Definition node_util.cc:319
void node_vector_math_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition node_util.cc:214
void node_combsep_color_label(const ListBase *sockets, NodeCombSepColorMode mode)
Definition node_util.cc:240
void node_socket_set_color(bNodeTree *ntree, bNode *node, bNodeSocket *sock, const float *value)
Definition node_util.cc:310
void node_socket_get_color(bNodeTree *ntree, bNode *node, bNodeSocket *sock, float *value)
Definition node_util.cc:304
void node_blend_label(const bNodeTree *ntree, const bNode *node, char *label, int label_maxncpy)
Definition node_util.cc:176
float node_socket_get_float(bNodeTree *ntree, bNode *node, bNodeSocket *sock)
Definition node_util.cc:292
void node_copy_curves(bNodeTree *dest_ntree, bNode *dest_node, const bNode *src_node)
Definition node_util.cc:49
void node_socket_set_vector(bNodeTree *ntree, bNode *node, bNodeSocket *sock, const float *value)
Definition node_util.cc:325