bool SkSurface::getRenderTargetHandle(GrBackendObject* obj, BackendHandleAccess access) { return asSB(this)->onGetRenderTargetHandle(obj, access); }
void SkSurface::prepareForExternalIO() { asSB(this)->onPrepareForExternalIO(); }
void SkSurface::draw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint) { return asSB(this)->onDraw(canvas, x, y, paint); }
GrBackendObject SkSurface::getTextureHandle(BackendHandleAccess access) { return asSB(this)->onGetTextureHandle(access); }
sk_sp<SkImage> SkSurface::makeImageSnapshot(SkBudgeted budgeted, ForceUnique unique) { // the caller will call unref() to balance this return asSB(this)->refCachedImage(budgeted, unique); }
sk_sp<SkSurface> SkSurface::makeSurface(const SkImageInfo& info) { return asSB(this)->onNewSurface(info); }
SkCanvas* SkSurface::getCanvas() { return asSB(this)->getCachedCanvas(); }
void SkSurface::notifyContentWillChange(ContentChangeMode mode) { asSB(this)->aboutToDraw(mode); }
uint32_t SkSurface::generationID() { if (0 == fGenerationID) { fGenerationID = asSB(this)->newGenerationID(); } return fGenerationID; }
SkSurface* SkSurface::newSurface(const SkImageInfo& info) { return asSB(this)->onNewSurface(info); }
SkImage* SkSurface::newImageSnapshot(Budgeted budgeted) { SkImage* image = asSB(this)->getCachedImage(budgeted); SkSafeRef(image); // the caller will call unref() to balance this return image; }