MythTV  master
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
MythD3D9Painter Class Reference

#include <mythpainter_d3d9.h>

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

Public Member Functions

 MythD3D9Painter (MythRenderD3D9 *render=nullptr)
 
 ~MythD3D9Painter ()
 
void SetTarget (D3D9Image *target)
 
void SetSwapControl (bool swap)
 
QString GetName (void) override
 
bool SupportsAnimation (void) override
 
bool SupportsAlpha (void) override
 
bool SupportsClipping (void) override
 
void FreeResources (void) override
 
void Begin (QPaintDevice *parent) override
 
void End () override
 
void DrawImage (QRect dest, MythImage *im, QRect src, int alpha) override
 
void DrawRect (QRect area, const QBrush &fillBrush, const QPen &linePen, int alpha) override
 
- Public Member Functions inherited from MythPainter
 MythPainter ()
 
 ~MythPainter () override=default
 MythPainter destructor. More...
 
virtual void SetClipRect (QRect clipRect)
 
virtual void SetClipRegion (const QRegion &clipRegion)
 
virtual void Clear (QPaintDevice *device, const QRegion &region)
 
void DrawImage (int x, int y, MythImage *im, int alpha)
 
void DrawImage (QPoint topLeft, MythImage *im, int alph)
 
virtual void DrawProcedural (QRect, int, const ProcSource &, const ProcSource &, const QString &)
 
virtual void DrawText (QRect r, const QString &msg, int flags, const MythFontProperties &font, int alpha, QRect boundRect)
 
virtual void DrawTextLayout (QRect canvasRect, const LayoutVector &layouts, const FormatVector &formats, const MythFontProperties &font, int alpha, QRect destRect)
 
virtual void DrawRoundRect (QRect area, int cornerRadius, const QBrush &fillBrush, const QPen &linePen, int alpha)
 
virtual void DrawEllipse (QRect area, const QBrush &fillBrush, const QPen &linePen, int alpha)
 
virtual void PushTransformation ([[maybe_unused]] const UIEffects &zoom, [[maybe_unused]] QPointF center=QPointF())
 
virtual void PopTransformation (void)
 
MythImageGetFormatImage ()
 Returns a blank reference counted image in the format required for the Draw functions for this painter. More...
 
void DeleteFormatImage (MythImage *im)
 
void SetDebugMode (bool showBorders, bool showNames)
 
bool ShowBorders (void) const
 
bool ShowTypeNames (void) const
 
void SetMaximumCacheSizes (int hardware, int software)
 

Protected Member Functions

MythImageGetFormatImagePriv (void) override
 Creates a reference counted image, call DecrRef() to delete. More...
 
void DeleteFormatImagePriv (MythImage *im) override
 
void Teardown (void) override
 
bool InitD3D9 (QPaintDevice *parent)
 
void ClearCache (void)
 
void DeleteBitmaps (void)
 
D3D9ImageGetImageFromCache (MythImage *im)
 
- Protected Member Functions inherited from MythPainter
MythImageGetImageFromString (const QString &msg, int flags, QRect r, const MythFontProperties &font)
 
MythImageGetImageFromTextLayout (const LayoutVector &layouts, const FormatVector &formats, const MythFontProperties &font, QRect &canvas, QRect &dest)
 
MythImageGetImageFromRect (QRect area, int radius, int ellipse, const QBrush &fillBrush, const QPen &linePen)
 
void ExpireImages (int64_t max=0)
 
void CheckFormatImage (MythImage *im)
 

Protected Attributes

MythRenderD3D9m_render {nullptr}
 
D3D9Imagem_target {nullptr}
 
bool m_swap_control {true}
 
QMap< MythImage *, D3D9Image * > m_ImageBitmapMap
 
std::list< MythImage * > m_ImageExpireList
 
std::list< D3D9Image * > m_bitmapDeleteList
 
QMutex m_bitmapDeleteLock
 
- Protected Attributes inherited from MythPainter
float m_frameTime { 0 }
 
int m_hardwareCacheSize { 0 }
 
int m_maxHardwareCacheSize { 0 }
 

Friends

class VideoOutputD3D
 

Additional Inherited Members

- Static Protected Member Functions inherited from MythPainter
static void DrawTextPriv (MythImage *im, const QString &msg, int flags, QRect r, const MythFontProperties &font)
 
static void DrawRectPriv (MythImage *im, QRect area, int radius, int ellipse, const QBrush &fillBrush, const QPen &linePen)
 

Detailed Description

Definition at line 13 of file mythpainter_d3d9.h.

Constructor & Destructor Documentation

◆ MythD3D9Painter()

MythD3D9Painter::MythD3D9Painter ( MythRenderD3D9 render = nullptr)
explicit

Definition at line 14 of file mythpainter_d3d9.cpp.

◆ ~MythD3D9Painter()

MythD3D9Painter::~MythD3D9Painter ( )

Definition at line 21 of file mythpainter_d3d9.cpp.

Member Function Documentation

◆ SetTarget()

void MythD3D9Painter::SetTarget ( D3D9Image target)
inline

Definition at line 20 of file mythpainter_d3d9.h.

◆ SetSwapControl()

void MythD3D9Painter::SetSwapControl ( bool  swap)
inline

Definition at line 21 of file mythpainter_d3d9.h.

◆ GetName()

QString MythD3D9Painter::GetName ( void  )
inlineoverridevirtual

Implements MythPainter.

Definition at line 22 of file mythpainter_d3d9.h.

◆ SupportsAnimation()

bool MythD3D9Painter::SupportsAnimation ( void  )
inlineoverridevirtual

Implements MythPainter.

Definition at line 24 of file mythpainter_d3d9.h.

◆ SupportsAlpha()

bool MythD3D9Painter::SupportsAlpha ( void  )
inlineoverridevirtual

Implements MythPainter.

Definition at line 26 of file mythpainter_d3d9.h.

◆ SupportsClipping()

bool MythD3D9Painter::SupportsClipping ( void  )
inlineoverridevirtual

Implements MythPainter.

Definition at line 28 of file mythpainter_d3d9.h.

◆ FreeResources()

void MythD3D9Painter::FreeResources ( void  )
overridevirtual

Reimplemented from MythPainter.

Definition at line 63 of file mythpainter_d3d9.cpp.

◆ Begin()

void MythD3D9Painter::Begin ( QPaintDevice *  parent)
overridevirtual

Reimplemented from MythPainter.

Definition at line 69 of file mythpainter_d3d9.cpp.

◆ End()

void MythD3D9Painter::End ( )
overridevirtual

Reimplemented from MythPainter.

Definition at line 100 of file mythpainter_d3d9.cpp.

◆ DrawImage()

void MythD3D9Painter::DrawImage ( QRect  dest,
MythImage im,
QRect  src,
int  alpha 
)
overridevirtual

Implements MythPainter.

Definition at line 142 of file mythpainter_d3d9.cpp.

◆ DrawRect()

void MythD3D9Painter::DrawRect ( QRect  area,
const QBrush &  fillBrush,
const QPen &  linePen,
int  alpha 
)
overridevirtual

Reimplemented from MythPainter.

Definition at line 153 of file mythpainter_d3d9.cpp.

◆ GetFormatImagePriv()

MythImage* MythD3D9Painter::GetFormatImagePriv ( void  )
inlineoverrideprotectedvirtual

Creates a reference counted image, call DecrRef() to delete.

Implements MythPainter.

Definition at line 40 of file mythpainter_d3d9.h.

◆ DeleteFormatImagePriv()

void MythD3D9Painter::DeleteFormatImagePriv ( MythImage im)
overrideprotectedvirtual

Implements MythPainter.

Definition at line 187 of file mythpainter_d3d9.cpp.

Referenced by GetImageFromCache().

◆ Teardown()

void MythD3D9Painter::Teardown ( void  )
overrideprotectedvirtual

Reimplemented from MythPainter.

Definition at line 46 of file mythpainter_d3d9.cpp.

Referenced by InitD3D9(), and ~MythD3D9Painter().

◆ InitD3D9()

bool MythD3D9Painter::InitD3D9 ( QPaintDevice *  parent)
protected

Definition at line 26 of file mythpainter_d3d9.cpp.

Referenced by Begin().

◆ ClearCache()

void MythD3D9Painter::ClearCache ( void  )
protected

Definition at line 115 of file mythpainter_d3d9.cpp.

Referenced by FreeResources(), and Teardown().

◆ DeleteBitmaps()

void MythD3D9Painter::DeleteBitmaps ( void  )
protected

Definition at line 130 of file mythpainter_d3d9.cpp.

Referenced by Begin(), FreeResources(), GetImageFromCache(), and Teardown().

◆ GetImageFromCache()

D3D9Image * MythD3D9Painter::GetImageFromCache ( MythImage im)
protected

Definition at line 198 of file mythpainter_d3d9.cpp.

Referenced by DrawImage().

Friends And Related Function Documentation

◆ VideoOutputD3D

friend class VideoOutputD3D
friend

Definition at line 15 of file mythpainter_d3d9.h.

Member Data Documentation

◆ m_render

MythRenderD3D9* MythD3D9Painter::m_render {nullptr}
protected

◆ m_target

D3D9Image* MythD3D9Painter::m_target {nullptr}
protected

Definition at line 51 of file mythpainter_d3d9.h.

Referenced by Begin(), and End().

◆ m_swap_control

bool MythD3D9Painter::m_swap_control {true}
protected

Definition at line 52 of file mythpainter_d3d9.h.

Referenced by Begin(), and End().

◆ m_ImageBitmapMap

QMap<MythImage *, D3D9Image*> MythD3D9Painter::m_ImageBitmapMap
protected

Definition at line 53 of file mythpainter_d3d9.h.

Referenced by ClearCache(), DeleteFormatImagePriv(), GetImageFromCache(), and Teardown().

◆ m_ImageExpireList

std::list<MythImage *> MythD3D9Painter::m_ImageExpireList
protected

Definition at line 54 of file mythpainter_d3d9.h.

Referenced by ClearCache(), DeleteFormatImagePriv(), GetImageFromCache(), and Teardown().

◆ m_bitmapDeleteList

std::list<D3D9Image*> MythD3D9Painter::m_bitmapDeleteList
protected

Definition at line 55 of file mythpainter_d3d9.h.

Referenced by ClearCache(), DeleteBitmaps(), DeleteFormatImagePriv(), and Teardown().

◆ m_bitmapDeleteLock

QMutex MythD3D9Painter::m_bitmapDeleteLock
protected

Definition at line 56 of file mythpainter_d3d9.h.

Referenced by ClearCache(), DeleteBitmaps(), and DeleteFormatImagePriv().


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