LibreOffice Module vcl (master)  1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SkiaPackedSurfaceAtlasManager Class Referencefinal

Pack Skia "surfaces" into one surface atlas. More...

#include <packedsurfaceatlas.hxx>

Public Member Functions

 SkiaPackedSurfaceAtlasManager (int nSurfaceWidth, int nSurfaceHeight)
 nSurfaceWidth and nSurfaceHeight are the dimensions of the common surface(s) More...
 ~SkiaPackedSurfaceAtlasManager ()
SkiaPackedSurface Reserve (int nWidth, int nHeight)
std::vector< sk_sp< SkSurface > > ReduceSurfaceNumber (int nMaxNumberOfSurfaces)

Private Member Functions

void CreateNewSurface ()
 SkiaPackedSurfaceAtlasManager (const SkiaPackedSurfaceAtlasManager &)=delete
SkiaPackedSurfaceAtlasManageroperator= (const SkiaPackedSurfaceAtlasManager &)=delete

Private Attributes

std::vector< std::unique_ptr< PackedSurface > > maPackedSurfaces
int const mnSurfaceWidth
int const mnSurfaceHeight

Detailed Description

Pack Skia "surfaces" into one surface atlas.

This is based on algorithm described in 1 and is an adaptation of "texture atlas generator" from 2.

Definition at line 57 of file packedsurfaceatlas.hxx.

Constructor & Destructor Documentation

SkiaPackedSurfaceAtlasManager::SkiaPackedSurfaceAtlasManager ( const SkiaPackedSurfaceAtlasManager )
SkiaPackedSurfaceAtlasManager::SkiaPackedSurfaceAtlasManager ( int  nSurfaceWidth,
int  nSurfaceHeight 

nSurfaceWidth and nSurfaceHeight are the dimensions of the common surface(s)

SkiaPackedSurfaceAtlasManager::~SkiaPackedSurfaceAtlasManager ( )

Member Function Documentation

void SkiaPackedSurfaceAtlasManager::CreateNewSurface ( )
SkiaPackedSurfaceAtlasManager& SkiaPackedSurfaceAtlasManager::operator= ( const SkiaPackedSurfaceAtlasManager )
std::vector<sk_sp<SkSurface> > SkiaPackedSurfaceAtlasManager::ReduceSurfaceNumber ( int  nMaxNumberOfSurfaces)
SkiaPackedSurface SkiaPackedSurfaceAtlasManager::Reserve ( int  nWidth,
int  nHeight 

Member Data Documentation

std::vector<std::unique_ptr<PackedSurface> > SkiaPackedSurfaceAtlasManager::maPackedSurfaces

Definition at line 59 of file packedsurfaceatlas.hxx.

int const SkiaPackedSurfaceAtlasManager::mnSurfaceHeight

Definition at line 63 of file packedsurfaceatlas.hxx.

int const SkiaPackedSurfaceAtlasManager::mnSurfaceWidth

Definition at line 62 of file packedsurfaceatlas.hxx.

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