MythTV
master
mythtv
libs
libmythui
vulkan
mythcombobuffervulkan.h
Go to the documentation of this file.
1
#ifndef MYTHCOMBOBUFFERVULKAN_H
2
#define MYTHCOMBOBUFFERVULKAN_H
3
4
// Qt
5
#include <QRect>
6
#include <QMatrix4x4>
7
8
// MythTV
9
#include "
libmythui/mythuiexp.h
"
10
11
// Total Buffer size of 112bytes.
12
// Vulkan spec guarantees 128 bytes for push constants
13
// Prevent clang-tidy modernize-avoid-c-arrays warnings.
14
extern
"C"
{
15
struct
alignas
(16)
VulkanComboBuffer
16
{
17
float
transform
[16];
18
float
position
[4];
19
float
texcoords
[4];
20
float
color
[4];
21
};
22
}
23
24
#define MYTH_PUSHBUFFER_SIZE (sizeof(VulkanComboBuffer))
25
26
class
MUI_PUBLIC
MythComboBufferVulkan
27
{
28
public
:
29
MythComboBufferVulkan
(
float
Width,
float
Height);
30
31
const
void
* Data(
void
)
const
;
32
void
PushData(
const
QMatrix4x4 &
Transform
, QRect
Source
,
33
QRect Destination,
int
Alpha);
34
void
PopData(
void
);
35
36
std::vector<VulkanComboBuffer>
m_data
;
37
float
m_width { 0.0F };
38
float
m_height { 0.0F };
39
};
40
41
#endif
Transform
static void Transform(SIMI *Simi, F_PT xo, F_PT yo, F_PT *x, F_PT *y)
Definition:
ifs.cpp:290
MUI_PUBLIC
#define MUI_PUBLIC
Definition:
mythuiexp.h:9
VulkanComboBuffer
Definition:
mythcombobuffervulkan.h:15
VulkanComboBuffer::position
float position[4]
Definition:
mythcombobuffervulkan.h:18
Source
Definition:
channelsettings.cpp:93
VulkanComboBuffer::color
float color[4]
Definition:
mythcombobuffervulkan.h:20
MythComboBufferVulkan
Definition:
mythcombobuffervulkan.h:26
VulkanComboBuffer::transform
float transform[16]
Definition:
mythcombobuffervulkan.h:17
VulkanComboBuffer::texcoords
float texcoords[4]
Definition:
mythcombobuffervulkan.h:19
MythComboBufferVulkan::m_data
std::vector< VulkanComboBuffer > m_data
Definition:
mythcombobuffervulkan.h:36
mythuiexp.h
Generated on Tue Jan 7 2025 03:18:37 for MythTV by
1.8.17