LibreOffice Module vcl (master)  1
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
OpenGLSalBitmap Class Reference

#include <salbmp.hxx>

Inheritance diagram for OpenGLSalBitmap:
[legend]
Collaboration diagram for OpenGLSalBitmap:
[legend]

Public Member Functions

 OpenGLSalBitmap ()
 
virtual ~OpenGLSalBitmap () override
 
bool Create (const Size &rSize, sal_uInt16 nBitCount, const BitmapPalette &rPal) override
 
bool Create (const SalBitmap &rSalBmp) override
 
bool Create (const SalBitmap &rSalBmp, SalGraphics *pGraphics) override
 
bool Create (const SalBitmap &rSalBmp, sal_uInt16 nNewBitCount) override
 
virtual bool Create (const css::uno::Reference< css::rendering::XBitmapCanvas > &rBitmapCanvas, Size &rSize, bool bMask=false) override
 
void Destroy () final override
 
Size GetSize () const override
 
sal_uInt16 GetBitCount () const override
 
BitmapBufferAcquireBuffer (BitmapAccessMode nMode) override
 
void ReleaseBuffer (BitmapBuffer *pBuffer, BitmapAccessMode nMode) override
 
bool GetSystemData (BitmapSystemData &rData) override
 
bool ScalingSupported () const override
 
bool Scale (const double &rScaleX, const double &rScaleY, BmpScaleFlag nScaleFlag) override
 
bool Replace (const Color &rSearchColor, const Color &rReplaceColor, sal_uInt8 nTol) override
 
bool ConvertToGreyscale () override
 
void Create (const OpenGLTexture &rTex, long nX, long nY, long nWidth, long nHeight)
 
OpenGLTextureGetTexture () const
 
const BitmapPaletteGetBitmapPalette () const
 
void ImplScale (const double &rScaleX, const double &rScaleY, BmpScaleFlag nScaleFlag)
 
- Public Member Functions inherited from SalBitmap
 SalBitmap ()
 
virtual ~SalBitmap ()
 
void DropScaledCache ()
 
void GetChecksum (BitmapChecksum &rChecksum) const
 
void InvalidateChecksum ()
 

Private Member Functions

virtual void updateChecksum () const override
 
bool calcChecksumGL (OpenGLTexture &rInputTexture, BitmapChecksum &rChecksum) const
 
GLuint CreateTexture ()
 
bool AllocateUserData ()
 
void DeallocateUserData ()
 
bool ReadTexture ()
 
bool ImplScaleFilter (const rtl::Reference< OpenGLContext > &xContext, const double &rScaleX, const double &rScaleY, GLenum nFilter)
 
bool ImplScaleConvolution (const rtl::Reference< OpenGLContext > &xContext, const double &rScaleX, const double &rScaleY, const vcl::Kernel &rKernel)
 
bool ImplScaleArea (const rtl::Reference< OpenGLContext > &xContext, double rScaleX, double rScaleY)
 

Static Private Member Functions

static void ImplCreateKernel (const double &fScale, const vcl::Kernel &rKernel, GLfloat *&pWeights, sal_uInt32 &aKernelSize)
 

Private Attributes

OpenGLTexture maTexture
 
bool mbDirtyTexture
 
BitmapPalette maPalette
 
std::shared_ptr< sal_uInt8mpUserBuffer
 
sal_uInt16 mnBits
 
sal_uInt32 mnBytesPerRow
 
int mnWidth
 
int mnHeight
 

Additional Inherited Members

- Protected Attributes inherited from SalBitmap
BitmapChecksum mnChecksum
 
bool mbChecksumValid
 

Detailed Description

Definition at line 38 of file opengl/salbmp.hxx.

Constructor & Destructor Documentation

OpenGLSalBitmap::OpenGLSalBitmap ( )
virtual OpenGLSalBitmap::~OpenGLSalBitmap ( )
overridevirtual

Member Function Documentation

BitmapBuffer* OpenGLSalBitmap::AcquireBuffer ( BitmapAccessMode  nMode)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::AllocateUserData ( )
private
bool OpenGLSalBitmap::calcChecksumGL ( OpenGLTexture rInputTexture,
BitmapChecksum rChecksum 
) const
private
bool OpenGLSalBitmap::ConvertToGreyscale ( )
overridevirtual

Reimplemented from SalBitmap.

