|
Blender V4.3
|
#include <cstddef>#include <cstring>#include "DNA_asset_types.h"#include "DNA_node_types.h"#include "BLI_listbase.h"#include "BLI_map.hh"#include "BLI_multi_value_map.hh"#include "BLI_set.hh"#include "BLI_stack.hh"#include "BLI_string.h"#include "BLI_string_ref.hh"#include "BLI_utildefines.h"#include "BLT_translation.hh"#include "BKE_node.hh"#include "BKE_node_runtime.hh"#include "BKE_node_tree_interface.hh"#include "MEM_guardedalloc.h"#include "NOD_common.h"#include "NOD_node_declaration.hh"#include "NOD_register.hh"#include "NOD_socket.hh"#include "NOD_socket_declarations.hh"#include "NOD_socket_declarations_geometry.hh"#include "node_common.h"#include "node_util.hh"Go to the source code of this file.
Namespaces | |
| namespace | blender |
| namespace | blender::nodes |
|
static |
Definition at line 54 of file node_common.cc.
References LISTBASE_FOREACH.
Referenced by node_group_find_input_socket(), and node_group_find_output_socket().
Definition at line 548 of file node_common.cc.
References data, and NODE_FRAME_SHRINK.
Referenced by register_node_type_frame().
| bNodeSocket * node_group_find_input_socket | ( | bNode * | groupnode, |
| const char * | identifier ) |
Definition at line 64 of file node_common.cc.
References find_matching_socket(), and bNode::inputs.
Referenced by blender::ed::space_node::node_group_make_insert_selected(), and blender::ed::space_node::node_group_ungroup().
| bNodeSocket * node_group_find_output_socket | ( | bNode * | groupnode, |
| const char * | identifier ) |
Definition at line 69 of file node_common.cc.
References find_matching_socket(), and bNode::outputs.
Referenced by blender::ed::space_node::node_group_make_insert_selected(), and blender::ed::space_node::node_group_ungroup().
| bNodeSocket * node_group_input_find_socket | ( | bNode * | node, |
| const char * | identifier ) |
Definition at line 731 of file node_common.cc.
References LISTBASE_FOREACH, and STREQ.
Referenced by blo_do_versions_260(), blender::nodes::group_input_insert_link(), and blender::ed::space_node::node_group_make_insert_selected().
Definition at line 74 of file node_common.cc.
References BLI_strncpy(), IFACE_, and label.
Referenced by register_node_type_cmp_group(), blender::nodes::register_node_type_geo_group(), register_node_type_sh_group(), and register_node_type_tex_group().
| bNodeSocket * node_group_output_find_socket | ( | bNode * | node, |
| const char * | identifier ) |
Definition at line 857 of file node_common.cc.
References LISTBASE_FOREACH, and STREQ.
Referenced by blo_do_versions_260(), blender::nodes::group_output_insert_link(), and blender::ed::space_node::node_group_make_insert_selected().
| bool node_group_poll_instance | ( | const bNode * | node, |
| const bNodeTree * | nodetree, | ||
| const char ** | r_disabled_hint ) |
Definition at line 122 of file node_common.cc.
References blender::bke::node_group_poll().
Referenced by register_node_type_cmp_group(), blender::nodes::register_node_type_geo_group(), register_node_type_sh_group(), and register_node_type_tex_group().
Definition at line 83 of file node_common.cc.
References blender::bke::Attribute, blender::bke::Color, blender::bke::Converter, blender::bke::Distort, blender::bke::Filter, blender::bke::Geometry, blender::bke::Input, blender::bke::Matte, NODE_CLASS_ATTRIBUTE, NODE_CLASS_CONVERTER, NODE_CLASS_DISTORT, NODE_CLASS_GEOMETRY, NODE_CLASS_GROUP, NODE_CLASS_INPUT, NODE_CLASS_MATTE, NODE_CLASS_OP_COLOR, NODE_CLASS_OP_FILTER, NODE_CLASS_OP_VECTOR, NODE_CLASS_OUTPUT, NODE_CLASS_SCRIPT, NODE_CLASS_SHADER, NODE_CLASS_TEXTURE, blender::bke::None, blender::bke::Output, blender::bke::Script, blender::bke::Shader, blender::bke::Texture, and blender::bke::Vector.
Referenced by register_node_type_cmp_group(), blender::nodes::register_node_type_geo_group(), and register_node_type_sh_group().
| std::string node_group_ui_description | ( | const bNode & | node | ) |
Definition at line 136 of file node_common.cc.
References ID::asset_data, AssetMetaData::description, and bNodeTree::id.
Referenced by register_node_type_cmp_group(), blender::nodes::register_node_type_geo_group(), and register_node_type_sh_group().
|
static |
Definition at line 580 of file node_common.cc.
References b, blender::StringRefNull::c_str(), and NodeReroute::type_idname.
Referenced by register_node_type_reroute().
Definition at line 593 of file node_common.cc.
Referenced by register_node_type_reroute().
| void ntree_update_reroute_nodes | ( | struct bNodeTree * | ntree | ) |
Global update function for Reroute node types. This depends on connected nodes, so must be done as a tree-wide update.
Definition at line 647 of file node_common.cc.
References blender::MultiValueMap< Key, Value >::add(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::bke::bNodeSocketType::idname, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::items(), bNodeTree::links, LISTBASE_FOREACH, NODE_REROUTE, propagate_reroute_type_from_start_socket(), bNode::storage, STRNCPY, NodeReroute::type_idname, and blender::nodes::update_node_declaration_and_sockets().
Referenced by geometry_node_tree_update(), update(), update(), and update().
|
static |
Definition at line 614 of file node_common.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BLI_assert, ListBase::first, bNode::inputs, blender::Stack< T, InlineBufferCapacity, Allocator >::is_empty(), blender::MultiValueMap< Key, Value >::lookup(), NODE_REROUTE, bNode::outputs, blender::Stack< T, InlineBufferCapacity, Allocator >::pop(), blender::Stack< T, InlineBufferCapacity, Allocator >::push(), bNode::type, and bNodeSocket::typeinfo.
Referenced by ntree_update_reroute_nodes().
| void register_node_type_frame | ( | ) |
Definition at line 558 of file node_common.cc.
References blender::bke::bNodeType::flag, blender::bke::bNodeType::free_self, blender::bke::bNodeType::initfunc, MEM_freeN(), NODE_BACKGROUND, NODE_CLASS_LAYOUT, node_copy_standard_storage(), NODE_FRAME, node_frame_init(), node_free_standard_storage(), blender::bke::node_register_type(), blender::bke::node_type_base(), blender::bke::node_type_size(), and blender::bke::node_type_storage().
Referenced by register_nodes().
| void register_node_type_group_input | ( | ) |
Definition at line 843 of file node_common.cc.
References blender::bke::bNodeType::declare, blender::bke::bNodeType::free_self, blender::nodes::group_input_declare(), blender::nodes::group_input_insert_link(), blender::bke::bNodeType::insert_link, MEM_freeN(), NODE_CLASS_INTERFACE, NODE_GROUP_INPUT, blender::bke::node_register_type(), blender::bke::node_type_base(), and blender::bke::node_type_size().
Referenced by register_nodes().
| void register_node_type_group_output | ( | ) |
Definition at line 867 of file node_common.cc.
References blender::bke::bNodeType::declare, blender::bke::bNodeType::free_self, blender::nodes::group_output_declare(), blender::nodes::group_output_insert_link(), blender::bke::bNodeType::insert_link, MEM_freeN(), blender::bke::bNodeType::no_muting, NODE_CLASS_INTERFACE, NODE_GROUP_OUTPUT, blender::bke::node_register_type(), blender::bke::node_type_base(), and blender::bke::node_type_size().
Referenced by register_nodes().
| void register_node_type_reroute | ( | ) |
Definition at line 600 of file node_common.cc.
References blender::bke::bNodeType::declare, blender::bke::bNodeType::free_self, blender::bke::bNodeType::initfunc, MEM_freeN(), NODE_CLASS_LAYOUT, node_copy_standard_storage(), node_free_standard_storage(), blender::bke::node_register_type(), NODE_REROUTE, node_reroute_declare(), node_reroute_init(), and blender::bke::node_type_base().
Referenced by register_nodes().