MythTV  master
mythvideotexturevulkan.h
Go to the documentation of this file.
1 #ifndef MYTHVIDEOTEXTUREVULKAN_H
2 #define MYTHVIDEOTEXTUREVULKAN_H
3 
4 // MythTV
6 #include "mythframe.h"
7 
8 // FFmpeg
9 extern "C" {
10 #include "libavutil/pixfmt.h"
11 }
12 
13 // Std
14 #include <vector>
15 using std::vector;
16 
18 {
19  public:
20  static vector<MythVideoTextureVulkan*> CreateTextures(MythVulkanObject* Vulkan,
21  VkCommandBuffer CommandBuffer,
22  VideoFrameType Type,
24  QSize Size);
25  static void DeleteTextures(MythVulkanObject* Vulkan,
26  VkCommandBuffer CommandBuffer,
27  vector<MythVideoTextureVulkan*>& Textures);
28  protected:
30  MythVideoTextureVulkan() = default;
31 
32  private:
33  Q_DISABLE_COPY(MythVideoTextureVulkan)
34  static vector<MythVideoTextureVulkan*> CreateSoftwareTextures(MythVulkanObject* Vulkan,
35  VkCommandBuffer CommandBuffer,
36  VideoFrameType Type,
38  QSize Size);
39  static void DeleteTexture (MythVulkanObject* Vulkan,
40  VkCommandBuffer CommandBuffer,
41  MythVideoTextureVulkan* Texture);
42 
43  bool m_valid { false };
46  uint m_plane { 0 };
48 };
49 
50 #endif
MythVideoTextureVulkan::DeleteTexture
static void DeleteTexture(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, MythVideoTextureVulkan *Texture)
Definition: mythvideotexturevulkan.cpp:54
MythVulkanObject
Definition: mythrendervulkan.h:29
MythVideoTextureVulkan::m_planeCount
uint m_planeCount
Definition: mythvideotexturevulkan.h:47
MythVideoTextureVulkan::m_frameFormat
VideoFrameType m_frameFormat
Definition: mythvideotexturevulkan.h:45
MythVideoTextureVulkan::m_plane
uint m_plane
Definition: mythvideotexturevulkan.h:46
MythVideoTextureVulkan::CreateTextures
static vector< MythVideoTextureVulkan * > CreateTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, VideoFrameType Type, VideoFrameType Format, QSize Size)
Definition: mythvideotexturevulkan.cpp:7
MythDate::Format
Format
Definition: mythdate.h:15
MythVideoTextureVulkan::DeleteTextures
static void DeleteTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, vector< MythVideoTextureVulkan * > &Textures)
Definition: mythvideotexturevulkan.cpp:31
mythframe.h
MythVideoTextureVulkan::CreateSoftwareTextures
static vector< MythVideoTextureVulkan * > CreateSoftwareTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, VideoFrameType Type, VideoFrameType Format, QSize Size)
Definition: mythvideotexturevulkan.cpp:64
FMT_NONE
@ FMT_NONE
Definition: mythframe.h:22
MythVideoTextureVulkan::m_frameType
VideoFrameType m_frameType
Definition: mythvideotexturevulkan.h:44
uint
unsigned int uint
Definition: compat.h:140
MythVideoTextureVulkan::MythVideoTextureVulkan
MythVideoTextureVulkan()=default
MythVideoTextureVulkan::m_valid
bool m_valid
Definition: mythvideotexturevulkan.h:43
VideoFrameType
VideoFrameType
Definition: mythframe.h:20
mythrendervulkan.h
MythVideoTextureVulkan
Definition: mythvideotexturevulkan.h:17