bool OpenGLSalBitmap::Create ( const Size rSize,
sal_uInt16  nBitCount,
const BitmapPalette rPal 
)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::Create ( const SalBitmap rSalBmp)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::Create ( const SalBitmap rSalBmp,
SalGraphics pGraphics 
)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::Create ( const SalBitmap rSalBmp,
sal_uInt16  nNewBitCount 
)
overridevirtual

Implements SalBitmap.

virtual bool OpenGLSalBitmap::Create ( const css::uno::Reference< css::rendering::XBitmapCanvas > &  rBitmapCanvas,
Size rSize,
bool  bMask = false 
)
overridevirtual

Implements SalBitmap.

void OpenGLSalBitmap::Create ( const OpenGLTexture rTex,
long  nX,
long  nY,
long  nWidth,
long  nHeight 
)
GLuint OpenGLSalBitmap::CreateTexture ( )
private
void OpenGLSalBitmap::DeallocateUserData ( )
private
void OpenGLSalBitmap::Destroy ( )
finaloverridevirtual

Implements SalBitmap.

sal_uInt16 OpenGLSalBitmap::GetBitCount ( ) const
overridevirtual

Implements SalBitmap.

const BitmapPalette& OpenGLSalBitmap::GetBitmapPalette ( ) const
inline

Definition at line 88 of file opengl/salbmp.hxx.

Size OpenGLSalBitmap::GetSize ( ) const
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::GetSystemData ( BitmapSystemData rData)
overridevirtual

Implements SalBitmap.

OpenGLTexture& OpenGLSalBitmap::GetTexture ( ) const
static void OpenGLSalBitmap::ImplCreateKernel ( const double &  fScale,
const vcl::Kernel rKernel,
GLfloat *&  pWeights,
sal_uInt32 &  aKernelSize 
)
staticprivate
void OpenGLSalBitmap::ImplScale ( const double &  rScaleX,
const double &  rScaleY,
BmpScaleFlag  nScaleFlag 
)
bool OpenGLSalBitmap::ImplScaleArea ( const rtl::Reference< OpenGLContext > &  xContext,
double  rScaleX,
double  rScaleY 
)
private
bool OpenGLSalBitmap::ImplScaleConvolution ( const rtl::Reference< OpenGLContext > &  xContext,
const double &  rScaleX,
const double &  rScaleY,
const vcl::Kernel rKernel 
)
private
bool OpenGLSalBitmap::ImplScaleFilter ( const rtl::Reference< OpenGLContext > &  xContext,
const double &  rScaleX,
const double &  rScaleY,
GLenum  nFilter 
)
private
bool OpenGLSalBitmap::ReadTexture ( )
private
void OpenGLSalBitmap::ReleaseBuffer ( BitmapBuffer pBuffer,
BitmapAccessMode  nMode 
)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::Replace ( const Color rSearchColor,
const Color rReplaceColor,
sal_uInt8  nTol 
)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::Scale ( const double &  rScaleX,
const double &  rScaleY,
BmpScaleFlag  nScaleFlag 
)
overridevirtual

Implements SalBitmap.

bool OpenGLSalBitmap::ScalingSupported ( ) const
overridevirtual

Implements SalBitmap.

virtual void OpenGLSalBitmap::updateChecksum ( ) const
overrideprivatevirtual

Reimplemented from SalBitmap.

Member Data Documentation

BitmapPalette OpenGLSalBitmap::maPalette
private

Definition at line 43 of file opengl/salbmp.hxx.

OpenGLTexture OpenGLSalBitmap::maTexture
private

Definition at line 41 of file opengl/salbmp.hxx.

bool OpenGLSalBitmap::mbDirtyTexture
private

Definition at line 42 of file opengl/salbmp.hxx.

sal_uInt16 OpenGLSalBitmap::mnBits
private

Definition at line 45 of file opengl/salbmp.hxx.

sal_uInt32 OpenGLSalBitmap::mnBytesPerRow
private

Definition at line 46 of file opengl/salbmp.hxx.

int OpenGLSalBitmap::mnHeight
private

Definition at line 48 of file opengl/salbmp.hxx.

int OpenGLSalBitmap::mnWidth
private

Definition at line 47 of file opengl/salbmp.hxx.

std::shared_ptr<sal_uInt8> OpenGLSalBitmap::mpUserBuffer
private

Definition at line 44 of file opengl/salbmp.hxx.


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