vdr-plugin-softhddevice-drm-gles 1.6.7
cOglPixmap Class Reference

OpenGL Implementation of a cPixmap. More...

#include <openglosd.h>

Public Member Functions

 cOglPixmap (std::shared_ptr< cOglThread >, int, const cRect &, const cRect &DrawPort=cRect::Null)
 
virtual ~cOglPixmap (void)
 
cOglFbFramebuffer (void)
 
int X (void)
 
int Y (void)
 
virtual bool IsDirty (void)
 
virtual void SetDirty (bool dirty=true)
 
virtual void SetLayer (int)
 
virtual void SetAlpha (int)
 
virtual void SetTile (bool)
 
virtual void SetViewPort (const cRect &)
 
virtual void SetDrawPortPoint (const cPoint &, bool Dirty=true)
 
virtual void Clear (void)
 
virtual void Fill (tColor)
 
virtual void DrawImage (const cPoint &, const cImage &)
 
virtual void DrawImage (const cPoint &, int)
 
virtual void DrawScaledImage (const cPoint &, const cImage &, double FactorX=1.0f, double FactorY=1.0f, bool AntiAlias=false)
 
virtual void DrawScaledImage (const cPoint &, int, double FactorX=1.0f, double FactorY=1.0f, bool AntiAlias=false)
 
virtual void DrawPixel (const cPoint &, tColor)
 
virtual void DrawBitmap (const cPoint &, const cBitmap &, tColor ColorFg=0, tColor ColorBg=0, bool Overlay=false)
 
virtual void DrawText (const cPoint &, const char *, tColor, tColor, const cFont *, int Width=0, int Height=0, int Alignment=taDefault)
 
virtual void DrawRectangle (const cRect &, tColor)
 
virtual void DrawEllipse (const cRect &, tColor, int Quadrants=0)
 
virtual void DrawSlope (const cRect &, tColor, int)
 
virtual void Render (const cPixmap *, const cRect &, const cPoint &)
 
virtual void Copy (const cPixmap *, const cRect &, const cPoint &)
 
virtual void Scroll (const cPoint &, const cRect &Source=cRect::Null)
 
virtual void Pan (const cPoint &, const cRect &Source=cRect::Null)
 
virtual void MarkViewPortDirty (const cRect &)
 
virtual void SetClean (void)
 

Private Member Functions

void DrawTextInternal (const cPoint &, const char *, tColor, tColor, const cFont *, int Width=0, int Height=0, int Alignment=taDefault, bool isGridText=false)
 

Private Attributes

cOglFbm_pFramebuffer
 everything is drawn onto this framebuffer (one per pixmap)
 
std::shared_ptr< cOglThreadm_pOglThread
 
bool m_dirty = true
 true, if there was draw activity on the pixmap
 

Detailed Description

OpenGL Implementation of a cPixmap.

Definition at line 758 of file openglosd.h.

Constructor & Destructor Documentation

◆ cOglPixmap()

cOglPixmap::cOglPixmap ( std::shared_ptr< cOglThread oglThread,
int  layer,
const cRect viewPort,
const cRect DrawPort = cRect::Null 
)

Definition at line 1982 of file openglosd.cpp.

References LOGWARNING, m_pFramebuffer, and m_pOglThread.

◆ ~cOglPixmap()

cOglPixmap::~cOglPixmap ( void  )
virtual

Definition at line 2004 of file openglosd.cpp.

References m_pFramebuffer, and m_pOglThread.

Member Function Documentation

◆ Clear()

void cOglPixmap::Clear ( void  )
virtual

Definition at line 2061 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ Copy()

void cOglPixmap::Copy ( const cPixmap *  pixmap,
const cRect source,
const cPoint dest 
)
virtual

Definition at line 2303 of file openglosd.cpp.

References LOGWARNING.

◆ DrawBitmap()

void cOglPixmap::DrawBitmap ( const cPoint point,
const cBitmap bitmap,
tColor  ColorFg = 0,
tColor  ColorBg = 0,
bool  Overlay = false 
)
virtual

Definition at line 2138 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawEllipse()

void cOglPixmap::DrawEllipse ( const cRect rect,
tColor  color,
int  Quadrants = 0 
)
virtual

Definition at line 2268 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawImage() [1/2]

void cOglPixmap::DrawImage ( const cPoint point,
const cImage image 
)
virtual

Definition at line 2083 of file openglosd.cpp.

References DrawScaledImage().

◆ DrawImage() [2/2]

void cOglPixmap::DrawImage ( const cPoint point,
int  imageHandle 
)
virtual

Definition at line 2088 of file openglosd.cpp.

References DrawScaledImage().

◆ DrawPixel()

void cOglPixmap::DrawPixel ( const cPoint point,
tColor  color 
)
virtual

Definition at line 2127 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawRectangle()

