Blender V4.3
COM_PreviewOperation.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"
10#include "DNA_color_types.h"
11#include "DNA_image_types.h"
12
13namespace blender::compositor {
14
16 protected:
18
23 float divider_;
24 unsigned int default_width_;
25 unsigned int default_height_;
26
29
30 public:
31 PreviewOperation(const ColorManagedViewSettings *view_settings,
32 const ColorManagedDisplaySettings *display_settings,
33 unsigned int default_width,
34 unsigned int default_height);
36
37 bool is_output_operation(bool /*rendering*/) const override
38 {
39 return !G.background;
40 }
41 void init_execution() override;
42 void deinit_execution() override;
44
45 void determine_canvas(const rcti &preferred_area, rcti &r_area) override;
46
47 void get_area_of_interest(int input_idx, const rcti &output_area, rcti &r_input_area) override;
49 const rcti &area,
50 Span<MemoryBuffer *> inputs) override;
51};
52
53} // namespace blender::compositor
a MemoryBuffer contains access to the data
bNodePreview * preview_
holds reference to the SDNA bNode, where this nodes will render the preview image for
void get_area_of_interest(int input_idx, const rcti &output_area, rcti &r_input_area) override
Get input operation area being read by this operation on rendering given output area.
const ColorManagedDisplaySettings * display_settings_
eCompositorPriority get_render_priority() const override
get the render priority of this node.
bool is_output_operation(bool) const override
is_output_operation determines whether this operation is an output of the ExecutionSystem during rend...
const ColorManagedViewSettings * view_settings_
void determine_canvas(const rcti &preferred_area, rcti &r_area) override
PreviewOperation(const ColorManagedViewSettings *view_settings, const ColorManagedDisplaySettings *display_settings, unsigned int default_width, unsigned int default_height)
void verify_preview(bke::bNodeInstanceHash *previews, bNodeInstanceKey key)
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
eCompositorPriority
Possible priority settings.
Definition COM_Enums.h:33
#define G(x, y, z)