|
Blender V4.3
|
Compositor output operation. More...
#include <COM_CompositorOperation.h>
Inherits blender::compositor::MultiThreadedOperation.
Public Member Functions | |
| CompositorOperation () | |
| bool | is_active_compositor_output () const |
| void | set_scene (const struct Scene *scene) |
| void | set_scene_name (const char *scene_name) |
| void | set_view_name (const char *view_name) |
| void | set_render_data (const RenderData *rd) |
| bool | is_output_operation (bool) const override |
| is_output_operation determines whether this operation is an output of the ExecutionSystem during rendering or editing. | |
| void | init_execution () override |
| void | deinit_execution () override |
| eCompositorPriority | get_render_priority () const override |
| get the render priority of this node. | |
| void | determine_canvas (const rcti &preferred_area, rcti &r_area) override |
| void | set_use_alpha_input (bool value) |
| void | set_active (bool active) |
| void | update_memory_buffer_partial (MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override |
Public Member Functions inherited from blender::compositor::NodeOperation | |
| virtual | ~NodeOperation () |
| void | set_name (const std::string name) |
| const std::string | get_name () const |
| void | set_id (const int id) |
| const int | get_id () const |
| const void | set_node_instance_key (const bNodeInstanceKey &node_instance_key) |
| const bNodeInstanceKey | get_node_instance_key () const |
| float | get_constant_value_default (float default_value) |
| const float * | get_constant_elem_default (const float *default_elem) |
| const NodeOperationFlags | get_flags () const |
| std::optional< NodeOperationHash > | generate_hash () |
| unsigned int | get_number_of_input_sockets () const |
| unsigned int | get_number_of_output_sockets () const |
| NodeOperationOutput * | get_output_socket (unsigned int index=0) |
| NodeOperationInput * | get_input_socket (unsigned int index) |
| NodeOperation * | get_input_operation (int index) |
| void | set_bnodetree (const bNodeTree *tree) |
| void | set_execution_system (ExecutionSystem *system) |
| virtual void | init_data () |
| void | set_canvas (const rcti &canvas_area) |
| const rcti & | get_canvas () const |
| void | unset_canvas () |
| virtual bool | is_active_viewer_output () const |
| is this operation the active viewer output user can select an ViewerNode to be active (the result of this node will be drawn on the backdrop). | |
| void | set_canvas_input_index (unsigned int index) |
| set the index of the input socket that will determine the canvas of this operation | |
| void | set_determined_canvas_modifier (std::function< void(rcti &canvas)> fn) |
| bool | is_braked () const |
| void | update_draw () |
| unsigned int | get_width () const |
| unsigned int | get_height () const |
| virtual MemoryBuffer * | get_input_memory_buffer (MemoryBuffer **) |
| virtual std::unique_ptr< MetaData > | get_meta_data () |
| void | render (MemoryBuffer *output_buf, Span< rcti > areas, Span< MemoryBuffer * > inputs_bufs) |
| virtual void | get_area_of_interest (int input_idx, const rcti &output_area, rcti &r_input_area) |
| Get input operation area being read by this operation on rendering given output area. | |
| void | get_area_of_interest (NodeOperation *input_op, const rcti &output_area, rcti &r_input_area) |
Compositor output operation.
Definition at line 16 of file COM_CompositorOperation.h.
| blender::compositor::CompositorOperation::CompositorOperation | ( | ) |
Definition at line 19 of file COM_CompositorOperation.cc.
References blender::compositor::NodeOperation::add_input_socket(), blender::compositor::Color, blender::compositor::NodeOperation::flags_, set_render_data(), blender::compositor::NodeOperationFlags::use_render_border, and blender::compositor::Value.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 50 of file COM_CompositorOperation.cc.
References BKE_image_ensure_viewer(), BKE_image_partial_update_mark_full_update(), BKE_image_signal(), BLI_thread_lock(), BLI_thread_unlock(), G, RenderResult::have_combined, IB_TAKE_OWNERSHIP, IMA_SIGNAL_FREE, IMA_TYPE_R_RESULT, IMB_assign_float_buffer(), blender::compositor::NodeOperation::is_braked(), LOCK_DRAW_IMAGE, MEM_freeN(), RE_AcquireResultWrite(), RE_GetSceneRender(), RE_ReleaseResult(), RE_RenderViewEnsureImBuf(), and RE_RenderViewGetByName().
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 113 of file COM_CompositorOperation.cc.
References BKE_render_resolution(), BLI_rcti_init(), blender::compositor::NodeOperation::determine_canvas(), RE_AcquireResultRead(), RE_GetSceneRender(), RE_ReleaseResult(), RenderResult::rectx, RenderResult::recty, and blender::compositor::NodeOperation::set_determined_canvas_modifier().
|
inlineoverridevirtual |
get the render priority of this node.
Reimplemented from blender::compositor::NodeOperation.
Definition at line 74 of file COM_CompositorOperation.h.
References blender::compositor::Medium.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 37 of file COM_CompositorOperation.cc.
References blender::compositor::NodeOperation::get_height(), blender::compositor::NodeOperation::get_width(), and MEM_callocN.
|
inline |
Definition at line 51 of file COM_CompositorOperation.h.
Referenced by is_output_operation().
|
inlineoverridevirtual |
is_output_operation determines whether this operation is an output of the ExecutionSystem during rendering or editing.
Default behavior if not overridden, this operation will not be evaluated as being an output of the ExecutionSystem.
| rendering | [true false] true: rendering false: editing |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 68 of file COM_CompositorOperation.h.
References is_active_compositor_output().
|
inline |
Definition at line 83 of file COM_CompositorOperation.h.
Referenced by blender::compositor::CompositorNode::convert_to_operations().
|
inline |
Definition at line 64 of file COM_CompositorOperation.h.
Referenced by CompositorOperation(), and blender::compositor::CompositorNode::convert_to_operations().
|
inline |
Definition at line 55 of file COM_CompositorOperation.h.
References scene.
Referenced by blender::compositor::CompositorNode::convert_to_operations().
| void blender::compositor::CompositorOperation::set_scene_name | ( | const char * | scene_name | ) |
Definition at line 94 of file COM_CompositorOperation.cc.
References STRNCPY.
Referenced by blender::compositor::CompositorNode::convert_to_operations().
|
inline |
Definition at line 79 of file COM_CompositorOperation.h.
Referenced by blender::compositor::CompositorNode::convert_to_operations().
|
inline |
Definition at line 60 of file COM_CompositorOperation.h.
Referenced by blender::compositor::CompositorNode::convert_to_operations().
|
overridevirtual |
Executes operation updating a memory buffer area. Multi-threaded calls.
Implements blender::compositor::MultiThreadedOperation.
Definition at line 99 of file COM_CompositorOperation.cc.
References blender::compositor::COM_DATA_TYPE_COLOR_CHANNELS, blender::compositor::COM_DATA_TYPE_VALUE_CHANNELS, blender::compositor::MemoryBuffer::copy_from(), blender::compositor::NodeOperation::get_height(), and blender::compositor::NodeOperation::get_width().