Go to the documentation of this file. 1 #ifndef MYTHPAINTERVULKAN_H
2 #define MYTHPAINTERVULKAN_H
17 #define MAX_TEXTURE_COUNT (1000)
32 void Begin (QPaintDevice* )
override;
38 void DeleteTextures ();
41 void DoFreeResources ();
54 bool m_ready {
false };
64 bool m_textureDescriptorsCreated {
false };
66 VkCommandBuffer m_textureUploadCmd {
nullptr };
67 bool m_frameStarted {
false };
virtual bool SupportsAlpha(void)=0
std::list< MythImage * > m_imageExpire
virtual bool SupportsAnimation(void)=0
virtual bool SupportsClipping(void)=0
std::vector< MythTextureVulkan * > m_queuedTextures
#define MYTH_NULL_DISPATCH
virtual void DeleteFormatImagePriv(MythImage *im)=0
QMap< MythImage *, MythTextureVulkan * > m_imageToTextureMap
QStack< QMatrix4x4 > m_transforms
virtual MythImage * GetFormatImagePriv(void)=0
Creates a reference counted image, call DecrRef() to delete.
std::vector< MythTextureVulkan * > m_stagedTextures
virtual void DrawImage(QRect dest, MythImage *im, QRect src, int alpha)=0
virtual void FreeResources(void)
std::vector< VkDescriptorSet > m_availableTextureDescriptors
QVector< MythTextureVulkan * > m_texturesToDelete
virtual QString GetName(void)=0
virtual void PopTransformation(void)
Creates shader objects suitable for use with the Vulkan API.
virtual void Begin(QPaintDevice *)
virtual void PushTransformation([[maybe_unused]] const UIEffects &zoom, [[maybe_unused]] QPointF center=QPointF())