 |
Skia
2D Graphics Library
|
Go to the documentation of this file.
8 #ifndef SkRasterHandleAllocator_DEFINED
9 #define SkRasterHandleAllocator_DEFINED
46 void (*fReleaseProc)(
void* pixels,
void* ctx);
78 static std::unique_ptr<SkCanvas>
MakeCanvas(std::unique_ptr<SkRasterHandleAllocator>,
87 friend class SkBitmapDevice;
SkRasterHandleAllocator()=default
SkRasterHandleAllocator & operator=(const SkRasterHandleAllocator &)=delete
void * Handle
Definition: SkRasterHandleAllocator.h:41
Handle fHandle
Definition: SkRasterHandleAllocator.h:50
virtual void updateHandle(Handle, const SkMatrix &, const SkIRect &)=0
Clients access the handle for a given layer by calling SkCanvas::accessTopRasterHandle().
If a client wants to control the allocation of raster layers in a canvas, it should subclass SkRaster...
Definition: SkRasterHandleAllocator.h:36
virtual bool allocHandle(const SkImageInfo &, Rec *)=0
Given a requested info, allocate the corresponding pixels/rowbytes, and whatever handle is desired to...
#define SK_API
Definition: SkTypes.h:181
static std::unique_ptr< SkCanvas > MakeCanvas(std::unique_ptr< SkRasterHandleAllocator >, const SkImageInfo &, const Rec *rec=nullptr)
This creates a canvas which will use the allocator to manage pixel allocations, including all calls t...
Definition: SkImageInfo.h:283
Definition: SkCanvas.h:87
SkRasterHandleAllocator(const SkRasterHandleAllocator &)=delete
void * fReleaseCtx
Definition: SkRasterHandleAllocator.h:47
Definition: SkMatrix.h:48
void * fPixels
Definition: SkRasterHandleAllocator.h:48
Definition: SkRasterHandleAllocator.h:43
virtual ~SkRasterHandleAllocator()=default
Definition: SkBitmap.h:50
size_t fRowBytes
Definition: SkRasterHandleAllocator.h:49