LibreOffice Module canvas (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
dxcanvas::DXSurfaceBitmap Class Reference

#include <dx_surfacebitmap.hxx>

Inheritance diagram for dxcanvas::DXSurfaceBitmap:
[legend]
Collaboration diagram for dxcanvas::DXSurfaceBitmap:
[legend]

Public Member Functions

 DXSurfaceBitmap (const ::basegfx::B2ISize &rSize, const std::shared_ptr< canvas::ISurfaceProxyManager > &rMgr, const IDXRenderModuleSharedPtr &rRenderModule, bool bWithAlpha)
 
bool resize (const ::basegfx::B2ISize &rSize)
 
void clear ()
 
virtual GraphicsSharedPtr getGraphics () override
 
virtual BitmapSharedPtr getBitmap () const override
 
virtual ::basegfx::B2ISize getSize () const override
 
virtual bool hasAlpha () const override
 
sal::systools::COMReference< surface_typegetSurface () const
 
bool draw (double fAlpha, const ::basegfx::B2DPoint &rPos, const ::basegfx::B2DHomMatrix &rTransform)
 
bool draw (const ::basegfx::B2IRange &rArea)
 
bool draw (double fAlpha, const ::basegfx::B2DPoint &rPos, const ::basegfx::B2DRange &rArea, const ::basegfx::B2DHomMatrix &rTransform)
 
bool draw (double fAlpha, const ::basegfx::B2DPoint &rPos, const ::basegfx::B2DPolyPolygon &rClipPoly, const ::basegfx::B2DHomMatrix &rTransform)
 
virtual css::uno::Sequence< sal_Int8getData (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect) override
 
virtual void setData (const css::uno::Sequence< sal_Int8 > &data, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect) override
 
virtual void setPixel (const css::uno::Sequence< sal_Int8 > &color, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos) override
 
virtual css::uno::Sequence< sal_Int8getPixel (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos) override
 
virtual BitmapSharedPtr getBitmap () const =0
 
virtual ::basegfx::B2ISize getSize () const =0
 
virtual bool hasAlpha () const =0
 
virtual css::uno::Sequence< sal_Int8getData (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect)=0
 
virtual void setData (const css::uno::Sequence< sal_Int8 > &data, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect)=0
 
virtual void setPixel (const css::uno::Sequence< sal_Int8 > &color, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos)=0
 
virtual css::uno::Sequence< sal_Int8getPixel (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos)=0
 
- Public Member Functions inherited from dxcanvas::GraphicsProvider
 GraphicsProvider ()=default
 
virtual ~GraphicsProvider ()
 
 GraphicsProvider (const GraphicsProvider &)=delete
 make noncopyable More...
 
GraphicsProvideroperator= (const GraphicsProvider &)=delete
 
virtual GraphicsSharedPtr getGraphics ()=0
 

Private Member Functions

void init ()
 

Private Attributes

GDIPlusUserSharedPtr mpGdiPlusUser
 
::basegfx::B2ISize maSize
 
IDXRenderModuleSharedPtr mpRenderModule
 
std::shared_ptr< canvas::ISurfaceProxyManagermpSurfaceManager
 
std::shared_ptr< canvas::ISurfaceProxympSurfaceProxy
 
sal::systools::COMReference< surface_typempSurface
 
BitmapSharedPtr mpGDIPlusBitmap
 
GraphicsSharedPtr mpGraphics
 
std::shared_ptr< canvas::IColorBuffermpColorBuffer
 
bool mbIsSurfaceDirty
 
bool mbAlpha
 

Detailed Description

Definition at line 31 of file dx_surfacebitmap.hxx.

Constructor & Destructor Documentation

◆ DXSurfaceBitmap()

dxcanvas::DXSurfaceBitmap::DXSurfaceBitmap ( const ::basegfx::B2ISize rSize,
const std::shared_ptr< canvas::ISurfaceProxyManager > &  rMgr,
const IDXRenderModuleSharedPtr rRenderModule,
bool  bWithAlpha 
)

Definition at line 189 of file dx_surfacebitmap.cxx.

References createInstance(), and init().

Member Function Documentation

◆ clear()

void dxcanvas::DXSurfaceBitmap::clear ( )

Definition at line 273 of file dx_surfacebitmap.cxx.

References getGraphics().

◆ draw() [1/4]

bool dxcanvas::DXSurfaceBitmap::draw ( const ::basegfx::B2IRange rArea)

Definition at line 395 of file dx_surfacebitmap.cxx.

References mbIsSurfaceDirty, and mpSurfaceProxy.

◆ draw() [2/4]

bool dxcanvas::DXSurfaceBitmap::draw ( double  fAlpha,
const ::basegfx::B2DPoint rPos,
const ::basegfx::B2DHomMatrix rTransform 
)

Definition at line 378 of file dx_surfacebitmap.cxx.

References mbIsSurfaceDirty, and mpSurfaceProxy.

◆ draw() [3/4]

bool dxcanvas::DXSurfaceBitmap::draw ( double  fAlpha,
const ::basegfx::B2DPoint rPos,
const ::basegfx::B2DPolyPolygon rClipPoly,
const ::basegfx::B2DHomMatrix rTransform 
)

Definition at line 342 of file dx_surfacebitmap.cxx.

References mbIsSurfaceDirty, and mpSurfaceProxy.

◆ draw() [4/4]

bool dxcanvas::DXSurfaceBitmap::draw ( double  fAlpha,
const ::basegfx::B2DPoint rPos,
const ::basegfx::B2DRange rArea,
const ::basegfx::B2DHomMatrix rTransform 
)

Definition at line 360 of file dx_surfacebitmap.cxx.

References mbIsSurfaceDirty, and mpSurfaceProxy.

◆ getBitmap()

BitmapSharedPtr dxcanvas::DXSurfaceBitmap::getBitmap ( ) const
overridevirtual

◆ getData()

uno::Sequence< sal_Int8 > dxcanvas::DXSurfaceBitmap::getData ( css::rendering::IntegerBitmapLayout &  bitmapLayout,
const css::geometry::IntegerRectangle2D &  rect 
)
overridevirtual

◆ getGraphics()

GraphicsSharedPtr dxcanvas::DXSurfaceBitmap::getGraphics ( )
overridevirtual

◆ getPixel()

uno::Sequence< sal_Int8 > dxcanvas::DXSurfaceBitmap::getPixel ( css::rendering::IntegerBitmapLayout &  bitmapLayout,
const css::geometry::IntegerPoint2D &  pos 
)
overridevirtual

◆ getSize()

basegfx::B2ISize dxcanvas::DXSurfaceBitmap::getSize ( ) const
overridevirtual

Implements dxcanvas::IBitmap.

Definition at line 212 of file dx_surfacebitmap.cxx.

References maSize.

◆ getSurface()

sal::systools::COMReference< surface_type > dxcanvas::DXSurfaceBitmap::getSurface ( ) const
inline

Definition at line 48 of file dx_surfacebitmap.hxx.

References mpSurface.

◆ hasAlpha()

bool dxcanvas::DXSurfaceBitmap::hasAlpha ( ) const
overridevirtual

Implements dxcanvas::IBitmap.

Definition at line 285 of file dx_surfacebitmap.cxx.

References mbAlpha.

Referenced by getBitmap(), getData(), getGraphics(), getPixel(), setData(), and setPixel().

◆ init()

void dxcanvas::DXSurfaceBitmap::init ( )
private

◆ resize()

bool dxcanvas::DXSurfaceBitmap::resize ( const ::basegfx::B2ISize rSize)

Definition at line 258 of file dx_surfacebitmap.cxx.

References init(), and maSize.

◆ setData()

void dxcanvas::DXSurfaceBitmap::setData ( const css::uno::Sequence< sal_Int8 > &  data,
const css::rendering::IntegerBitmapLayout &  bitmapLayout,
const css::geometry::IntegerRectangle2D &  rect 
)
overridevirtual

◆ setPixel()

void dxcanvas::DXSurfaceBitmap::setPixel ( const css::uno::Sequence< sal_Int8 > &  color,
const css::rendering::IntegerBitmapLayout &  bitmapLayout,
const css::geometry::IntegerPoint2D &  pos 
)
overridevirtual

Member Data Documentation

◆ maSize

::basegfx::B2ISize dxcanvas::DXSurfaceBitmap::maSize
private

Definition at line 91 of file dx_surfacebitmap.hxx.

Referenced by getBitmap(), getPixel(), getSize(), init(), resize(), and setPixel().

◆ mbAlpha

bool dxcanvas::DXSurfaceBitmap::mbAlpha
private

Definition at line 129 of file dx_surfacebitmap.hxx.

Referenced by hasAlpha(), and init().

◆ mbIsSurfaceDirty

bool dxcanvas::DXSurfaceBitmap::mbIsSurfaceDirty
mutableprivate

Definition at line 126 of file dx_surfacebitmap.hxx.

Referenced by draw(), getGraphics(), setData(), and setPixel().

◆ mpColorBuffer

std::shared_ptr<canvas::IColorBuffer> dxcanvas::DXSurfaceBitmap::mpColorBuffer
private

Definition at line 120 of file dx_surfacebitmap.hxx.

Referenced by init().

◆ mpGDIPlusBitmap

BitmapSharedPtr dxcanvas::DXSurfaceBitmap::mpGDIPlusBitmap
private

Definition at line 115 of file dx_surfacebitmap.hxx.

Referenced by getBitmap(), getData(), getPixel(), init(), setData(), and setPixel().

◆ mpGdiPlusUser

GDIPlusUserSharedPtr dxcanvas::DXSurfaceBitmap::mpGdiPlusUser
private

Definition at line 88 of file dx_surfacebitmap.hxx.

◆ mpGraphics

GraphicsSharedPtr dxcanvas::DXSurfaceBitmap::mpGraphics
private

Definition at line 117 of file dx_surfacebitmap.hxx.

Referenced by getGraphics(), and init().

◆ mpRenderModule

IDXRenderModuleSharedPtr dxcanvas::DXSurfaceBitmap::mpRenderModule
private

Definition at line 98 of file dx_surfacebitmap.hxx.

Referenced by init().

◆ mpSurface

sal::systools::COMReference<surface_type> dxcanvas::DXSurfaceBitmap::mpSurface
private

◆ mpSurfaceManager

std::shared_ptr<canvas::ISurfaceProxyManager> dxcanvas::DXSurfaceBitmap::mpSurfaceManager
private

Definition at line 102 of file dx_surfacebitmap.hxx.

Referenced by init().

◆ mpSurfaceProxy

std::shared_ptr< canvas::ISurfaceProxy > dxcanvas::DXSurfaceBitmap::mpSurfaceProxy
private

Definition at line 106 of file dx_surfacebitmap.hxx.

Referenced by draw(), and init().


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