Blender
V4.3
source
blender
compositor
operations
COM_ViewerOperation.h
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2011 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
5
#pragma once
6
7
#include "
BKE_global.hh
"
8
#include "
BLI_rect.h
"
9
#include "
COM_MultiThreadedOperation.h
"
10
#include "
DNA_image_types.h
"
11
12
namespace
blender::compositor
{
13
14
class
ViewerOperation
:
public
MultiThreadedOperation
{
15
private
:
16
/* TODO(manzanilla): To be removed together with tiled implementation. */
17
float
*output_buffer_;
18
19
Image
*image_;
20
ImageUser
*image_user_;
21
bool
active_;
22
ImBuf
*ibuf_;
23
bool
use_alpha_input_;
24
const
RenderData
*rd_;
25
const
char
*view_name_;
26
27
const
ColorManagedViewSettings
*view_settings_;
28
const
ColorManagedDisplaySettings
*display_settings_;
29
30
public
:
31
ViewerOperation
();
32
void
init_execution
()
override
;
33
void
deinit_execution
()
override
;
34
void
determine_canvas
(
const
rcti
&preferred_area,
rcti
&r_area)
override
;
35
bool
is_output_operation
(
bool
/*rendering*/
)
const override
36
{
37
if
(
G
.background) {
38
return
false
;
39
}
40
return
is_active_viewer_output
();
41
}
42
void
set_image
(
Image
*
image
)
43
{
44
image_ =
image
;
45
}
46
void
set_image_user
(
ImageUser
*image_user)
47
{
48
image_user_ = image_user;
49
}
50
bool
is_active_viewer_output
()
const override
51
{
52
return
active_;
53
}
54
void
set_active
(
bool
active)
55
{
56
active_ = active;
57
}
58
eCompositorPriority
get_render_priority
()
const override
;
59
void
set_use_alpha_input
(
bool
value)
60
{
61
use_alpha_input_ = value;
62
}
63
void
set_render_data
(
const
RenderData
*rd)
64
{
65
rd_ = rd;
66
}
67
void
set_view_name
(
const
char
*view_name)
68
{
69
view_name_ = view_name;
70
}
71
72
void
set_view_settings
(
const
ColorManagedViewSettings
*view_settings)
73
{
74
view_settings_ = view_settings;
75
}
76
void
set_display_settings
(
const
ColorManagedDisplaySettings
*display_settings)
77
{
78
display_settings_ = display_settings;
79
}
80
81
void
update_memory_buffer_partial
(
MemoryBuffer
*
output
,
82
const
rcti
&area,
83
Span<MemoryBuffer *>
inputs
)
override
;
84
85
void
update_memory_buffer_finished
(
MemoryBuffer
*
output
,
86
const
rcti
&area,
87
Span<MemoryBuffer *>
inputs
)
override
;
88
89
void
clear_display_buffer
();
90
91
private
:
92
void
update_image(
const
rcti
*rect);
93
void
init_image();
94
};
95
96
}
// namespace blender::compositor
BKE_global.hh
BLI_rect.h
COM_MultiThreadedOperation.h
DNA_image_types.h
output
#define output
blender::Span
Definition
BLI_span.hh:75
blender::compositor::MemoryBuffer
a MemoryBuffer contains access to the data
Definition
COM_MemoryBuffer.h:35
blender::compositor::MultiThreadedOperation::MultiThreadedOperation
MultiThreadedOperation()
Definition
COM_MultiThreadedOperation.cc:10
blender::compositor::ViewerOperation::set_active
void set_active(bool active)
Definition
COM_ViewerOperation.h:54
blender::compositor::ViewerOperation::set_display_settings
void set_display_settings(const ColorManagedDisplaySettings *display_settings)
Definition
COM_ViewerOperation.h:76
blender::compositor::ViewerOperation::set_image_user
void set_image_user(ImageUser *image_user)
Definition
COM_ViewerOperation.h:46
blender::compositor::ViewerOperation::deinit_execution
void deinit_execution() override
Definition
COM_ViewerOperation.cc:42
blender::compositor::ViewerOperation::update_memory_buffer_partial
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
Definition
COM_ViewerOperation.cc:144
blender::compositor::ViewerOperation::get_render_priority
eCompositorPriority get_render_priority() const override
get the render priority of this node.
Definition
COM_ViewerOperation.cc:135
blender::compositor::ViewerOperation::is_active_viewer_output
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 ...
Definition
COM_ViewerOperation.h:50
blender::compositor::ViewerOperation::ViewerOperation
ViewerOperation()
Definition
COM_ViewerOperation.cc:16
blender::compositor::ViewerOperation::is_output_operation
bool is_output_operation(bool) const override
is_output_operation determines whether this operation is an output of the ExecutionSystem during rend...
Definition
COM_ViewerOperation.h:35
blender::compositor::ViewerOperation::determine_canvas
void determine_canvas(const rcti &preferred_area, rcti &r_area) override
Definition
COM_ViewerOperation.cc:47
blender::compositor::ViewerOperation::set_view_name
void set_view_name(const char *view_name)
Definition
COM_ViewerOperation.h:67
blender::compositor::ViewerOperation::set_render_data
void set_render_data(const RenderData *rd)
Definition
COM_ViewerOperation.h:63
blender::compositor::ViewerOperation::set_use_alpha_input
void set_use_alpha_input(bool value)
Definition
COM_ViewerOperation.h:59
blender::compositor::ViewerOperation::set_image
void set_image(Image *image)
Definition
COM_ViewerOperation.h:42
blender::compositor::ViewerOperation::clear_display_buffer
void clear_display_buffer()
Definition
COM_ViewerOperation.cc:187
blender::compositor::ViewerOperation::init_execution
void init_execution() override
Definition
COM_ViewerOperation.cc:35
blender::compositor::ViewerOperation::update_memory_buffer_finished
void update_memory_buffer_finished(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
Definition
COM_ViewerOperation.cc:164
blender::compositor::ViewerOperation::set_view_settings
void set_view_settings(const ColorManagedViewSettings *view_settings)
Definition
COM_ViewerOperation.h:72
image
input_tx image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "preview_img") .compute_source("compositor_compute_preview.glsl") .do_static_compilation(true)
blender::compositor::eCompositorPriority
eCompositorPriority
Possible priority settings.
Definition
COM_Enums.h:33
G
#define G(x, y, z)
blender::compositor
Definition
COM_JumpFloodingAlgorithm.cc:20
inputs
static blender::bke::bNodeSocketTemplate inputs[]
Definition
node_texture_at.cc:11
ColorManagedDisplaySettings
Definition
DNA_color_types.h:208
ColorManagedViewSettings
Definition
DNA_color_types.h:188
ImBuf
Definition
IMB_imbuf_types.hh:185
ImageUser
Definition
DNA_image_types.h:26
Image
Definition
DNA_image_types.h:142
RenderData
Definition
DNA_scene_types.h:655
rcti
Definition
DNA_vec_types.h:68
Generated on Sat Oct 4 2025 05:32:23 for Blender by
doxygen
1.14.0