MythTV master
mythvisualmonoscopevulkan.h
Go to the documentation of this file.
1#ifndef MYTHVISUALMONOSCOPEVULKAN_H
2#define MYTHVISUALMONOSCOPEVULKAN_H
3
4// MythTV
8
12
13// Vertex buffer + Hue,Alpha,Zoom
14using VertexState = std::pair<MythBufferVulkan*, std::array<float,3>>;
15using VertexStates = QVector<VertexState>;
16
17extern "C" {
18struct alignas(16) PushBuffer
19{
20 float transform [16];
21 float color [4];
22};
23}
24
26{
27 public:
30
31 void Prepare (QRect Area) override;
32 void Draw (QRect Area, MythPainter* /*Painter*/, QPaintDevice* /*Device*/) override;
33
34 private:
35 MythRenderVulkan* InitialiseVulkan (QRect Area) override;
36 void TearDownVulkan () override;
37
40};
41
42#endif
Creates shader objects suitable for use with the Vulkan API.
void Prepare(QRect Area) override
MythVisualMonoScopeVulkan(AudioPlayer *Audio, MythRender *Render, bool Fade)
void Draw(QRect Area, MythPainter *, QPaintDevice *) override
MythRenderVulkan * InitialiseVulkan(QRect Area) override
MythRenderVulkan * Render()
QVector< VertexState > VertexStates
std::pair< MythBufferVulkan *, std::array< float, 3 > > VertexState