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 
17 {
18  public:
19  static std::vector<MythVideoTextureVulkan*>
21  VkCommandBuffer CommandBuffer,
22  VideoFrameType Type,
24  QSize Size);
25  static void DeleteTextures(MythVulkanObject* Vulkan,
26  VkCommandBuffer CommandBuffer,
27  std::vector<MythVideoTextureVulkan*>& Textures);
28  protected:
30  MythVideoTextureVulkan() = default;
31 
32  private:
33  Q_DISABLE_COPY(MythVideoTextureVulkan)
34  static std::vector<MythVideoTextureVulkan*>
36  VkCommandBuffer CommandBuffer,
37  VideoFrameType Type,
39  QSize Size);
40  static void DeleteTexture (MythVulkanObject* Vulkan,
41  VkCommandBuffer CommandBuffer,
42  MythVideoTextureVulkan* Texture);
43 
44  bool m_valid { false };
47  uint m_plane { 0 };
49 };
50 
51 #endif
MythVideoTextureVulkan::DeleteTexture
static void DeleteTexture(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, MythVideoTextureVulkan *Texture)
Definition: mythvideotexturevulkan.cpp:55
MythVulkanObject
Definition: mythrendervulkan.h:32
MythVideoTextureVulkan::m_planeCount
uint m_planeCount
Definition: mythvideotexturevulkan.h:48
MythVideoTextureVulkan::m_frameFormat
VideoFrameType m_frameFormat
Definition: mythvideotexturevulkan.h:46
MythVideoTextureVulkan::CreateSoftwareTextures
static std::vector< MythVideoTextureVulkan * > CreateSoftwareTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, VideoFrameType Type, VideoFrameType Format, QSize Size)
Definition: mythvideotexturevulkan.cpp:66
MythVideoTextureVulkan::m_plane
uint m_plane
Definition: mythvideotexturevulkan.h:47
MythDate::Format
Format
Definition: mythdate.h:15
mythframe.h
FMT_NONE
@ FMT_NONE
Definition: mythframe.h:22
MythVideoTextureVulkan::m_frameType
VideoFrameType m_frameType
Definition: mythvideotexturevulkan.h:45
MythVideoTextureVulkan::CreateTextures
static std::vector< MythVideoTextureVulkan * > CreateTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, VideoFrameType Type, VideoFrameType Format, QSize Size)
Definition: mythvideotexturevulkan.cpp:8
uint
unsigned int uint
Definition: compat.h:81
MythVideoTextureVulkan::MythVideoTextureVulkan
MythVideoTextureVulkan()=default
MythVideoTextureVulkan::m_valid
bool m_valid
Definition: mythvideotexturevulkan.h:44
VideoFrameType
VideoFrameType
Definition: mythframe.h:20
mythrendervulkan.h
MythVideoTextureVulkan::DeleteTextures
static void DeleteTextures(MythVulkanObject *Vulkan, VkCommandBuffer CommandBuffer, std::vector< MythVideoTextureVulkan * > &Textures)
Definition: mythvideotexturevulkan.cpp:32
MythVideoTextureVulkan
Definition: mythvideotexturevulkan.h:16