Blender
V3.3
|
#include <NOD_node_declaration.hh>
Public Member Functions | |
Self & | hide_label (bool value=true) |
Self & | hide_value (bool value=true) |
Self & | multi_input (bool value=true) |
Self & | description (std::string value="") |
Self & | no_muted_links (bool value=true) |
Self & | unavailable (bool value=true) |
Self & | is_attribute_name (bool value=true) |
Self & | is_default_link_socket (bool value=true) |
Self & | supports_field () |
Self & | implicit_field () |
Self & | field_source () |
Self & | dependent_field () |
Self & | dependent_field (Vector< int > input_dependencies) |
Self & | make_available (std::function< void(bNode &)> fn) |
![]() | |
virtual | ~BaseSocketDeclarationBuilder ()=default |
Protected Types | |
using | Self = typename SocketDecl::Builder |
Protected Attributes | |
SocketDecl * | decl_ |
Friends | |
class | NodeDeclarationBuilder |
Wraps a #SocketDeclaration and provides methods to set it up correctly. This is separate from #SocketDeclaration, because it allows separating the API used by nodes to declare themselves from how the declaration is stored internally.
Definition at line 143 of file NOD_node_declaration.hh.
|
protected |
Definition at line 145 of file NOD_node_declaration.hh.
|
inline |
The output is a field if any of the inputs is a field.
Definition at line 227 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_, and blender::nodes::OutputFieldDependency::ForDependentField().
|
inline |
The output is a field if any of the inputs with indices in the given list is a field.
Definition at line 234 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_, and blender::nodes::OutputFieldDependency::ForPartiallyDependentField().
|
inline |
Definition at line 170 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
The output is always a field, regardless of any inputs.
Definition at line 220 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_, and blender::nodes::OutputFieldDependency::ForFieldSource().
|
inline |
Definition at line 152 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
Definition at line 158 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
Referenced by blender::nodes::SocketDeclarationBuilder< SocketDecl >::implicit_field().
|
inline |
The input supports a field and is a field by default when nothing is connected.
Definition at line 212 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::hide_value(), and blender::nodes::Implicit.
|
inline |
Definition at line 192 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
Definition at line 198 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
Pass a function that sets properties on the node required to make the corresponding socket available, if it is not available on the default state of the node. The function is allowed to make other sockets unavailable, since it is meant to be called when the node is first added. The node type's update function is called afterwards.
Definition at line 247 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
Definition at line 164 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
Definition at line 176 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
inline |
The input socket allows passing in a field.
Definition at line 205 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_, and blender::nodes::IsSupported.
|
inline |
Used for sockets that are always unavailable and should not be seen by the user. Ideally, no new calls to this method should be added over time.
Definition at line 186 of file NOD_node_declaration.hh.
References blender::nodes::SocketDeclarationBuilder< SocketDecl >::decl_.
|
friend |
Definition at line 149 of file NOD_node_declaration.hh.
|
protected |
Definition at line 147 of file NOD_node_declaration.hh.
Referenced by blender::nodes::SocketDeclarationBuilder< SocketDecl >::dependent_field(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::description(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::field_source(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::hide_label(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::hide_value(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::is_attribute_name(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::is_default_link_socket(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::make_available(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::multi_input(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::no_muted_links(), blender::nodes::SocketDeclarationBuilder< SocketDecl >::supports_field(), and blender::nodes::SocketDeclarationBuilder< SocketDecl >::unavailable().