Blender
V5.0
source
blender
gpu
intern
gpu_uniform_buffer_private.hh
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2020 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9
#pragma once
10
11
#include "
BLI_sys_types.h
"
12
13
namespace
blender::gpu
{
14
15
#ifndef NDEBUG
16
# define DEBUG_NAME_LEN 64
17
#else
18
# define DEBUG_NAME_LEN 8
19
#endif
20
25
class
UniformBuf
{
26
protected
:
28
size_t
size_in_bytes_
;
30
void
*
data_
=
nullptr
;
32
char
name_
[
DEBUG_NAME_LEN
];
33
34
public
:
35
UniformBuf
(
size_t
size
,
const
char
*
name
);
36
virtual
~UniformBuf
();
37
38
virtual
void
update
(
const
void
*
data
) = 0;
39
virtual
void
clear_to_zero
() = 0;
40
virtual
void
bind
(
int
slot) = 0;
41
virtual
void
bind_as_ssbo
(
int
slot) = 0;
42
virtual
void
unbind
() = 0;
43
47
void
attach_data
(
void
*
data
)
48
{
49
data_
=
data
;
50
}
51
};
52
53
#undef DEBUG_NAME_LEN
54
55
}
// namespace blender::gpu
BLI_sys_types.h
data
BMesh const char void * data
Definition
bmesh_iterators_inline.hh:37
size
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
Definition
btDbvt.cpp:52
blender::gpu::UniformBuf::name_
char name_[DEBUG_NAME_LEN]
Definition
gpu_uniform_buffer_private.hh:32
blender::gpu::UniformBuf::attach_data
void attach_data(void *data)
Definition
gpu_uniform_buffer_private.hh:47
blender::gpu::UniformBuf::unbind
virtual void unbind()=0
blender::gpu::UniformBuf::update
virtual void update(const void *data)=0
blender::gpu::UniformBuf::UniformBuf
UniformBuf(size_t size, const char *name)
Definition
gpu_uniform_buffer.cc:35
blender::gpu::UniformBuf::data_
void * data_
Definition
gpu_uniform_buffer_private.hh:30
blender::gpu::UniformBuf::bind
virtual void bind(int slot)=0
blender::gpu::UniformBuf::bind_as_ssbo
virtual void bind_as_ssbo(int slot)=0
blender::gpu::UniformBuf::size_in_bytes_
size_t size_in_bytes_
Definition
gpu_uniform_buffer_private.hh:28
blender::gpu::UniformBuf::~UniformBuf
virtual ~UniformBuf()
Definition
gpu_uniform_buffer.cc:45
blender::gpu::UniformBuf::clear_to_zero
virtual void clear_to_zero()=0
DEBUG_NAME_LEN
#define DEBUG_NAME_LEN
Definition
gpu_framebuffer_private.hh:67
blender::gpu
Definition
blf_internal_types.hh:32
name
const char * name
Definition
python_compat.hh:32
Generated on
for Blender by
doxygen
1.16.1