void cOglPixmap::DrawRectangle ( const cRect rect,
tColor  color 
)
virtual

Definition at line 2253 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawScaledImage() [1/2]

virtual void cOglPixmap::DrawScaledImage ( const cPoint ,
const cImage ,
double  FactorX = 1.0f,
double  FactorY = 1.0f,
bool  AntiAlias = false 
)
virtual

Referenced by DrawImage(), and DrawImage().

◆ DrawScaledImage() [2/2]

virtual void cOglPixmap::DrawScaledImage ( const cPoint ,
int  ,
double  FactorX = 1.0f,
double  FactorY = 1.0f,
bool  AntiAlias = false 
)
virtual

◆ DrawSlope()

void cOglPixmap::DrawSlope ( const cRect rect,
tColor  color,
int  type 
)
virtual

Definition at line 2283 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawText()

void cOglPixmap::DrawText ( const cPoint point,
const char s,
tColor  colorFg,
tColor  colorBg,
const cFont font,
int  Width = 0,
int  Height = 0,
int  Alignment = taDefault 
)
virtual

Definition at line 2167 of file openglosd.cpp.

References DrawTextInternal().

◆ DrawTextInternal()

void cOglPixmap::DrawTextInternal ( const cPoint point,
const char s,
tColor  colorFg,
tColor  colorBg,
const cFont font,
int  Width = 0,
int  Height = 0,
int  Alignment = taDefault,
bool  isGridText = false 
)
private

Definition at line 2179 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

Referenced by DrawText().

◆ Fill()

void cOglPixmap::Fill ( tColor  color)
virtual

Definition at line 2072 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ Framebuffer()

cOglFb * cOglPixmap::Framebuffer ( void  )
inline

Definition at line 763 of file openglosd.h.

References m_pFramebuffer.

◆ IsDirty()

virtual bool cOglPixmap::IsDirty ( void  )
inlinevirtual

Definition at line 766 of file openglosd.h.

References m_dirty.

◆ MarkViewPortDirty()

void cOglPixmap::MarkViewPortDirty ( const cRect rect)
virtual

Definition at line 2015 of file openglosd.cpp.

References SetDirty().

◆ Pan()

void cOglPixmap::Pan ( const cPoint dest,
const cRect Source = cRect::Null 
)
virtual

Definition at line 2313 of file openglosd.cpp.

References LOGWARNING.

◆ Render()

void cOglPixmap::Render ( const cPixmap *  pixmap,
const cRect source,
const cPoint dest 
)
virtual

Definition at line 2298 of file openglosd.cpp.

References LOGWARNING.

◆ Scroll()

void cOglPixmap::Scroll ( const cPoint dest,
const cRect Source = cRect::Null 
)
virtual

Definition at line 2308 of file openglosd.cpp.

References LOGWARNING.

◆ SetAlpha()

void cOglPixmap::SetAlpha ( int  alpha)
virtual

Definition at line 2033 of file openglosd.cpp.

References SetDirty().

◆ SetClean()

void cOglPixmap::SetClean ( void  )
virtual

Definition at line 2021 of file openglosd.cpp.

References SetDirty().

◆ SetDirty()

◆ SetDrawPortPoint()

void cOglPixmap::SetDrawPortPoint ( const cPoint point,
bool  Dirty = true 
)
virtual

Definition at line 2054 of file openglosd.cpp.

References SetDirty().

◆ SetLayer()

void cOglPixmap::SetLayer ( int  layer)
virtual

Definition at line 2027 of file openglosd.cpp.

References SetDirty().

◆ SetTile()

void cOglPixmap::SetTile ( bool  tile)
virtual

Definition at line 2042 of file openglosd.cpp.

References SetDirty().

◆ SetViewPort()

void cOglPixmap::SetViewPort ( const cRect rect)
virtual

Definition at line 2048 of file openglosd.cpp.

References SetDirty().

◆ X()

int cOglPixmap::X ( void  )
inline

Definition at line 764 of file openglosd.h.

◆ Y()

int cOglPixmap::Y ( void  )
inline

Definition at line 765 of file openglosd.h.

Member Data Documentation

◆ m_dirty

bool cOglPixmap::m_dirty = true
private

true, if there was draw activity on the pixmap

Definition at line 794 of file openglosd.h.

Referenced by IsDirty(), and SetDirty().

◆ m_pFramebuffer

cOglFb* cOglPixmap::m_pFramebuffer
private

everything is drawn onto this framebuffer (one per pixmap)

Definition at line 792 of file openglosd.h.

Referenced by Clear(), cOglPixmap(), DrawBitmap(), DrawEllipse(), DrawPixel(), DrawRectangle(), DrawSlope(), DrawTextInternal(), Fill(), Framebuffer(), and ~cOglPixmap().

◆ m_pOglThread

std::shared_ptr<cOglThread> cOglPixmap::m_pOglThread
private

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