vdr-plugin-softhddevice-drm-gles 1.6.4-d0291bb
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 1985 of file openglosd.cpp.

References LOGWARNING, m_pFramebuffer, and m_pOglThread.

◆ ~cOglPixmap()

cOglPixmap::~cOglPixmap ( void  )
virtual

Definition at line 2007 of file openglosd.cpp.

References m_pFramebuffer, and m_pOglThread.

Member Function Documentation

◆ Clear()

void cOglPixmap::Clear ( void  )
virtual

Definition at line 2064 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 2306 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 2141 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 2271 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 2086 of file openglosd.cpp.

References DrawScaledImage().

◆ DrawImage() [2/2]

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

Definition at line 2091 of file openglosd.cpp.

References DrawScaledImage().

◆ DrawPixel()

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

Definition at line 2130 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

◆ DrawRectangle()

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

Definition at line 2256 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 2286 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 2170 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 2182 of file openglosd.cpp.

References m_pFramebuffer, m_pOglThread, and SetDirty().

Referenced by DrawText().

◆ Fill()

void cOglPixmap::Fill ( tColor  color)
virtual

Definition at line 2075 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 2018 of file openglosd.cpp.

References SetDirty().

◆ Pan()

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

Definition at line 2316 of file openglosd.cpp.

References LOGWARNING.

◆ Render()

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

Definition at line 2301 of file openglosd.cpp.

References LOGWARNING.

◆ Scroll()

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

Definition at line 2311 of file openglosd.cpp.

References LOGWARNING.

◆ SetAlpha()

void cOglPixmap::SetAlpha ( int  alpha)
virtual

Definition at line 2036 of file openglosd.cpp.

References SetDirty().

◆ SetClean()

void cOglPixmap::SetClean ( void  )
virtual

Definition at line 2024 of file openglosd.cpp.

References SetDirty().

◆ SetDirty()

◆ SetDrawPortPoint()

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

Definition at line 2057 of file openglosd.cpp.

References SetDirty().

◆ SetLayer()

void cOglPixmap::SetLayer ( int  layer)
virtual

Definition at line 2030 of file openglosd.cpp.

References SetDirty().

◆ SetTile()

void cOglPixmap::SetTile ( bool  tile)
virtual

Definition at line 2045 of file openglosd.cpp.

References SetDirty().

◆ SetViewPort()

void cOglPixmap::SetViewPort ( const cRect rect)
virtual

Definition at line 2051 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: