Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
KODI::RETRO::CRPRendererDMA Class Reference

Special CRPBaseRenderer implementation to handle Direct Memory Access (DMA) buffer types. For specific use with CRenderBufferPoolDMA and CRenderBufferDMA. A windowing system must register use of this renderer and register at least one CBufferObject types. More...

#include <RPRendererDMA.h>

Inheritance diagram for KODI::RETRO::CRPRendererDMA:
KODI::RETRO::CRPRendererOpenGLES KODI::RETRO::CRPBaseRenderer

Public Member Functions

 CRPRendererDMA (const CRenderSettings &renderSettings, CRenderContext &context, std::shared_ptr< IRenderBufferPool > bufferPool)
 
 ~CRPRendererDMA () override=default
 
- Public Member Functions inherited from KODI::RETRO::CRPRendererOpenGLES
 CRPRendererOpenGLES (const CRenderSettings &renderSettings, CRenderContext &context, std::shared_ptr< IRenderBufferPool > bufferPool)
 
 ~CRPRendererOpenGLES () override
 
bool Supports (RENDERFEATURE feature) const override
 
SCALINGMETHOD GetDefaultScalingMethod () const override
 
- Public Member Functions inherited from KODI::RETRO::CRPBaseRenderer
 CRPBaseRenderer (const CRenderSettings &renderSettings, CRenderContext &context, std::shared_ptr< IRenderBufferPool > bufferPool)
 
virtual ~CRPBaseRenderer ()
 
IRenderBufferPoolGetBufferPool ()
 Get the buffer pool used by this renderer.
 
bool Configure (AVPixelFormat format)
 
void FrameMove ()
 
void PreRender (bool clear)
 Performs whatever necessary before rendering the frame.
 
void SetBuffer (IRenderBuffer *buffer)
 
void RenderFrame (bool clear, uint8_t alpha)
 
bool IsCompatible (const CRenderVideoSettings &settings) const
 
virtual void Flush ()
 
const CRenderSettingsGetRenderSettings () const
 
void SetScalingMethod (SCALINGMETHOD method)
 
void SetStretchMode (STRETCHMODE stretchMode)
 
void SetRenderRotation (unsigned int rotationDegCCW)
 
void SetPixels (const std::string &pixelPath)
 
bool IsVisible () const
 
IRenderBufferGetRenderBuffer () const
 

Protected Member Functions

void Render (uint8_t alpha) override
 
- Protected Member Functions inherited from KODI::RETRO::CRPRendererOpenGLES
void RenderInternal (bool clear, uint8_t alpha) override
 
void FlushInternal () override
 
void ClearBackBuffer ()
 Set the entire backbuffer to black.
 
void DrawBlackBars ()
 Draw black bars around the video quad.
 
- Protected Member Functions inherited from KODI::RETRO::CRPBaseRenderer
virtual bool ConfigureInternal ()
 

Additional Inherited Members

- Static Public Member Functions inherited from KODI::RETRO::CRPRendererOpenGLES
static bool SupportsScalingMethod (SCALINGMETHOD method)
 
- Protected Attributes inherited from KODI::RETRO::CRPRendererOpenGLES
GLuint m_mainIndexVBO
 
GLuint m_mainVertexVBO
 
GLuint m_blackbarsVertexVBO
 
GLenum m_textureTarget = GL_TEXTURE_2D
 
float m_clearColour = 0.0f
 
- Protected Attributes inherited from KODI::RETRO::CRPBaseRenderer
CRenderContextm_context
 
std::shared_ptr< IRenderBufferPoolm_bufferPool
 
bool m_bConfigured = false
 
AVPixelFormat m_format = AV_PIX_FMT_NONE
 
CRenderSettings m_renderSettings
 
IRenderBufferm_renderBuffer = nullptr
 
CRect m_sourceRect
 
std::array< CPoint, 4 > m_rotatedDestCoords {}
 

Detailed Description

Special CRPBaseRenderer implementation to handle Direct Memory Access (DMA) buffer types. For specific use with CRenderBufferPoolDMA and CRenderBufferDMA. A windowing system must register use of this renderer and register at least one CBufferObject types.

Constructor & Destructor Documentation

◆ CRPRendererDMA()

CRPRendererDMA::CRPRendererDMA ( const CRenderSettings & renderSettings,
CRenderContext & context,
std::shared_ptr< IRenderBufferPool > bufferPool )

◆ ~CRPRendererDMA()

KODI::RETRO::CRPRendererDMA::~CRPRendererDMA ( )
overridedefault

Member Function Documentation

◆ Render()

void CRPRendererDMA::Render ( uint8_t alpha)
overrideprotectedvirtual

Reimplemented from KODI::RETRO::CRPRendererOpenGLES.


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