5#include "testing/testing.h"
16constexpr size_t SIZE = 128;
31 EXPECT_NE(ssbo,
nullptr);
55 EXPECT_NE(ssbo,
nullptr);
79 EXPECT_NE(ssbo,
nullptr);
101 EXPECT_NE(ssbo,
nullptr);
124 EXPECT_NE(ssbo,
nullptr);
147 Span<float> expected_data(
static_cast<float *
>(
static_cast<void *
>(&
data)), 24);
175 EXPECT_EQ_SPAN(expected_data, read_data.
as_span().slice(4, 24));
191 EXPECT_EQ_SPAN(expected_data.
slice(6, 12), read_data.
as_span().slice(4, 12));
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
void GPU_storagebuf_free(blender::gpu::StorageBuf *ssbo)
blender::gpu::StorageBuf * GPU_storagebuf_create_ex(size_t size, const void *data, GPUUsageType usage, const char *name)
void GPU_storagebuf_clear_to_zero(blender::gpu::StorageBuf *ssbo)
void GPU_storagebuf_clear(blender::gpu::StorageBuf *ssbo, uint32_t clear_value)
void GPU_storagebuf_copy_sub_from_vertbuf(blender::gpu::StorageBuf *ssbo, blender::gpu::VertBuf *src, uint dst_offset, uint src_offset, uint copy_size)
Copy a part of a vertex buffer to a storage buffer.
void GPU_storagebuf_update(blender::gpu::StorageBuf *ssbo, const void *data)
void GPU_storagebuf_read(blender::gpu::StorageBuf *ssbo, void *data)
void GPU_vertbuf_vert_set(blender::gpu::VertBuf *verts, uint v_idx, const void *data)
static blender::gpu::VertBuf * GPU_vertbuf_create_with_format(const GPUVertFormat &format)
void GPU_vertbuf_data_alloc(blender::gpu::VertBuf &verts, uint v_len)
void GPU_vertbuf_discard(blender::gpu::VertBuf *)
BMesh const char void * data
constexpr Span slice(int64_t start, int64_t size) const
void resize(const int64_t new_size)
Span< T > as_span() const
#define GPU_TEST(test_name)
static void test_storage_buffer_clear_zero()
static void test_storage_buffer_clear()
static Vector< int32_t > test_data()
static void test_storage_buffer_create_update_read()
static void test_storage_buffer_copy_from_vertex_buffer()
constexpr size_t SIZE_IN_BYTES
static void test_storage_buffer_clear_byte_pattern()
VecBase< float, 4 > float4
VecBase< float, 2 > float2