|
Blender V4.3
|
#include <COM_ViewerOperation.h>
Inherits blender::compositor::MultiThreadedOperation.
Public Member Functions | |
| ViewerOperation () | |
| void | init_execution () override |
| void | deinit_execution () override |
| void | determine_canvas (const rcti &preferred_area, rcti &r_area) override |
| 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 | set_image (Image *image) |
| void | set_image_user (ImageUser *image_user) |
| bool | is_active_viewer_output () const override |
| 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_active (bool active) |
| eCompositorPriority | get_render_priority () const override |
| get the render priority of this node. | |
| void | set_use_alpha_input (bool value) |
| void | set_render_data (const RenderData *rd) |
| void | set_view_name (const char *view_name) |
| void | set_view_settings (const ColorManagedViewSettings *view_settings) |
| void | set_display_settings (const ColorManagedDisplaySettings *display_settings) |
| void | update_memory_buffer_partial (MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override |
| void | update_memory_buffer_finished (MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override |
| void | clear_display_buffer () |
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 () |
| 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) |
Additional Inherited Members | |
Protected Member Functions inherited from blender::compositor::MultiThreadedOperation | |
| MultiThreadedOperation () | |
| virtual void | update_memory_buffer_started (MemoryBuffer *, const rcti &, Span< MemoryBuffer * >) |
Protected Member Functions inherited from blender::compositor::NodeOperation | |
| NodeOperation () | |
| virtual void | hash_output_params () |
| template<typename T > | |
| void | hash_param (T param) |
| template<typename T1 , typename T2 > | |
| void | hash_params (T1 param1, T2 param2) |
| template<typename T1 , typename T2 , typename T3 > | |
| void | hash_params (T1 param1, T2 param2, T3 param3) |
| void | add_input_socket (DataType datatype, ResizeMode resize_mode=ResizeMode::Center) |
| void | add_output_socket (DataType datatype) |
| SocketReader * | get_input_socket_reader (unsigned int index) |
Static Protected Member Functions inherited from blender::compositor::NodeOperation | |
| static void | combine_hashes (size_t &combined, size_t other) |
Protected Attributes inherited from blender::compositor::MultiThreadedOperation | |
| int | num_passes_ |
| int | current_pass_ |
Protected Attributes inherited from blender::compositor::NodeOperation | |
| rcti | canvas_ = COM_AREA_NONE |
| NodeOperationFlags | flags_ |
| ExecutionSystem * | exec_system_ |
Definition at line 14 of file COM_ViewerOperation.h.
| blender::compositor::ViewerOperation::ViewerOperation | ( | ) |
Definition at line 16 of file COM_ViewerOperation.cc.
References blender::compositor::NodeOperation::add_input_socket(), blender::compositor::Color, blender::compositor::NodeOperation::flags_, blender::compositor::NodeOperationFlags::is_viewer_operation, set_image(), set_image_user(), blender::compositor::NodeOperationFlags::use_viewer_border, and blender::compositor::Value.
| void blender::compositor::ViewerOperation::clear_display_buffer | ( | ) |
Definition at line 187 of file COM_ViewerOperation.cc.
References BLI_assert, BLI_rcti_init(), blender::compositor::COM_DATA_TYPE_COLOR_CHANNELS, blender::compositor::NodeOperation::exec_system_, float, is_active_viewer_output(), blender::compositor::ExecutionSystem::is_breaked(), ImBuf::x, and ImBuf::y.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 42 of file COM_ViewerOperation.cc.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 47 of file COM_ViewerOperation.cc.
References BKE_render_resolution(), blender::compositor::NodeOperation::determine_canvas(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
|
overridevirtual |
get the render priority of this node.
Reimplemented from blender::compositor::NodeOperation.
Definition at line 135 of file COM_ViewerOperation.cc.
References blender::compositor::High, is_active_viewer_output(), and blender::compositor::Low.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 35 of file COM_ViewerOperation.cc.
References blender::compositor::NodeOperation::exec_system_, is_active_viewer_output(), and blender::compositor::ExecutionSystem::is_breaked().
|
inlineoverridevirtual |
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).
Reimplemented from blender::compositor::NodeOperation.
Definition at line 50 of file COM_ViewerOperation.h.
Referenced by clear_display_buffer(), get_render_priority(), blender::compositor::DebugInfo::graphviz_operation(), init_execution(), and 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 35 of file COM_ViewerOperation.h.
References G, and is_active_viewer_output().
|
inline |
Definition at line 54 of file COM_ViewerOperation.h.
Referenced by blender::compositor::NodeOperationBuilder::register_viewer().
|
inline |
Definition at line 76 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations().
|
inline |
Definition at line 42 of file COM_ViewerOperation.h.
References image().
Referenced by blender::compositor::ViewerNode::convert_to_operations(), and ViewerOperation().
|
inline |
Definition at line 46 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations(), and ViewerOperation().
|
inline |
Definition at line 63 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations().
|
inline |
Definition at line 59 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations().
|
inline |
Definition at line 67 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations().
|
inline |
Definition at line 72 of file COM_ViewerOperation.h.
Referenced by blender::compositor::ViewerNode::convert_to_operations().
|
overridevirtual |
Called after an update memory buffer pass is executed. Single-threaded calls.
Reimplemented from blender::compositor::MultiThreadedOperation.
Definition at line 164 of file COM_ViewerOperation.cc.
References Image::flag, blender::compositor::NodeOperation::get_input_socket(), blender::compositor::NodeOperation::get_meta_data(), blender::compositor::NodeOperationInput::get_reader(), and IMA_VIEW_AS_RENDER.
|
overridevirtual |
Executes operation updating a memory buffer area. Multi-threaded calls.
Implements blender::compositor::MultiThreadedOperation.
Definition at line 144 of file COM_ViewerOperation.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().