Make GM render to render targets that are also textures.
Review URL: https://codereview.chromium.org/13211002
git-svn-id: http://skia.googlecode.com/svn/trunk@8438 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
index aca3ba6..49d6562 100644
--- a/src/gpu/SkGpuDevice.cpp
+++ b/src/gpu/SkGpuDevice.cpp
@@ -167,6 +167,18 @@
return bitmap;
}
+SkGpuDevice* SkGpuDevice::Create(GrSurface* surface) {
+ GrAssert(NULL != surface);
+ if (NULL == surface->asRenderTarget() || NULL == surface->getContext()) {
+ return NULL;
+ }
+ if (surface->asTexture()) {
+ return SkNEW_ARGS(SkGpuDevice, (surface->getContext(), surface->asTexture()));
+ } else {
+ return SkNEW_ARGS(SkGpuDevice, (surface->getContext(), surface->asRenderTarget()));
+ }
+}
+
SkGpuDevice::SkGpuDevice(GrContext* context, GrTexture* texture)
: SkDevice(make_bitmap(context, texture->asRenderTarget())) {
this->initFromRenderTarget(context, texture->asRenderTarget(), false);