Blender V4.3
blender::nodes::NodeDeclarationBuilder Class Reference

#include <NOD_node_declaration.hh>

Public Member Functions

 NodeDeclarationBuilder (NodeDeclaration &declaration, const bNodeTree *ntree=nullptr, const bNode *node=nullptr)
 
const bNodenode_or_null () const
 
const bNodeTreetree_or_null () const
 
void is_function_node ()
 
void finalize ()
 
void use_custom_socket_order (bool enable=true)
 
void allow_any_socket_order (bool enable=true)
 
PanelDeclarationBuilderadd_panel (StringRef name, int identifier=-1)
 
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="")
 
void add_separator ()
 
aal::RelationsInNodeget_anonymous_attribute_relations ()
 
NodeDeclarationdeclaration ()
 

#NodeDeclarationBuilder Inline Methods

template<typename DeclType >
DeclType::Builder & add_input (StringRef name, StringRef identifier="")
 
template<typename DeclType >
DeclType::Builder & add_output (StringRef name, StringRef identifier="")
 

Detailed Description

Definition at line 525 of file NOD_node_declaration.hh.

Constructor & Destructor Documentation

◆ NodeDeclarationBuilder()

blender::nodes::NodeDeclarationBuilder::NodeDeclarationBuilder ( NodeDeclaration & declaration,
const bNodeTree * ntree = nullptr,
const bNode * node = nullptr )

Definition at line 96 of file node_declaration.cc.

Member Function Documentation

◆ add_input() [1/3]

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

◆ add_input() [2/3]

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

◆ add_input() [3/3]

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

Definition at line 692 of file NOD_node_declaration.hh.

References SOCK_IN.

Referenced by add_input(), and add_input().

◆ add_output() [1/3]

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

◆ add_output() [2/3]

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

◆ add_output() [3/3]

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

Definition at line 700 of file NOD_node_declaration.hh.

References SOCK_OUT.

Referenced by add_output(), and add_output().

◆ add_panel()

◆ add_separator()

void blender::nodes::NodeDeclarationBuilder::add_separator ( )

◆ allow_any_socket_order()

void blender::nodes::NodeDeclarationBuilder::allow_any_socket_order ( bool enable = true)

◆ declaration()

NodeDeclaration & blender::nodes::NodeDeclarationBuilder::declaration ( )
inline

Definition at line 599 of file NOD_node_declaration.hh.

◆ finalize()

void blender::nodes::NodeDeclarationBuilder::finalize ( )

Definition at line 90 of file node_declaration.cc.

References BLI_assert, and blender::nodes::NodeDeclaration::is_valid().

◆ get_anonymous_attribute_relations()

aal::RelationsInNode & blender::nodes::NodeDeclarationBuilder::get_anonymous_attribute_relations ( )
inline

◆ is_function_node()

void blender::nodes::NodeDeclarationBuilder::is_function_node ( )
inline

All inputs support fields, and all outputs are fields if any of the inputs is a field. Calling field status definitions on each socket is unnecessary.

Definition at line 560 of file NOD_node_declaration.hh.

◆ node_or_null()

const bNode * blender::nodes::NodeDeclarationBuilder::node_or_null ( ) const
inline

◆ tree_or_null()

const bNodeTree * blender::nodes::NodeDeclarationBuilder::tree_or_null ( ) const
inline

◆ use_custom_socket_order()

void blender::nodes::NodeDeclarationBuilder::use_custom_socket_order ( bool enable = true)

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