MythTV  master
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
MythVideoVulkan Class Reference

#include <mythvideovulkan.h>

Inheritance diagram for MythVideoVulkan:
Inheritance graph
[legend]
Collaboration diagram for MythVideoVulkan:
Collaboration graph
[legend]

Public Member Functions

 MythVideoVulkan (MythVulkanObject *Vulkan, MythVideoColourSpace *ColourSpace, MythVideoBounds *Bounds, const MythVideoProfilePtr &VideoProfile, const QString &Profile)
 
 ~MythVideoVulkan () override
 
void StartFrame () override
 
void PrepareFrame (MythVideoFrame *Frame, FrameScanType=kScan_Progressive) override
 
void RenderFrame (MythVideoFrame *, bool, FrameScanType, StereoscopicMode, bool=false) override
 
void EndFrame () override
 
void ResetFrameFormat () override
 
void ResetTextures () override
 
- Public Member Functions inherited from MythVideoGPU
 MythVideoGPU (MythRender *Render, MythVideoColourSpace *ColourSpace, MythVideoBounds *Bounds, const MythVideoProfilePtr &VideoProfile, QString Profile)
 
 ~MythVideoGPU () override
 
virtual QString GetProfile () const
 
bool IsValid () const
 
void SetProfile (const QString &Profile)
 
void SetMasterViewport (QSize Size)
 
QSize GetVideoDim () const
 
- Public Member Functions inherited from MythVulkanObject
 MythVulkanObject (MythRenderVulkan *Render)
 
 MythVulkanObject (MythVulkanObject *Other)
 
bool IsValidVulkan () const
 
MythRenderVulkanRender ()
 
VkDevice Device ()
 
QVulkanDeviceFunctions * Funcs ()
 
MythWindowVulkanWindow ()
 

Protected Member Functions

void ColourSpaceUpdate (bool) override
 
- Protected Member Functions inherited from MythVulkanObject
void CheckValid ()
 

Private Member Functions

bool SetupFrameFormat (VideoFrameType InputType, VideoFrameType OutputType, QSize Size, VkCommandBuffer CmdBuffer)
 

Private Attributes

vector< MythVideoTextureVulkan * > m_inputTextures
 

Additional Inherited Members

- Public Types inherited from MythVideoGPU
enum  VideoResize {
  None = 0x000, Deinterlacer = 0x001, Sampling = 0x002, Performance = 0x004,
  Framebuffer = 0x008, ToneMap = 0x010, Bicubic = 0x020
}
 
- Public Slots inherited from MythVideoGPU
void UpdateColourSpace (bool PrimariesChanged)
 
void SetVideoDimensions (QSize VideoDim, QSize VideoDispDim)
 
void SetVideoRects (QRect DisplayVideoRect, QRect VideoRect)
 
void SetViewportRect (QRect DisplayVisibleRect)
 
void UpscalerChanged (const QString &Upscaler)
 
- Signals inherited from MythVideoGPU
void OutputChanged (QSize VideoDim, QSize VideoDispDim, float)
 
- Static Public Member Functions inherited from MythVideoGPU
static QString VideoResizeToString (VideoResizing Resize)
 
- Static Public Member Functions inherited from MythVulkanObject
static MythVulkanObjectCreate (MythRenderVulkan *Render)
 
- Protected Attributes inherited from MythVideoGPU
MythRenderm_render { nullptr }
 
uint64_t m_discontinuityCounter { 0 }
 
QString m_profile
 
VideoFrameType m_inputType { FMT_NONE }
 
VideoFrameType m_outputType { FMT_NONE }
 
QSize m_videoDispDim
 
QSize m_videoDim
 
QSize m_masterViewportSize
 
QRect m_displayVideoRect
 
QRect m_videoRect
 
MythVideoColourSpacem_videoColourSpace { nullptr }
 
QSize m_inputTextureSize
 
VideoResizing m_resizing { None }
 
int m_lastRotation { 0 }
 
MythDeintType m_deinterlacer { MythDeintType::DEINT_NONE }
 
bool m_deinterlacer2x { false }
 
bool m_valid { false }
 
bool m_viewportControl { true }
 
uint m_lastStereo { 0 }
 
StereoscopicMode m_stereoMode { kStereoscopicModeSideBySideDiscard }
 
bool m_bicubicUpsize { false }
 
- Protected Attributes inherited from MythVulkanObject
bool m_vulkanValid { true }
 
MythRenderVulkanm_vulkanRender { nullptr }
 
VkDevice m_vulkanDevice { nullptr }
 
QVulkanDeviceFunctions * m_vulkanFuncs { nullptr }
 
MythWindowVulkanm_vulkanWindow { nullptr }
 

Detailed Description

Definition at line 18 of file mythvideovulkan.h.

Constructor & Destructor Documentation

◆ MythVideoVulkan()

MythVideoVulkan::MythVideoVulkan ( MythVulkanObject Vulkan,
MythVideoColourSpace ColourSpace,
MythVideoBounds Bounds,
const MythVideoProfilePtr VideoProfile,
const QString &  Profile 
)

Definition at line 15 of file mythvideovulkan.cpp.

◆ ~MythVideoVulkan()

MythVideoVulkan::~MythVideoVulkan ( )
override

Definition at line 27 of file mythvideovulkan.cpp.

Member Function Documentation

◆ StartFrame()

void MythVideoVulkan::StartFrame ( )
overridevirtual

Implements MythVideoGPU.

Definition at line 67 of file mythvideovulkan.cpp.

◆ PrepareFrame()

void MythVideoVulkan::PrepareFrame ( MythVideoFrame Frame,
FrameScanType  = kScan_Progressive 
)
overridevirtual

Implements MythVideoGPU.

Definition at line 81 of file mythvideovulkan.cpp.

◆ RenderFrame()

void MythVideoVulkan::RenderFrame ( MythVideoFrame ,
bool  ,
FrameScanType  ,
StereoscopicMode  ,
bool  = false 
)
overridevirtual

Implements MythVideoGPU.

Definition at line 140 of file mythvideovulkan.cpp.

◆ EndFrame()

void MythVideoVulkan::EndFrame ( )
overridevirtual

Implements MythVideoGPU.

Definition at line 148 of file mythvideovulkan.cpp.

◆ ResetFrameFormat()

void MythVideoVulkan::ResetFrameFormat ( )
overridevirtual

Reimplemented from MythVideoGPU.

Definition at line 32 of file mythvideovulkan.cpp.

Referenced by SetupFrameFormat(), and ~MythVideoVulkan().

◆ ResetTextures()

void MythVideoVulkan::ResetTextures ( )
inlineoverridevirtual

Implements MythVideoGPU.

Definition at line 33 of file mythvideovulkan.h.

◆ ColourSpaceUpdate()

void MythVideoVulkan::ColourSpaceUpdate ( bool  )
overrideprotectedvirtual

Implements MythVideoGPU.

Definition at line 154 of file mythvideovulkan.cpp.

◆ SetupFrameFormat()

bool MythVideoVulkan::SetupFrameFormat ( VideoFrameType  InputType,
VideoFrameType  OutputType,
QSize  Size,
VkCommandBuffer  CmdBuffer 
)
private

Definition at line 38 of file mythvideovulkan.cpp.

Referenced by PrepareFrame().

Member Data Documentation

◆ m_inputTextures

vector<MythVideoTextureVulkan*> MythVideoVulkan::m_inputTextures
private

Definition at line 42 of file mythvideovulkan.h.

Referenced by ResetFrameFormat(), and SetupFrameFormat().


The documentation for this class was generated from the following files: