Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cSurfaceDC Class Reference

#include <cSurfaceDC.h>

Inheritance diagram for GrayLib::cSurfaceDC:
GrayLib::cSurfaceDC2

Public Member Functions

 cSurfaceDC () noexcept
 
 cSurfaceDC (COLOR16_t *pDataDest, PIXELS_t cx, PIXELS_t cy, size_t iPitchBytes)
 
 cSurfaceDC (cSurfaceBase *pSurfDest)
 
 cSurfaceDC (PIXELS_t x, PIXELS_t y)
 
virtual ~cSurfaceDC ()
 
virtual void OnParamsChanged ()
 
bool IsInsideClipX (PIXELS_t x) const noexcept
 
bool IsInsideClipY (PIXELS_t y) const noexcept
 
void SetClipDestEmpty ()
 
void SetClipDestAll ()
 
void SetClipDest (const cRectI &rect)
 
virtual void DrawEraseClip ()
 
virtual void DrawBlt (PIXELS_t x, PIXELS_t y, cSurfaceBase *pSrc, const cRectI &srcRect, DWORD rop)
 
 UNITTEST_FRIEND (cSurfaceDC)
 

Public Attributes

cSurfaceBase m_SurfDest
 The destination surface. NOT freed on destruct. "Unlink" this when done. More...
 
cRectI m_rClipDest
 clip to this rectangle for draws to m_Dest. (m_Dest surface coordinate system) More...
 
cColorRef m_ColorFore
 Foreground pen. More...
 
cColorRef m_ColorBack
 Background color (if any) Use Alpha channel. isValidColor() More...
 

Detailed Description

params for drawing onto an arbitrary (in system memory) surface. Draw context for a surface. Base for cSurfaceDC2. Does NOT perform raster ops. Can be used to wrap HDC or DirectX surfacec as target. AKA: Device context.

Constructor & Destructor Documentation

◆ cSurfaceDC() [1/4]

GrayLib::cSurfaceDC::cSurfaceDC ( )
noexcept

◆ cSurfaceDC() [2/4]

GrayLib::cSurfaceDC::cSurfaceDC ( COLOR16_t pDataDest,
PIXELS_t  cx,
PIXELS_t  cy,
size_t  iPitchBytes 
)

◆ cSurfaceDC() [3/4]

GrayLib::cSurfaceDC::cSurfaceDC ( cSurfaceBase pSurfDest)

◆ cSurfaceDC() [4/4]

GrayLib::cSurfaceDC::cSurfaceDC ( PIXELS_t  x,
PIXELS_t  y 
)

trap = Intentionally Throw an exception if this is used.

◆ ~cSurfaceDC()

GrayLib::cSurfaceDC::~cSurfaceDC ( )
virtual

Member Function Documentation

◆ DrawBlt()

void GrayLib::cSurfaceDC::DrawBlt ( PIXELS_t  x,
PIXELS_t  y,
cSurfaceBase pSrc,
const cRectI srcRect,
DWORD  rop 
)
virtual

◆ DrawEraseClip()

void GrayLib::cSurfaceDC::DrawEraseClip ( )
virtual

Erase the surface clip area m_rClipDest. set 0's.

◆ IsInsideClipX()

bool GrayLib::cSurfaceDC::IsInsideClipX ( PIXELS_t  x) const
inlinenoexcept

non-inclusive

◆ IsInsideClipY()

bool GrayLib::cSurfaceDC::IsInsideClipY ( PIXELS_t  y) const
inlinenoexcept

non-inclusive

◆ OnParamsChanged()

virtual void GrayLib::cSurfaceDC::OnParamsChanged ( )
inlinevirtual

◆ SetClipDest()

void GrayLib::cSurfaceDC::SetClipDest ( const cRectI rect)

◆ SetClipDestAll()

void GrayLib::cSurfaceDC::SetClipDestAll ( )
inline

clipping region for Destination surface.

◆ SetClipDestEmpty()

void GrayLib::cSurfaceDC::SetClipDestEmpty ( )
inline

◆ UNITTEST_FRIEND()

GrayLib::cSurfaceDC::UNITTEST_FRIEND ( cSurfaceDC  )

Member Data Documentation

◆ m_ColorBack

cColorRef GrayLib::cSurfaceDC::m_ColorBack

Background color (if any) Use Alpha channel. isValidColor()

◆ m_ColorFore

cColorRef GrayLib::cSurfaceDC::m_ColorFore

Foreground pen.

◆ m_rClipDest

cRectI GrayLib::cSurfaceDC::m_rClipDest

clip to this rectangle for draws to m_Dest. (m_Dest surface coordinate system)

◆ m_SurfDest

cSurfaceBase GrayLib::cSurfaceDC::m_SurfDest

The destination surface. NOT freed on destruct. "Unlink" this when done.


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