Blender V5.0
blender::nodes::DeclarationListBuilder Class Reference

#include <NOD_node_declaration.hh>

Inherited by blender::nodes::NodeDeclarationBuilder, and blender::nodes::PanelDeclarationBuilder.

Public Member Functions

 DeclarationListBuilder (NodeDeclarationBuilder &node_decl_builder, Vector< ItemDeclaration * > &items)
BaseSocketDeclarationBuilderadd_input (eNodeSocketDatatype socket_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_input (eCustomDataType data_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_output (eNodeSocketDatatype socket_type, StringRef name, StringRef identifier="")
BaseSocketDeclarationBuilderadd_output (eCustomDataType data_type, StringRef name, StringRef identifier="")
PanelDeclarationBuilderadd_panel (StringRef name, int identifier=-1)
void add_separator ()
void add_default_layout ()
void add_layout (std::function< void(uiLayout *, bContext *, PointerRNA *)> draw)
#DeclarationListBuilder Inline Methods
template<typename DeclType>
DeclType::Builder & add_socket (StringRef name, StringRef identifier, eNodeSocketInOut in_out)
template<typename DeclType>
DeclType::Builder & add_input (StringRef name, StringRef identifier="")
template<typename DeclType>
DeclType::Builder & add_output (StringRef name, StringRef identifier="")

Public Attributes

NodeDeclarationBuildernode_decl_builder
Vector< ItemDeclaration * > & items
PanelDeclarationparent_panel_decl = nullptr

Detailed Description

This is a base class for NodeDeclarationBuilder and PanelDeclarationBuilder. It unifies the behavior of adding sockets and other items to the root node and to panels.

Definition at line 555 of file NOD_node_declaration.hh.

Constructor & Destructor Documentation

◆ DeclarationListBuilder()

blender::nodes::DeclarationListBuilder::DeclarationListBuilder ( NodeDeclarationBuilder & node_decl_builder,
Vector< ItemDeclaration * > & items )
inline

Member Function Documentation

◆ add_default_layout()

void blender::nodes::DeclarationListBuilder::add_default_layout ( )

◆ add_input() [1/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_input ( eCustomDataType data_type,
StringRef name,
StringRef identifier = "" )

◆ add_input() [2/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_input ( eNodeSocketDatatype socket_type,
StringRef name,
StringRef identifier = "" )

◆ add_input() [3/3]

template<typename DeclType>
DeclType::Builder & blender::nodes::DeclarationListBuilder::add_input ( StringRef name,
StringRef identifier = "" )
inline

Definition at line 745 of file NOD_node_declaration.hh.

References add_socket(), name, and SOCK_IN.

Referenced by add_input(), add_input(), blender::nodes::node_composite_color_spill_cc::cmp_node_color_spill_declare(), blender::nodes::node_composite_colorbalance_cc::cmp_node_colorbalance_declare(), blender::nodes::node_composite_colorcorrection_cc::cmp_node_colorcorrection_declare(), blender::nodes::node_composite_cornerpin_cc::cmp_node_cornerpin_declare(), blender::nodes::node_composite_directionalblur_cc::cmp_node_directional_blur_declare(), blender::nodes::node_composite_displace_cc::cmp_node_displace_declare(), blender::nodes::node_composite_glare_cc::cmp_node_glare_declare(), blender::nodes::node_composite_keying_cc::cmp_node_keying_declare(), blender::nodes::node_composite_map_uv_cc::cmp_node_map_uv_declare(), blender::nodes::node_composite_mask_cc::cmp_node_mask_declare(), blender::nodes::node_composite_planetrackdeform_cc::cmp_node_planetrackdeform_declare(), blender::nodes::node_composite_rotate_cc::cmp_node_rotate_declare(), blender::nodes::node_composite_scale_cc::cmp_node_scale_declare(), blender::nodes::node_composite_stabilize2d_cc::cmp_node_stabilize2d_declare(), blender::nodes::node_composite_transform_cc::cmp_node_transform_declare(), blender::nodes::node_composite_translate_cc::cmp_node_translate_declare(), blender::nodes::node_shader_bsdf_glass_cc::node_declare(), blender::nodes::node_shader_bsdf_metallic_cc::node_declare(), blender::nodes::node_shader_bsdf_principled_cc::node_declare(), and blender::nodes::node_shader_volume_coefficients_cc::node_declare().

◆ add_layout()

◆ add_output() [1/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_output ( eCustomDataType data_type,
StringRef name,
StringRef identifier = "" )

◆ add_output() [2/3]

BaseSocketDeclarationBuilder & blender::nodes::DeclarationListBuilder::add_output ( eNodeSocketDatatype socket_type,
StringRef name,
StringRef identifier = "" )

◆ add_output() [3/3]

template<typename DeclType>
DeclType::Builder & blender::nodes::DeclarationListBuilder::add_output ( StringRef name,
StringRef identifier = "" )
inline

◆ add_panel()

◆ add_separator()

void blender::nodes::DeclarationListBuilder::add_separator ( )

Definition at line 426 of file node_declaration.cc.

References items, and node_decl_builder.

◆ add_socket()

Member Data Documentation

◆ items

◆ node_decl_builder

NodeDeclarationBuilder& blender::nodes::DeclarationListBuilder::node_decl_builder

◆ parent_panel_decl

PanelDeclaration* blender::nodes::DeclarationListBuilder::parent_panel_decl = nullptr

Definition at line 559 of file NOD_node_declaration.hh.

Referenced by add_panel().


The documentation for this class was generated from the following files: