Blender V4.3
blender::compositor::NodeOperationBuilder Class Reference

#include <COM_NodeOperationBuilder.h>

Classes

class  Link
 

Public Member Functions

 NodeOperationBuilder (const CompositorContext *context, bNodeTree *b_nodetree, ExecutionSystem *system)
 
const CompositorContextcontext () const
 
void convert_to_operations (ExecutionSystem *system)
 
void add_operation (NodeOperation *operation)
 
void replace_operation_with_constant (NodeOperation *operation, ConstantOperation *constant_operation)
 
void map_input_socket (NodeInput *node_socket, NodeOperationInput *operation_socket)
 
void map_output_socket (NodeOutput *node_socket, NodeOperationOutput *operation_socket)
 
void add_link (NodeOperationOutput *from, NodeOperationInput *to)
 
void remove_input_link (NodeOperationInput *to)
 
void add_preview (NodeOperationOutput *output)
 
void add_node_input_preview (NodeInput *input)
 
void register_viewer (ViewerOperation *viewer)
 
ViewerOperationactive_viewer () const
 
Span< NodeOperation * > get_operations () const
 
Span< Linkget_links () const
 

Protected Member Functions

void add_datatype_conversions ()
 
void add_operation_input_constants ()
 
void add_input_constant_value (NodeOperationInput *input, const NodeInput *node_input)
 
void resolve_proxies ()
 
void determine_canvases ()
 
Vector< NodeOperationInput * > cache_output_links (NodeOperationOutput *output) const
 
void prune_operations ()
 
void sort_operations ()
 

Detailed Description

Definition at line 29 of file COM_NodeOperationBuilder.h.

Constructor & Destructor Documentation

◆ NodeOperationBuilder()

blender::compositor::NodeOperationBuilder::NodeOperationBuilder ( const CompositorContext * context,
bNodeTree * b_nodetree,
ExecutionSystem * system )

Member Function Documentation

◆ active_viewer()

ViewerOperation * blender::compositor::NodeOperationBuilder::active_viewer ( ) const
inline

The currently active viewer output operation

Definition at line 102 of file COM_NodeOperationBuilder.h.

Referenced by blender::compositor::NodeConverter::active_viewer().

◆ add_datatype_conversions()

◆ add_input_constant_value()

◆ add_link()

◆ add_node_input_preview()

void blender::compositor::NodeOperationBuilder::add_node_input_preview ( NodeInput * input)

◆ add_operation()

◆ add_operation_input_constants()

void blender::compositor::NodeOperationBuilder::add_operation_input_constants ( )
protected

Construct a constant value operation for every unconnected input

Definition at line 298 of file COM_NodeOperationBuilder.cc.

References add_input_constant_value(), and blender::Vector< T, InlineBufferCapacity, Allocator >::append().

Referenced by convert_to_operations().

◆ add_preview()

void blender::compositor::NodeOperationBuilder::add_preview ( NodeOperationOutput * output)

Add a preview operation for a operation output

Definition at line 226 of file COM_NodeOperationBuilder.cc.

References add_link(), add_operation(), and blender::compositor::NodeOperation::get_input_socket().

Referenced by blender::compositor::NodeConverter::add_preview().

◆ cache_output_links()

Vector< NodeOperationInput * > blender::compositor::NodeOperationBuilder::cache_output_links ( NodeOperationOutput * output) const
protected

Helper function to store connected inputs for replacement

Definition at line 496 of file COM_NodeOperationBuilder.cc.

References inputs, and output.

◆ context()

const CompositorContext & blender::compositor::NodeOperationBuilder::context ( ) const
inline

Definition at line 75 of file COM_NodeOperationBuilder.h.

◆ convert_to_operations()

◆ determine_canvases()

◆ get_links()

Span< Link > blender::compositor::NodeOperationBuilder::get_links ( ) const
inline

Definition at line 112 of file COM_NodeOperationBuilder.h.

Referenced by blender::compositor::operator<<().

◆ get_operations()

Span< NodeOperation * > blender::compositor::NodeOperationBuilder::get_operations ( ) const
inline

◆ map_input_socket()

void blender::compositor::NodeOperationBuilder::map_input_socket ( NodeInput * node_socket,
NodeOperationInput * operation_socket )

◆ map_output_socket()

◆ prune_operations()

void blender::compositor::NodeOperationBuilder::prune_operations ( )
protected

◆ register_viewer()

void blender::compositor::NodeOperationBuilder::register_viewer ( ViewerOperation * viewer)

Define a viewer operation as the active output, if possible

Definition at line 246 of file COM_NodeOperationBuilder.cc.

References blender::compositor::Node::is_in_active_group(), and blender::compositor::ViewerOperation::set_active().

Referenced by blender::compositor::NodeConverter::register_viewer().

◆ remove_input_link()

void blender::compositor::NodeOperationBuilder::remove_input_link ( NodeOperationInput * to)

◆ replace_operation_with_constant()

void blender::compositor::NodeOperationBuilder::replace_operation_with_constant ( NodeOperation * operation,
ConstantOperation * constant_operation )

◆ resolve_proxies()

void blender::compositor::NodeOperationBuilder::resolve_proxies ( )
protected

Replace proxy operations with direct links

Definition at line 373 of file COM_NodeOperationBuilder.cc.

References add_link(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), and remove_input_link().

Referenced by convert_to_operations().

◆ sort_operations()

void blender::compositor::NodeOperationBuilder::sort_operations ( )
protected

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