|
vdr-plugin-softhddevice-drm-gles 1.6.2
|
Dummy OSD. More...
Classes | |
| class | cDummyPixmap |
| Dummy Pixmap for Skins. More... | |
| class | cDummyOsd |
| Dummy OSD. More... | |
| struct | sOglImage |
| class | cOglShader |
| Vertex/Fragment Shader. More... | |
| class | cOglGlyph |
| Single Glyph of a Font. More... | |
| class | cOglAtlasGlyph |
| Glyph on a Texture Atlas. More... | |
| class | cOglFontAtlas |
| Texture Atlas for a Font. More... | |
| class | cOglFont |
| OpenGL Representation of a VDR Font. More... | |
| class | cOglFb |
| OpenGL Framebuffer/ Texture Object. More... | |
| class | cOglOutputFb |
| Main Framebuffer/ Texture Object for OSD. More... | |
| class | cOglVb |
| Vertex Buffers. More... | |
| class | cOglCmd |
| OpenGL Hardware Command. More... | |
| class | cOglCmdInitOutputFb |
| class | cOglCmdInitFb |
| class | cOglCmdDeleteFb |
| class | cOglCmdRenderFbToBufferFb |
| class | cOglCmdCopyBufferToOutputFb |
| class | cOglCmdFill |
| class | cOglCmdBufferFill |
| class | cOglCmdDrawRectangle |
| class | cOglCmdDrawEllipse |
| class | cOglCmdDrawSlope |
| class | cOglCmdDrawText |
| class | cOglCmdDrawImage |
| class | cOglCmdDrawTexture |
| class | cOglCmdStoreImage |
| class | cOglCmdDropImage |
| class | cOglThread |
| OpenGL Commands Processing Thread. More... | |
| class | cOglPixmap |
| OpenGL Implementation of a cPixmap. More... | |
| class | cOglOsd |
| Hardware Accelerated OpenGL OSD Implementation. More... | |
| class | cSoftOsd |
| Software Based OSD. More... | |
| class | cSoftOsdProvider |
| Plugin OSD provider. More... | |
Macros | |
| #define | KERNING_UNKNOWN (-10000) |
| #define | BORDERCOLOR 0x00000000 |
| This is needed for the GLES2 GL_CLAMP_TO_BORDER workaround. | |
| #define | MIN_CHARCODE 32 |
| #define | MAX_CHARCODE 255 |
| #define | OGL_MAX_OSDIMAGES 512 |
| #define | OGL_CMDQUEUE_SIZE 200 |
Enumerations | |
| enum | eShaderType { stRect , stTexture , stTextureSwapBR , stText , stCount } |
| enum | eVertexBufferType { vbRect , vbEllipse , vbSlope , vbTexture , vbTextureSwapBR , vbText , vbCount } |
Variables | |
| static cOglShader * | Shaders [stCount] |
| static cOglVb * | VertexBuffers [vbCount] |
| const char * | rectVertexShader |
| Rectangle Vertex Shader. | |
| const char * | rectFragmentShader |
| Rectangle Fragment Shader. | |
| const char * | textureVertexShader |
| Texture Vertex Shader. | |
| const char * | textureFragmentShader |
| Texture Fragment Shader. | |
| const char * | textureFragmentShaderSwapBR |
| Texture Fragment Shader (swapped blue/red) | |
| const char * | textVertexShader |
| Text Vertex Shader. | |
| const char * | textFragmentShader |
| Text Fragment Shader. | |
| static FT_Library | cOglFont::s_ftLib = 0 |
| static cList< cOglFont > * | cOglFont::s_pFonts = 0 |
| static bool | cOglFont::s_initiated = false |
| static cOglOutputFb * | cOglOsd::OutputFramebuffer = NULL |
| main OSD output framebuffer - this keeps our finished "OSD" (one per OSD) | |
Dummy OSD.
OSD Provider.
Software Based OSD (CPU)
Shaders for Hardware Accelerated OpenGL OSD.
OpenGL OSD.
| #define BORDERCOLOR 0x00000000 |
This is needed for the GLES2 GL_CLAMP_TO_BORDER workaround.
Definition at line 52 of file openglosd.h.
| #define KERNING_UNKNOWN (-10000) |
Definition at line 209 of file openglosd.cpp.
| #define MAX_CHARCODE 255 |
Definition at line 157 of file openglosd.h.
| #define MIN_CHARCODE 32 |
Definition at line 156 of file openglosd.h.
| #define OGL_CMDQUEUE_SIZE 200 |
Definition at line 603 of file openglosd.h.
| #define OGL_MAX_OSDIMAGES 512 |
Definition at line 602 of file openglosd.h.
| Enumerator | |
|---|---|
| stRect | |
| stTexture | |
| stTextureSwapBR | |
| stText | |
| stCount | |
Definition at line 61 of file openglosd.h.
| Enumerator | |
|---|---|
| vbRect | |
| vbEllipse | |
| vbSlope | |
| vbTexture | |
| vbTextureSwapBR | |
| vbText | |
| vbCount | |
Definition at line 267 of file openglosd.h.
Definition at line 1810 of file openglosd.cpp.
References cOglThread::Cleanup(), GL_CHECK, cOglThread::InitOpenGL(), cOglThread::InitShaders(), cOglThread::InitVertexBuffers(), L_OPENGL, L_OPENGL_TIME, L_OPENGL_TIME_ALL, LOGDEBUG2, LOGERROR, LOGINFO, cOglThread::m_commands, cOglThread::m_maxTextureSize, cOglThread::m_mutex, cOglThread::m_stalled, cOglThread::m_startWait, cOglThread::m_wait, and OGL_CMDQUEUE_SIZE.
Definition at line 813 of file openglosd.cpp.
References cOglVb::m_shader, and Shaders.
Definition at line 669 of file openglosd.cpp.
References GL_CHECK, cOglFb::Init(), cOglFb::m_framebuffer, cOglFb::m_height, cOglFb::m_initiated, and cOglFb::m_width.
Referenced by cOglCmdRenderFbToBufferFb::Execute(), cOglCmdCopyBufferToOutputFb::Execute(), cOglCmdFill::Execute(), cOglCmdDrawRectangle::Execute(), cOglCmdDrawEllipse::Execute(), cOglCmdDrawSlope::Execute(), cOglCmdDrawText::Execute(), cOglCmdDrawImage::Execute(), and cOglCmdDrawTexture::Execute().
Definition at line 797 of file openglosd.cpp.
References GL_CHECK, cOglVb::m_positionLoc, cOglVb::m_sizeVertex1, cOglVb::m_sizeVertex2, cOglVb::m_texCoordsLoc, and cOglVb::m_vbo.
Definition at line 244 of file openglosd.cpp.
References GL_CHECK, and cOglGlyph::m_texture.
Definition at line 459 of file openglosd.cpp.
References GL_CHECK, and cOglFontAtlas::m_texture.
Definition at line 683 of file openglosd.cpp.
References GL_CHECK, cOglFb::m_initiated, and cOglFb::m_texture.
Referenced by cOglCmdRenderFbToBufferFb::Execute(), and cOglCmdCopyBufferToOutputFb::Execute().
Definition at line 188 of file openglosd.cpp.
References GL_CHECK, LOGERROR, and cOglShader::m_type.
Referenced by cOglShader::Compile().
Definition at line 533 of file openglosd.cpp.
References LOGERROR, cOglFont::s_ftLib, cOglFont::s_initiated, and cOglFont::s_pFonts.
Referenced by cOglThread::Cleanup().
Definition at line 1963 of file openglosd.cpp.
References cOglFont::Cleanup(), cOglThread::DeleteShaders(), cOglThread::DeleteVertexBuffers(), L_OPENGL, LOGDEBUG2, and cOglOsd::OutputFramebuffer.
Referenced by cOglThread::Action(), and cOglThread::Stop().
Definition at line 1663 of file openglosd.cpp.
References cOglThread::DropImageData(), cOglThread::m_imageCache, and OGL_MAX_OSDIMAGES.
Referenced by cOglThread::RequestStop(), and cOglThread::Stop().
Definition at line 2056 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Definition at line 1776 of file openglosd.cpp.
References sOglImage::height, cOglThread::m_imageCache, OGL_MAX_OSDIMAGES, sOglImage::texture, sOglImage::used, and sOglImage::width.
Referenced by cOglThread::DropImageData(), and cOglThread::StoreImage().
Definition at line 626 of file openglosd.cpp.
References cOglFb::m_height, cOglFb::m_scrollable, cOglFb::m_viewPortHeight, cOglFb::m_viewPortWidth, and cOglFb::m_width.
Definition at line 470 of file openglosd.cpp.
References L_OPENGL, LOGDEBUG2, LOGERROR, cOglFont::m_bottom, cOglFont::m_face, cOglFont::m_height, cOglFont::m_name, cOglFont::m_pAtlas, cOglFont::m_size, and cOglFont::s_ftLib.
Definition at line 280 of file openglosd.cpp.
References GL_CHECK, L_OPENGL, LOGDEBUG2, LOGERROR, LOGWARNING, cOglFontAtlas::m_height, cOglFontAtlas::m_pGlyph, cOglFontAtlas::m_texture, cOglFontAtlas::m_width, MAX_CHARCODE, and MIN_CHARCODE.
| cOglGlyph::cOglGlyph | ( | FT_ULong | charCode, |
| FT_BitmapGlyph | ftGlyph | ||
| ) |
Definition at line 213 of file openglosd.cpp.
| cOglOsd::cOglOsd | ( | int | left, |
| int | top, | ||
| uint | level, | ||
| std::shared_ptr< cOglThread > | oglThread, | ||
| cSoftHdDevice * | device | ||
| ) |
Definition at line 2351 of file openglosd.cpp.
References cSoftHdDevice::GetOsdSize(), L_OSD, LOGDEBUG2, cOglOsd::m_maxPixmapSize, cOglOsd::m_pDevice, cOglOsd::m_pOglThread, and cOglOsd::OutputFramebuffer.
| cOglPixmap::cOglPixmap | ( | std::shared_ptr< cOglThread > | oglThread, |
| int | layer, | ||
| const cRect & | viewPort, | ||
| const cRect & | DrawPort = cRect::Null |
||
| ) |
Definition at line 1977 of file openglosd.cpp.
References LOGWARNING, cOglPixmap::m_pFramebuffer, and cOglPixmap::m_pOglThread.
| cOglThread::cOglThread | ( | cCondWait * | startWait, |
| int | maxCacheSize, | ||
| cSoftHdDevice * | device | ||
| ) |
Definition at line 1647 of file openglosd.cpp.
References sOglImage::height, cOglThread::m_imageCache, OGL_MAX_OSDIMAGES, sOglImage::texture, sOglImage::used, and sOglImage::width.
Definition at line 154 of file openglosd.cpp.
References cOglShader::CheckCompileErrors(), GL_CHECK, and cOglShader::m_id.
Referenced by cOglShader::Load().
Definition at line 66 of file openglosd.cpp.
Referenced by cOglCmdFill::Execute(), cOglCmdBufferFill::Execute(), cOglVb::SetShaderBorderColor(), and cOglVb::SetShaderColor().
Definition at line 2298 of file openglosd.cpp.
References LOGWARNING.
Create a new OSD.
Create either a hardware accelerated (cOglOsd), software based (cSoftOsd) or dummy OSD (if detached)
| left | x-coordinate of OSD |
| top | y-coordinate of OSD |
| level | layer level of OSD |
Definition at line 73 of file softhdosdprovider.cpp.
References cSoftHdDevice::IsDetached(), L_OSD, LOGDEBUG, LOGDEBUG2, cSoftOsdProvider::m_pDevice, cSoftOsdProvider::m_pOglThread, cSoftOsdProvider::m_pOsd, cSoftHdDevice::OglOsdIsDisabled(), cSoftHdDevice::SetDisableOglOsd(), and cSoftOsdProvider::StartOpenGlThread().
|
virtual |
Definition at line 2407 of file openglosd.cpp.
References cOglOsd::m_pOglPixmaps, and cOglOsd::m_pOglThread.
Definition at line 1138 of file openglosd.cpp.
References cOglCmdDrawEllipse::m_height, cOglCmdDrawEllipse::m_width, cOglCmdDrawEllipse::m_x, and cOglCmdDrawEllipse::m_y.
Referenced by cOglCmdDrawEllipse::Execute().
Definition at line 1221 of file openglosd.cpp.
References cOglCmdDrawEllipse::m_height, cOglCmdDrawEllipse::m_quadrants, cOglCmdDrawEllipse::m_width, cOglCmdDrawEllipse::m_x, and cOglCmdDrawEllipse::m_y.
Referenced by cOglCmdDrawEllipse::Execute().
Definition at line 1154 of file openglosd.cpp.
References cOglCmdDrawEllipse::m_height, cOglCmdDrawEllipse::m_quadrants, cOglCmdDrawEllipse::m_width, cOglCmdDrawEllipse::m_x, and cOglCmdDrawEllipse::m_y.
Referenced by cOglCmdDrawEllipse::Execute().
| cSoftOsd::cSoftOsd | ( | int | left, |
| int | top, | ||
| uint | level, | ||
| cSoftHdDevice * | device | ||
| ) |
Initializes a software based OSD with the given coordinates.
| left | x-coordinate of osd on display |
| top | y-coordinate of osd on display |
| level | level of the osd (smallest is shown) |
| device | pointer to cSoftHdDevice object |
Definition at line 37 of file softhdosd.cpp.
| cSoftOsdProvider::cSoftOsdProvider | ( | cSoftHdDevice * | device | ) |
Create a new OSD provider.
Definition at line 41 of file softhdosdprovider.cpp.
Definition at line 1937 of file openglosd.cpp.
References Shaders, and stCount.
Referenced by cOglThread::Cleanup().
Definition at line 1956 of file openglosd.cpp.
References vbCount, and VertexBuffers.
Referenced by cOglThread::Cleanup().
|
virtual |
Definition at line 2428 of file openglosd.cpp.
References cOglOsd::m_isSubtitleOsd, cOglOsd::m_pOglPixmaps, and cOglOsd::m_pOglThread.
Referenced by cOglOsd::SetAreas().
Definition at line 824 of file openglosd.cpp.
References GL_CHECK.
Definition at line 1686 of file openglosd.cpp.
References cOglThread::m_commands, cOglThread::m_stalled, cOglThread::m_wait, and OGL_CMDQUEUE_SIZE.
Referenced by cOglThread::DropImageData(), and cOglThread::StoreImage().
Definition at line 877 of file openglosd.cpp.
References GL_CHECK, cOglVb::m_drawMode, and cOglVb::m_numVertices.
|
virtual |
Definition at line 2133 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Definition at line 2263 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Definition at line 2078 of file openglosd.cpp.
References cOglPixmap::DrawScaledImage().
Definition at line 2083 of file openglosd.cpp.
References cOglPixmap::DrawScaledImage().
Definition at line 2122 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Definition at line 2248 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
|
virtual |
Definition at line 2522 of file openglosd.cpp.
References cOglOsd::m_isSubtitleOsd, and cOglOsd::m_pOglPixmaps.
Definition at line 2278 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
|
virtual |
Definition at line 2162 of file openglosd.cpp.
References cOglPixmap::DrawTextInternal().
|
private |
Definition at line 2174 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Referenced by cOglPixmap::DrawText().
Drop stored image data.
Definition at line 211 of file softhdosdprovider.cpp.
References cSoftOsdProvider::m_pOglThread, and cSoftOsdProvider::StartOpenGlThread().
Definition at line 1797 of file openglosd.cpp.
References cOglThread::ClearSlot(), cOglThread::DoCmd(), cOglThread::GetImageRef(), and cOglThread::m_memCached.
Referenced by cOglThread::CleanupImageCache(), and cOglThread::StoreImage().
Definition at line 1891 of file openglosd.cpp.
References EGL_CHECK, cVideoRender::EglContext(), cVideoRender::EglDisplay(), cVideoRender::EglSurface(), and cOglThread::m_pRender.
Referenced by cOglThread::InitOpenGL().
Definition at line 818 of file openglosd.cpp.
References GL_CHECK.
Implements cOglCmd.
Definition at line 889 of file openglosd.cpp.
References cOglOutputFb::Init(), cOglCmdInitOutputFb::m_pOutputFramebuffer, and cOglOutputFb::Unbind().
Implements cOglCmd.
Definition at line 897 of file openglosd.cpp.
References cOglFb::Init(), cOglCmd::m_pFramebuffer, cOglCmdInitFb::m_wait, and cOglFb::Unbind().
Implements cOglCmd.
Definition at line 907 of file openglosd.cpp.
References GL_CHECK, and cOglCmd::m_pFramebuffer.
Implements cOglCmd.
Definition at line 916 of file openglosd.cpp.
References cOglFb::Bind(), cOglFb::BindTexture(), GL_CHECK, cOglFb::Height(), cOglCmdRenderFbToBufferFb::m_alphablending, cOglCmdRenderFbToBufferFb::m_bcolor, cOglCmdRenderFbToBufferFb::m_dirtyHeight, cOglCmdRenderFbToBufferFb::m_dirtyTop, cOglCmdRenderFbToBufferFb::m_dirtyWidth, cOglCmdRenderFbToBufferFb::m_dirtyX, cOglCmdRenderFbToBufferFb::m_drawPortX, cOglCmdRenderFbToBufferFb::m_drawPortY, cOglCmdRenderFbToBufferFb::m_pBuffer, cOglCmd::m_pFramebuffer, cOglCmdRenderFbToBufferFb::m_transparency, cOglCmdRenderFbToBufferFb::m_x, cOglCmdRenderFbToBufferFb::m_y, cOglFb::Scrollable(), cOglFb::Unbind(), vbTexture, VertexBuffers, cOglFb::ViewportHeight(), cOglFb::ViewportWidth(), and cOglFb::Width().
Implements cOglCmd.
Definition at line 973 of file openglosd.cpp.
References cOglFb::Bind(), cOglFb::BindTexture(), GL_CHECK, cOglFb::Height(), cOglCmdCopyBufferToOutputFb::m_active, cOglCmdCopyBufferToOutputFb::m_borderColor, cOglCmdCopyBufferToOutputFb::m_pDevice, cOglCmd::m_pFramebuffer, cOglCmdCopyBufferToOutputFb::m_pOutputFramebuffer, cOglCmdCopyBufferToOutputFb::m_x, cOglCmdCopyBufferToOutputFb::m_y, cSoftHdDevice::OsdClose(), cSoftHdDevice::OsdDrawARGB(), cOglOutputFb::Unbind(), vbTexture, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1024 of file openglosd.cpp.
References cOglFb::Bind(), ConvertColor(), GL_CHECK, cOglCmdFill::m_color, cOglCmd::m_pFramebuffer, and cOglFb::Unbind().
Implements cOglCmd.
Definition at line 1037 of file openglosd.cpp.
References ConvertColor(), GL_CHECK, and cOglCmdBufferFill::m_color.
Implements cOglCmd.
Definition at line 1048 of file openglosd.cpp.
References cOglFb::Bind(), cOglFb::Height(), cOglCmdDrawRectangle::m_color, cOglCmdDrawRectangle::m_height, cOglCmd::m_pFramebuffer, cOglCmdDrawRectangle::m_width, cOglCmdDrawRectangle::m_x, cOglCmdDrawRectangle::m_y, cOglFb::Unbind(), vbRect, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1088 of file openglosd.cpp.
References cOglFb::Bind(), cOglCmdDrawEllipse::CreateVerticesFull(), cOglCmdDrawEllipse::CreateVerticesHalf(), cOglCmdDrawEllipse::CreateVerticesQuadrant(), cOglFb::Height(), cOglCmdDrawEllipse::m_color, cOglCmdDrawEllipse::m_height, cOglCmd::m_pFramebuffer, cOglCmdDrawEllipse::m_quadrants, cOglCmdDrawEllipse::m_width, cOglFb::Unbind(), vbEllipse, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1287 of file openglosd.cpp.
References cOglFb::Bind(), cOglFb::Height(), cOglCmdDrawSlope::m_color, cOglCmdDrawSlope::m_height, cOglCmd::m_pFramebuffer, cOglCmdDrawSlope::m_type, cOglCmdDrawSlope::m_width, cOglCmdDrawSlope::m_x, cOglCmdDrawSlope::m_y, cOglFb::Unbind(), vbSlope, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1360 of file openglosd.cpp.
References cOglFont::Atlas(), cOglFb::Bind(), cOglFont::Bottom(), cOglFont::Get(), GL_CHECK, cOglFont::Glyph(), cOglFont::Height(), cOglFb::Height(), cOglFont::Kerning(), L_OPENGL, LOGDEBUG2, LOGWARNING, cOglCmdDrawText::m_colorText, cOglCmdDrawText::m_fontName, cOglCmdDrawText::m_fontSize, cOglCmdDrawText::m_length, cOglCmdDrawText::m_limitX, cOglCmd::m_pFramebuffer, cOglCmdDrawText::m_pSymbols, cOglCmdDrawText::m_x, cOglCmdDrawText::m_y, MAX_CHARCODE, MIN_CHARCODE, cOglFb::Unbind(), vbText, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1513 of file openglosd.cpp.
References cOglFb::Bind(), GL_CHECK, cOglFb::Height(), cOglCmdDrawImage::m_argb, cOglCmdDrawImage::m_borderColor, cOglCmdDrawImage::m_height, cOglCmdDrawImage::m_overlay, cOglCmd::m_pFramebuffer, cOglCmdDrawImage::m_scaleX, cOglCmdDrawImage::m_scaleY, cOglCmdDrawImage::m_width, cOglCmdDrawImage::m_x, cOglCmdDrawImage::m_y, cOglFb::Unbind(), vbTextureSwapBR, VertexBuffers, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1576 of file openglosd.cpp.
References cOglFb::Bind(), GL_CHECK, sOglImage::height, cOglFb::Height(), cOglCmdDrawTexture::m_borderColor, cOglCmd::m_pFramebuffer, cOglCmdDrawTexture::m_pImageRef, cOglCmdDrawTexture::m_scaleX, cOglCmdDrawTexture::m_scaleY, cOglCmdDrawTexture::m_x, cOglCmdDrawTexture::m_y, sOglImage::texture, cOglFb::Unbind(), vbTextureSwapBR, VertexBuffers, sOglImage::width, and cOglFb::Width().
Implements cOglCmd.
Definition at line 1614 of file openglosd.cpp.
References GL_CHECK, sOglImage::height, cOglCmdStoreImage::m_pData, cOglCmdStoreImage::m_pImageRef, sOglImage::texture, and sOglImage::width.
Implements cOglCmd.
Definition at line 1637 of file openglosd.cpp.
References GL_CHECK, cOglCmdDropImage::m_pImageRef, cOglCmdDropImage::m_pWait, and sOglImage::texture.
Definition at line 2067 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, cOglPixmap::m_pOglThread, and cOglPixmap::SetDirty().
Definition at line 2453 of file openglosd.cpp.
References L_OSD, LOGDEBUG2, cOglOsd::m_isSubtitleOsd, cOglOsd::m_pBufferFramebuffer, cOglOsd::m_pDevice, cOglOsd::m_pDirtyViewport, cOglOsd::m_pOglPixmaps, cOglOsd::m_pOglThread, and cOglOsd::OutputFramebuffer.
Actually commit all data to the OSD hardware.
Definition at line 108 of file softhdosd.cpp.
References cSoftHdDevice::GetOsdSize(), L_OSD, LOGDEBUG2, cSoftOsd::m_dirty, cSoftOsd::m_osdLevel, cSoftOsd::m_pDevice, and cSoftHdDevice::OsdDrawARGB().
Referenced by cSoftOsd::SetActive().
Definition at line 507 of file openglosd.cpp.
References cOglFont::Init(), and cOglFont::s_pFonts.
Referenced by cOglCmdDrawText::Execute().
Definition at line 1762 of file openglosd.cpp.
References cOglThread::m_imageCache, OGL_MAX_OSDIMAGES, and sOglImage::used.
Referenced by cOglThread::StoreImage().
| cOglAtlasGlyph * cOglFontAtlas::GetGlyph | ( | int | sym | ) | const |
Definition at line 452 of file openglosd.cpp.
References cOglFontAtlas::m_pGlyph, MAX_CHARCODE, and MIN_CHARCODE.
Get stored image data.
Definition at line 204 of file softhdosdprovider.cpp.
Definition at line 1789 of file openglosd.cpp.
References cOglThread::m_imageCache, and OGL_MAX_OSDIMAGES.
Referenced by cOglThread::DropImageData(), and cOglThread::StoreImage().
Definition at line 230 of file openglosd.cpp.
References KERNING_UNKNOWN, and cOglGlyph::m_pKerningCache.
Definition at line 545 of file openglosd.cpp.
References code, FT_Errors, LOGERROR, cOglFont::m_face, cOglFont::m_glyphCache, message, and cOglFont::s_ftLib.
Referenced by cOglCmdDrawText::Execute().
Definition at line 523 of file openglosd.cpp.
References LOGERROR, cOglFont::s_ftLib, cOglFont::s_initiated, and cOglFont::s_pFonts.
Referenced by cOglFont::Get().
Reimplemented in cOglOutputFb.
Definition at line 644 of file openglosd.cpp.
References GL_CHECK, LOGERROR, cOglFb::m_framebuffer, cOglFb::m_height, cOglFb::m_initiated, cOglFb::m_texture, and cOglFb::m_width.
Referenced by cOglFb::Bind(), and cOglCmdInitFb::Execute().
Reimplemented from cOglFb.
Definition at line 694 of file openglosd.cpp.
References GL_CHECK, LOGERROR, cOglOutputFb::m_framebuffer, cOglFb::m_height, cOglFb::m_initiated, cOglOutputFb::m_texture, and cOglFb::m_width.
Referenced by cOglCmdInitOutputFb::Execute().
Definition at line 731 of file openglosd.cpp.
References GL_CHECK, cOglVb::m_drawMode, cOglVb::m_numVertices, cOglVb::m_positionLoc, cOglVb::m_shader, cOglVb::m_sizeVertex1, cOglVb::m_sizeVertex2, cOglVb::m_texCoordsLoc, cOglVb::m_type, cOglVb::m_vbo, stRect, stText, stTexture, stTextureSwapBR, vbEllipse, vbRect, vbSlope, vbText, vbTexture, and vbTextureSwapBR.
Definition at line 1900 of file openglosd.cpp.
References cOglThread::eglAcquireContext(), GL_CHECK, cVideoRender::GlInitiated(), L_OPENGL, LOGDEBUG2, cOglThread::m_pRender, vbText, and VertexBuffers.
Referenced by cOglThread::Action().
Definition at line 1924 of file openglosd.cpp.
References L_OPENGL, LOGDEBUG2, Shaders, and stCount.
Referenced by cOglThread::Action().
Definition at line 1943 of file openglosd.cpp.
References L_OPENGL, LOGDEBUG2, vbCount, and VertexBuffers.
Referenced by cOglThread::Action().
Definition at line 605 of file openglosd.cpp.
References KERNING_UNKNOWN, and cOglFont::m_face.
Referenced by cOglCmdDrawText::Execute().
| bool cOglShader::Load | ( | eShaderType | type | ) |
Definition at line 83 of file openglosd.cpp.
References cOglShader::Compile(), LOGERROR, cOglShader::m_type, rectFragmentShader, rectVertexShader, stRect, stText, stTexture, stTextureSwapBR, textFragmentShader, textureFragmentShader, textureFragmentShaderSwapBR, textureVertexShader, and textVertexShader.
Definition at line 249 of file openglosd.cpp.
References GL_CHECK, cOglGlyph::m_height, cOglGlyph::m_pBuffer, cOglGlyph::m_texture, and cOglGlyph::m_width.
Lock the OpenGL thread.
Definition at line 169 of file softhdosdprovider.cpp.
References L_OPENGL, LOGDEBUG2, and cSoftOsdProvider::m_pOglThread.
Referenced by cSoftHdDevice::OnEventReceived().
Definition at line 2010 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Stop the OpenGL thread, if the osd size changed and update the size.
Definition at line 109 of file softhdosdprovider.cpp.
References cSoftOsdProvider::m_pDevice, cSoftHdDevice::OglOsdIsDisabled(), and cSoftOsdProvider::StopOpenGlThread().
Definition at line 2308 of file openglosd.cpp.
References LOGWARNING.
|
virtual |
Definition at line 2293 of file openglosd.cpp.
References LOGWARNING.
Definition at line 1672 of file openglosd.cpp.
References cOglThread::CleanupImageCache().
Initiate a stop of the OpenGL thread without waiting.
Definition at line 148 of file softhdosdprovider.cpp.
References L_OPENGL, LOGDEBUG2, and cSoftOsdProvider::m_pOglThread.
Referenced by cSoftHdDevice::OnEnteringState().
Definition at line 2303 of file openglosd.cpp.
References LOGWARNING.
Sets this OSD to be the active one.
| on | true on, false off |
Definition at line 62 of file softhdosd.cpp.
References cSoftOsd::Flush(), L_OSD, LOGDEBUG2, cSoftOsd::m_dirty, cSoftOsd::m_osdLevel, cSoftOsd::m_pDevice, and cSoftHdDevice::OsdClose().
Referenced by cSoftOsd::~cSoftOsd().
Definition at line 2028 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Definition at line 2384 of file openglosd.cpp.
References cOglOsd::DestroyPixmap(), cOglOsd::m_isSubtitleOsd, cOglOsd::m_pBufferFramebuffer, cOglOsd::m_pOglPixmaps, and cOglOsd::m_pOglThread.
Set the sub-areas to the given areas.
Definition at line 84 of file softhdosd.cpp.
References L_OSD, LOGDEBUG2, cSoftOsd::m_dirty, cSoftOsd::m_pDevice, and cSoftHdDevice::OsdClose().
Definition at line 2016 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Definition at line 2049 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Definition at line 124 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 129 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 239 of file openglosd.cpp.
References cOglGlyph::m_pKerningCache.
Definition at line 2022 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Definition at line 149 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 848 of file openglosd.cpp.
References cOglVb::m_shader, and Shaders.
Definition at line 836 of file openglosd.cpp.
References ConvertColor(), cOglVb::m_shader, and Shaders.
Definition at line 829 of file openglosd.cpp.
References ConvertColor(), cOglVb::m_shader, and Shaders.
Definition at line 853 of file openglosd.cpp.
References cOglVb::m_shader, and Shaders.
Definition at line 843 of file openglosd.cpp.
References cOglVb::m_shader, and Shaders.
Definition at line 2037 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Definition at line 134 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 139 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 144 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
Definition at line 868 of file openglosd.cpp.
References GL_CHECK, cOglVb::m_numVertices, cOglVb::m_sizeVertex1, cOglVb::m_sizeVertex2, and cOglVb::m_vbo.
Definition at line 859 of file openglosd.cpp.
References GL_CHECK, cOglVb::m_numVertices, cOglVb::m_sizeVertex1, cOglVb::m_sizeVertex2, and cOglVb::m_vbo.
Definition at line 2043 of file openglosd.cpp.
References cOglPixmap::SetDirty().
Start the OpenGL thread.
Definition at line 119 of file softhdosdprovider.cpp.
References L_OPENGL, LOGDEBUG2, LOGINFO, cSoftOsdProvider::m_pDevice, cSoftOsdProvider::m_pOglThread, cSoftHdDevice::MaxSizeGPUImageCache(), and cSoftHdDevice::OglOsdIsDisabled().
Referenced by cSoftOsdProvider::CreateOsd(), cSoftOsdProvider::DropImageData(), and cSoftOsdProvider::StoreImageData().
Definition at line 1678 of file openglosd.cpp.
References cOglThread::Cleanup(), cOglThread::CleanupImageCache(), and cOglThread::m_stalled.
Stop the OpenGL thread and cancel it if necessary.
Definition at line 158 of file softhdosdprovider.cpp.
References L_OPENGL, LOGDEBUG2, and cSoftOsdProvider::m_pOglThread.
Referenced by cSoftHdDevice::OnEnteringState(), cSoftOsdProvider::OsdSizeChanged(), and cSoftOsdProvider::~cSoftOsdProvider().
Definition at line 1706 of file openglosd.cpp.
References cOglThread::ClearSlot(), cOglThread::DoCmd(), cOglThread::DropImageData(), cOglThread::GetFreeSlot(), cOglThread::GetImageRef(), LOGERROR, cOglThread::m_maxCacheSize, cOglThread::m_maxTextureSize, and cOglThread::m_memCached.
Store image data.
Definition at line 192 of file softhdosdprovider.cpp.
References cSoftOsdProvider::m_pOglThread, and cSoftOsdProvider::StartOpenGlThread().
Reimplemented in cOglOutputFb.
Definition at line 677 of file openglosd.cpp.
References GL_CHECK.
Referenced by cOglCmdInitFb::Execute(), cOglCmdRenderFbToBufferFb::Execute(), cOglCmdFill::Execute(), cOglCmdDrawRectangle::Execute(), cOglCmdDrawEllipse::Execute(), cOglCmdDrawSlope::Execute(), cOglCmdDrawText::Execute(), cOglCmdDrawImage::Execute(), and cOglCmdDrawTexture::Execute().
Reimplemented from cOglFb.
Definition at line 719 of file openglosd.cpp.
References GL_CHECK.
Referenced by cOglCmdInitOutputFb::Execute(), and cOglCmdCopyBufferToOutputFb::Execute().
Definition at line 808 of file openglosd.cpp.
References GL_CHECK.
Unlock the OpenGL thread.
Definition at line 182 of file softhdosdprovider.cpp.
References L_OPENGL, LOGDEBUG2, and cSoftOsdProvider::m_pOglThread.
Referenced by cSoftHdDevice::OnEnteringState(), and cSoftHdDevice::OnEventReceived().
Definition at line 78 of file openglosd.cpp.
References GL_CHECK, and cOglShader::m_id.
|
virtual |
Definition at line 636 of file openglosd.cpp.
References GL_CHECK, cOglFb::m_framebuffer, and cOglFb::m_texture.
|
virtual |
Definition at line 501 of file openglosd.cpp.
References cOglFont::m_face, and cOglFont::m_pAtlas.
|
virtual |
Definition at line 440 of file openglosd.cpp.
References GL_CHECK, cOglFontAtlas::m_pGlyph, cOglFontAtlas::m_texture, MAX_CHARCODE, and MIN_CHARCODE.
|
virtual |
Definition at line 224 of file openglosd.cpp.
References GL_CHECK, and cOglGlyph::m_texture.
|
virtual |
Definition at line 2371 of file openglosd.cpp.
References L_OSD, LOGDEBUG2, cOglOsd::m_pBufferFramebuffer, cOglOsd::m_pDevice, cOglOsd::m_pOglThread, and cOglOsd::OutputFramebuffer.
|
virtual |
Definition at line 1999 of file openglosd.cpp.
References cOglPixmap::m_pFramebuffer, and cOglPixmap::m_pOglThread.
|
virtual |
Shut down the OSD.
Definition at line 48 of file softhdosd.cpp.
References L_OSD, LOGDEBUG2, cSoftOsd::m_osdLevel, and cSoftOsd::SetActive().
|
virtual |
Delete the OSD provider and stop the OpenGL thread if running.
Definition at line 51 of file softhdosdprovider.cpp.
References cSoftHdDevice::IsOsdProviderSet(), L_OSD, LOGDEBUG2, cSoftOsdProvider::m_pDevice, cSoftHdDevice::OglOsdIsDisabled(), cSoftHdDevice::ResetOsdProvider(), and cSoftOsdProvider::StopOpenGlThread().
|
static |
main OSD output framebuffer - this keeps our finished "OSD" (one per OSD)
Definition at line 721 of file openglosd.h.
Referenced by cOglThread::Cleanup(), cOglOsd::cOglOsd(), cOglOsd::Flush(), and cOglOsd::~cOglOsd().
Rectangle Fragment Shader.
Definition at line 46 of file openglshader.h.
Referenced by cOglShader::Load().
Rectangle Vertex Shader.
Definition at line 28 of file openglshader.h.
Referenced by cOglShader::Load().
|
staticprivate |
Definition at line 205 of file openglosd.h.
Referenced by cOglFont::Cleanup(), cOglFont::cOglFont(), cOglFont::Glyph(), and cOglFont::Init().
Definition at line 204 of file openglosd.h.
Referenced by cOglFont::Cleanup(), and cOglFont::Init().
Definition at line 206 of file openglosd.h.
Referenced by cOglFont::Cleanup(), cOglFont::Get(), and cOglFont::Init().
|
static |
Definition at line 76 of file openglosd.cpp.
Referenced by cOglVb::ActivateShader(), cOglThread::DeleteShaders(), cOglThread::InitShaders(), cOglVb::SetShaderAlpha(), cOglVb::SetShaderBorderColor(), cOglVb::SetShaderColor(), cOglVb::SetShaderProjectionMatrix(), and cOglVb::SetShaderTexture().
Text Fragment Shader.
Definition at line 169 of file openglshader.h.
Referenced by cOglShader::Load().
Texture Fragment Shader.
Definition at line 86 of file openglshader.h.
Referenced by cOglShader::Load().
Texture Fragment Shader (swapped blue/red)
In difference to the textureFragmentShader this one does a blue/red color component swap
Definition at line 117 of file openglshader.h.
Referenced by cOglShader::Load().
Texture Vertex Shader.
Definition at line 60 of file openglshader.h.
Referenced by cOglShader::Load().
Text Vertex Shader.
Definition at line 146 of file openglshader.h.
Referenced by cOglShader::Load().
Definition at line 729 of file openglosd.cpp.
Referenced by cOglThread::DeleteVertexBuffers(), cOglCmdRenderFbToBufferFb::Execute(), cOglCmdCopyBufferToOutputFb::Execute(), cOglCmdDrawRectangle::Execute(), cOglCmdDrawEllipse::Execute(), cOglCmdDrawSlope::Execute(), cOglCmdDrawText::Execute(), cOglCmdDrawImage::Execute(), cOglCmdDrawTexture::Execute(), cOglThread::InitOpenGL(), and cOglThread::InitVertexBuffers().