Blender V5.0
vk_pixel_buffer.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2022 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
12
13#include "vk_buffer.hh"
14
15namespace blender::gpu {
16
17class VKPixelBuffer : public PixelBuffer {
18 VKBuffer buffer_;
19 bool buffer_initialized_ = false;
20 bool buffer_memory_export_ = false;
21
22 public:
23 VKPixelBuffer(size_t size);
24 void *map() override;
25 void unmap() override;
27 size_t get_size() override;
28
30 {
31 return buffer_;
32 }
33
34 protected:
35 void create(bool memory_export);
36};
37
38static inline VKPixelBuffer *unwrap(PixelBuffer *pixel_buffer)
39{
40 return static_cast<VKPixelBuffer *>(pixel_buffer);
41}
42
43} // namespace blender::gpu
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
Definition btDbvt.cpp:52
GPUPixelBufferNativeHandle get_native_handle() override
void create(bool memory_export)
static Context * unwrap(GPUContext *ctx)