Blender V4.3
COM_ImageOperation.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_image.hh"
8#include "BLI_listbase.h"
9#include "BLI_sys_types.h"
10#include "BLI_utildefines.h"
12#include "MEM_guardedalloc.h"
13
14#include "RE_pipeline.h"
15#include "RE_texture.h"
16
17namespace blender::compositor {
18
23 protected:
27
33 const char *view_name_;
34
39 void determine_canvas(const rcti &preferred_area, rcti &r_area) override;
40
41 virtual ImBuf *get_im_buf();
42
43 public:
44 void init_execution() override;
45 void deinit_execution() override;
46 void set_image(Image *image)
47 {
48 image_ = image;
49 }
50 void set_image_user(const ImageUser &imageuser)
51 {
52 image_user_ = imageuser;
53 }
55 {
56 rd_ = rd;
57 }
58 void set_view_name(const char *view_name)
59 {
60 view_name_ = view_name;
61 }
62 void set_framenumber(int framenumber)
63 {
64 framenumber_ = framenumber;
65 }
66};
68 public:
73
75 const rcti &area,
76 Span<MemoryBuffer *> inputs) override;
77};
79 public:
84
86 const rcti &area,
87 Span<MemoryBuffer *> inputs) override;
88};
89} // namespace blender::compositor
Read Guarded memory(de)allocation.
Base class for all image operations.
void set_render_data(const RenderData *rd)
void set_image_user(const ImageUser &imageuser)
void determine_canvas(const rcti &preferred_area, rcti &r_area) override
void set_view_name(const char *view_name)
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
a MemoryBuffer contains access to the data
input_tx image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "preview_img") .compute_source("compositor_compute_preview.glsl") .do_static_compilation(true)