Blender V4.3
blender::bke::bNodeSocketType Struct Reference

Defines a socket type. More...

#include <BKE_node.hh>

Public Attributes

char idname [64]
 
char label [64]
 
char subtype_label [64]
 
void(* draw )(bContext *C, uiLayout *layout, PointerRNA *ptr, PointerRNA *node_ptr, const char *text)
 
void(* draw_color )(bContext *C, PointerRNA *ptr, PointerRNA *node_ptr, float *r_color)
 
void(* draw_color_simple )(const bNodeSocketType *socket_type, float *r_color)
 
void(* interface_draw )(ID *id, bNodeTreeInterfaceSocket *socket, bContext *C, uiLayout *layout)
 
void(* interface_init_socket )(ID *id, const bNodeTreeInterfaceSocket *interface_socket, bNode *node, bNodeSocket *socket, const char *data_path)
 
void(* interface_from_socket )(ID *id, bNodeTreeInterfaceSocket *interface_socket, const bNode *node, const bNodeSocket *socket)
 
ExtensionRNA ext_socket
 
ExtensionRNA ext_interface
 
int type
 
int subtype
 
bool use_link_limits_of_type
 
int input_link_limit
 
int output_link_limit
 
void(* free_self )(bNodeSocketType *stype)
 
const blender::CPPTypebase_cpp_type
 
SocketGetCPPValueFunction get_base_cpp_value
 
const blender::CPPTypegeometry_nodes_cpp_type
 
SocketGetGeometryNodesCPPValueFunction get_geometry_nodes_cpp_value
 
const void * geometry_nodes_default_cpp_value
 

Detailed Description

Defines a socket type.

Defines the appearance and behavior of a socket in the UI.

Definition at line 151 of file BKE_node.hh.

Member Data Documentation

◆ base_cpp_type

◆ draw

void(* blender::bke::bNodeSocketType::draw) (bContext *C, uiLayout *layout, PointerRNA *ptr, PointerRNA *node_ptr, const char *text)

◆ draw_color

void(* blender::bke::bNodeSocketType::draw_color) (bContext *C, PointerRNA *ptr, PointerRNA *node_ptr, float *r_color)

◆ draw_color_simple

void(* blender::bke::bNodeSocketType::draw_color_simple) (const bNodeSocketType *socket_type, float *r_color)

◆ ext_interface

ExtensionRNA blender::bke::bNodeSocketType::ext_interface

Definition at line 177 of file BKE_node.hh.

Referenced by make_standard_socket_type().

◆ ext_socket

◆ free_self

void(* blender::bke::bNodeSocketType::free_self) (bNodeSocketType *stype)

◆ geometry_nodes_cpp_type

◆ geometry_nodes_default_cpp_value

◆ get_base_cpp_value

◆ get_geometry_nodes_cpp_value

◆ idname

◆ input_link_limit

int blender::bke::bNodeSocketType::input_link_limit

◆ interface_draw

void(* blender::bke::bNodeSocketType::interface_draw) (ID *id, bNodeTreeInterfaceSocket *socket, bContext *C, uiLayout *layout)

Definition at line 164 of file BKE_node.hh.

Referenced by ED_init_standard_node_socket_type(), and ED_node_init_butfuncs().

◆ interface_from_socket

void(* blender::bke::bNodeSocketType::interface_from_socket) (ID *id, bNodeTreeInterfaceSocket *interface_socket, const bNode *node, const bNodeSocket *socket)

◆ interface_init_socket

void(* blender::bke::bNodeSocketType::interface_init_socket) (ID *id, const bNodeTreeInterfaceSocket *interface_socket, bNode *node, bNodeSocket *socket, const char *data_path)

Definition at line 165 of file BKE_node.hh.

Referenced by blender::nodes::get_init_socket_fn(), and make_standard_socket_type().

◆ label

char blender::bke::bNodeSocketType::label[64]

Type label.

Definition at line 155 of file BKE_node.hh.

Referenced by make_standard_socket_type(), and blender::bke::node_socket_type_label().

◆ output_link_limit

int blender::bke::bNodeSocketType::output_link_limit

◆ subtype

int blender::bke::bNodeSocketType::subtype

◆ subtype_label

char blender::bke::bNodeSocketType::subtype_label[64]

Sub-type label.

Definition at line 157 of file BKE_node.hh.

Referenced by make_standard_socket_type().

◆ type

int blender::bke::bNodeSocketType::type

Definition at line 180 of file BKE_node.hh.

Referenced by blender::add_attribute_search_or_value_buttons(), blender::ed::geometry::add_attribute_search_or_value_buttons(), blender::bke::anonymous_attribute_inferencing::analyze_anonymous_attribute_usages(), blender::ed::object::check_geometry_node_group_sockets(), blender::check_property_socket_sync(), composite_node_tree_socket_type_valid(), blender::nodes::declaration_for_interface_socket(), blender::bke::node_field_inferencing::determine_group_input_states(), blender::draw_output_attributes_panel(), blender::draw_property_for_socket(), blender::ed::geometry::draw_property_for_socket(), ED_init_standard_node_socket_type(), ED_node_type_draw_color(), blender::nodes::execute_geometry_nodes_on_geometry(), blender::ed::space_node::gather_socket_link_operations(), geometry_node_tree_socket_type_valid(), blender::has_output_attribute(), blender::nodes::id_property_create_from_socket(), blender::nodes::initialize_group_input(), blender::nodes::input_has_attribute_toggle(), is_layer_selection_field(), make_socket_type_virtual(), make_standard_socket_type(), blender::bke::node_modify_socket_type(), blender::bke::node_socket_set_typeinfo(), blender::nodes::old_id_property_type_matches_socket_convert_to_new(), register_undefined_types(), blender::ed::space_node::search_link_ops_for_asset_metadata(), shader_node_tree_socket_type_valid(), blender::ed::space_node::std_node_socket_interface_draw(), texture_node_tree_socket_type_valid(), blender::bke::node_interface::socket_types::try_get_supported_socket_type(), blender::ed::space_node::ui_node_link_items(), blender::nodes::update_input_properties_from_node_tree(), blender::nodes::update_output_properties_from_node_tree(), and version_node_add_socket().

◆ use_link_limits_of_type

bool blender::bke::bNodeSocketType::use_link_limits_of_type

The documentation for this struct was generated from the following file: