|
Blender V4.3
|
#include <climits>#include "DNA_node_types.h"#include "BLI_color.hh"#include "BLI_listbase.h"#include "BLI_math_euler.hh"#include "BLI_math_matrix.h"#include "BLI_math_matrix.hh"#include "BLI_math_quaternion_types.hh"#include "BLI_math_vector.h"#include "BLI_math_vector_types.hh"#include "BLI_string.h"#include "BLI_utildefines.h"#include "BKE_geometry_set.hh"#include "BKE_lib_id.hh"#include "BKE_node.hh"#include "BKE_node_runtime.hh"#include "BKE_node_socket_value.hh"#include "BKE_node_tree_update.hh"#include "DNA_collection_types.h"#include "DNA_material_types.h"#include "RNA_access.hh"#include "MEM_guardedalloc.h"#include "NOD_node_declaration.hh"#include "NOD_socket.hh"#include "NOD_socket_declarations.hh"#include "NOD_socket_declarations_geometry.hh"Go to the source code of this file.
Namespaces | |
| namespace | blender |
| namespace | blender::nodes |
| void ED_init_node_socket_type_virtual | ( | bke::bNodeSocketType * | stype | ) |
Definition at line 1612 of file drawnode.cc.
Referenced by make_socket_type_virtual().
| void ED_init_standard_node_socket_type | ( | bke::bNodeSocketType * | stype | ) |
Definition at line 1603 of file drawnode.cc.
Referenced by make_standard_socket_type().
|
static |
Definition at line 926 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_BOOLEAN.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1106 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_COLLECTION.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 980 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), and SOCK_FLOAT.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1094 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_GEOMETRY.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1130 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_IMAGE.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 997 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), and SOCK_INT.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1142 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_MATERIAL.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 964 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, blender::MatBase< float, 4, 4 >::identity(), make_standard_socket_type(), PROP_NONE, and SOCK_MATRIX.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1065 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_MENU.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1082 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_OBJECT.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1031 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_RGBA.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 943 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, blender::math::QuaternionBase< T >::identity(), make_standard_socket_type(), PROP_NONE, SOCK_ROTATION, and blender::math::to_quaternion().
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1048 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), and SOCK_STRING.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1118 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), PROP_NONE, and SOCK_TEXTURE.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 1014 of file node_socket.cc.
References blender::bke::bNodeSocketType::base_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::bke::bNodeSocketType::geometry_nodes_default_cpp_value, blender::CPPType::get(), blender::bke::bNodeSocketType::get_base_cpp_value, blender::bke::bNodeSocketType::get_geometry_nodes_cpp_value, make_standard_socket_type(), and SOCK_VECTOR.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 897 of file node_socket.cc.
References BLI_assert, ED_init_node_socket_type_virtual(), blender::bke::bNodeSocketType::ext_socket, blender::bke::bNodeSocketType::free_self, blender::bke::bNodeSocketType::idname, blender::bke::bNodeSocketType::input_link_limit, MEM_freeN(), blender::bke::bNodeSocketType::output_link_limit, RNA_struct_blender_type_set(), RNA_struct_find(), SOCK_CUSTOM, ExtensionRNA::srna, STRNCPY, blender::bke::bNodeSocketType::type, and blender::bke::bNodeSocketType::use_link_limits_of_type.
Referenced by register_standard_node_socket_types().
|
static |
Definition at line 850 of file node_socket.cc.
References BLI_assert, ED_init_standard_node_socket_type(), blender::bke::bNodeSocketType::ext_interface, blender::bke::bNodeSocketType::ext_socket, blender::bke::bNodeSocketType::free_self, blender::bke::bNodeSocketType::idname, blender::bke::bNodeSocketType::input_link_limit, blender::bke::bNodeSocketType::interface_from_socket, blender::bke::bNodeSocketType::interface_init_socket, blender::bke::bNodeSocketType::label, MEM_freeN(), blender::bke::node_socket_sub_type_label(), blender::bke::node_static_socket_interface_type_new(), blender::bke::node_static_socket_label(), blender::bke::node_static_socket_type(), blender::bke::bNodeSocketType::output_link_limit, RNA_struct_blender_type_set(), RNA_struct_find(), ExtensionRNA::srna, standard_node_socket_interface_from_socket(), standard_node_socket_interface_init_socket(), STRNCPY, blender::bke::bNodeSocketType::subtype, blender::bke::bNodeSocketType::subtype_label, blender::bke::bNodeSocketType::type, and blender::bke::bNodeSocketType::use_link_limits_of_type.
Referenced by make_socket_type_bool(), make_socket_type_collection(), make_socket_type_float(), make_socket_type_geometry(), make_socket_type_image(), make_socket_type_int(), make_socket_type_material(), make_socket_type_matrix(), make_socket_type_menu(), make_socket_type_object(), make_socket_type_rgba(), make_socket_type_rotation(), make_socket_type_string(), make_socket_type_texture(), make_socket_type_vector(), and register_standard_node_socket_types().
| bNodeSocket * node_add_socket_from_template | ( | bNodeTree * | ntree, |
| bNode * | node, | ||
| bke::bNodeSocketTemplate * | stemp, | ||
| eNodeSocketInOut | in_out ) |
Definition at line 47 of file node_socket.cc.
References bNodeSocket::default_value, blender::bke::bNodeSocketTemplate::flag, bNodeSocket::flag, blender::bke::bNodeSocketTemplate::identifier, int, blender::bke::bNodeSocketTemplate::max, bNodeSocketValueFloat::max, bNodeSocketValueInt::max, bNodeSocketValueVector::max, blender::bke::bNodeSocketTemplate::min, bNodeSocketValueFloat::min, bNodeSocketValueInt::min, bNodeSocketValueVector::min, blender::bke::bNodeSocketTemplate::name, blender::bke::node_add_static_socket(), SOCK_BOOLEAN, SOCK_FLOAT, SOCK_INT, SOCK_RGBA, SOCK_VECTOR, blender::bke::bNodeSocketTemplate::subtype, blender::bke::bNodeSocketTemplate::type, blender::bke::bNodeSocketTemplate::val1, blender::bke::bNodeSocketTemplate::val2, blender::bke::bNodeSocketTemplate::val3, blender::bke::bNodeSocketTemplate::val4, bNodeSocketValueBoolean::value, bNodeSocketValueFloat::value, bNodeSocketValueInt::value, bNodeSocketValueRGBA::value, and bNodeSocketValueVector::value.
Referenced by cmp_node_image_add_pass_output(), blender::bke::node_add_sockets_from_type(), and verify_socket_template().
| void node_socket_copy_default_value | ( | bNodeSocket * | to, |
| const bNodeSocket * | from ) |
Definition at line 799 of file node_socket.cc.
References node_socket_copy_default_value_data(), node_socket_init_default_value(), SOCK_HIDE_VALUE, and STRNCPY.
Referenced by blender::ed::space_node::node_socket_add_replace().
| void node_socket_copy_default_value_data | ( | eNodeSocketDatatype | datatype, |
| void * | to, | ||
| const void * | from ) |
Definition at line 689 of file node_socket.cc.
References Collection::id, Image::id, Material::id, Object::id, Tex::id, id_us_plus(), SOCK_BOOLEAN, SOCK_COLLECTION, SOCK_CUSTOM, SOCK_FLOAT, SOCK_GEOMETRY, SOCK_IMAGE, SOCK_INT, SOCK_MATERIAL, SOCK_MATRIX, SOCK_MENU, SOCK_OBJECT, SOCK_RGBA, SOCK_ROTATION, SOCK_SHADER, SOCK_STRING, SOCK_TEXTURE, SOCK_VECTOR, bNodeSocketValueCollection::value, bNodeSocketValueImage::value, bNodeSocketValueMaterial::value, bNodeSocketValueObject::value, and bNodeSocketValueTexture::value.
Referenced by blender::bke::forward_compat::construct_interface_as_legacy_sockets(), node_socket_copy_default_value(), and standard_node_socket_interface_init_socket().
| void node_socket_init_default_value | ( | bNodeSocket * | sock | ) |
Definition at line 788 of file node_socket.cc.
References bNodeSocket::default_value, node_socket_init_default_value_data(), and bNodeSocket::typeinfo.
Referenced by node_socket_copy_default_value(), and blender::bke::node_socket_set_typeinfo().
| void node_socket_init_default_value_data | ( | eNodeSocketDatatype | datatype, |
| int | subtype, | ||
| void ** | data ) |
Definition at line 569 of file node_socket.cc.
References copy_v3_v3(), copy_v4_v4(), FLT_MAX, bNodeSocketValueFloat::max, bNodeSocketValueInt::max, bNodeSocketValueVector::max, bNodeSocketValueFloat::min, bNodeSocketValueInt::min, bNodeSocketValueVector::min, SOCK_BOOLEAN, SOCK_COLLECTION, SOCK_CUSTOM, SOCK_FLOAT, SOCK_GEOMETRY, SOCK_IMAGE, SOCK_INT, SOCK_MATERIAL, SOCK_MATRIX, SOCK_MENU, SOCK_OBJECT, SOCK_RGBA, SOCK_ROTATION, SOCK_SHADER, SOCK_STRING, SOCK_TEXTURE, SOCK_VECTOR, bNodeSocketValueFloat::subtype, bNodeSocketValueInt::subtype, bNodeSocketValueString::subtype, bNodeSocketValueVector::subtype, bNodeSocketValueBoolean::value, bNodeSocketValueCollection::value, bNodeSocketValueFloat::value, bNodeSocketValueImage::value, bNodeSocketValueInt::value, bNodeSocketValueMaterial::value, bNodeSocketValueMenu::value, bNodeSocketValueObject::value, bNodeSocketValueRGBA::value, bNodeSocketValueString::value, bNodeSocketValueTexture::value, and bNodeSocketValueVector::value.
Referenced by node_socket_init_default_value(), standard_node_socket_interface_init_socket(), and version_node_add_socket().
Definition at line 543 of file node_socket.cc.
References blender::bke::bNodeType::declare, blender::bke::bNodeType::inputs, blender::bke::node_declaration_ensure_on_outdated_node(), blender::bke::bNodeType::outputs, bNodeTree::runtime, SOCK_IN, SOCK_OUT, blender::bke::bNodeSocketTemplate::type, and verify_socket_template_list().
Referenced by do_versions_compositor_render_passes(), blender::bke::node_add_sockets_from_type(), and blender::bke::ntree_blend_read_after_liblink().
| void register_standard_node_socket_types | ( | ) |
Definition at line 1154 of file node_socket.cc.
References make_socket_type_bool(), make_socket_type_collection(), make_socket_type_float(), make_socket_type_geometry(), make_socket_type_image(), make_socket_type_int(), make_socket_type_material(), make_socket_type_matrix(), make_socket_type_menu(), make_socket_type_object(), make_socket_type_rgba(), make_socket_type_rotation(), make_socket_type_string(), make_socket_type_texture(), make_socket_type_vector(), make_socket_type_virtual(), make_standard_socket_type(), blender::bke::node_register_socket_type(), PROP_ACCELERATION, PROP_ANGLE, PROP_COLOR_TEMPERATURE, PROP_DIRECTION, PROP_DISTANCE, PROP_EULER, PROP_FACTOR, PROP_FILEPATH, PROP_FREQUENCY, PROP_NONE, PROP_PERCENTAGE, PROP_TIME, PROP_TIME_ABSOLUTE, PROP_TRANSLATION, PROP_UNSIGNED, PROP_VELOCITY, PROP_WAVELENGTH, PROP_XYZ, and SOCK_SHADER.
Referenced by register_nodes().
|
static |
Definition at line 839 of file node_socket.cc.
Referenced by make_standard_socket_type().
|
static |
Definition at line 823 of file node_socket.cc.
References bNodeSocket::default_value, node_socket_copy_default_value_data(), node_socket_init_default_value_data(), bNodeTreeInterfaceSocket::socket_data, bNodeSocket::type, and bNodeSocket::typeinfo.
Referenced by make_standard_socket_type().
|
static |
Definition at line 100 of file node_socket.cc.
References BLI_remlink(), ListBase::first, blender::bke::bNodeSocketTemplate::flag, bNodeSocket::flag, blender::bke::bNodeSocketTemplate::name, bNodeSocket::name, bNodeSocket::next, node_add_socket_from_template(), NODE_MAXSTR, blender::bke::node_modify_socket_type_static(), STREQLEN, blender::bke::bNodeSocketTemplate::subtype, blender::bke::bNodeSocketTemplate::type, and bNodeSocket::type.
Referenced by verify_socket_template_list().
|
static |
Definition at line 131 of file node_socket.cc.
References BLI_addtail(), BLI_insertlinkbefore(), ListBase::first, bNodeSocket::next, blender::bke::node_remove_socket(), blender::bke::bNodeSocketTemplate::sock, blender::bke::bNodeSocketTemplate::type, and verify_socket_template().
Referenced by node_verify_sockets().