Add APIs and plumbing for external rendertaret-textures w/ and w/out MSAA.

Review URL: http://codereview.appspot.com/4388049/



git-svn-id: http://skia.googlecode.com/svn/trunk@1102 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrGpuGL.h b/gpu/src/GrGpuGL.h
index 1b5f7f7..cffa671 100644
--- a/gpu/src/GrGpuGL.h
+++ b/gpu/src/GrGpuGL.h
@@ -79,21 +79,21 @@
                                                      bool dynamic);
     virtual GrIndexBuffer* createIndexBufferHelper(uint32_t size,
                                                    bool dynamic);
-
+    virtual GrResource* onCreatePlatformSurface(const GrPlatformSurfaceDesc& desc);
     virtual GrRenderTarget* createPlatformRenderTargetHelper(
                                                  intptr_t platformRenderTarget,
                                                  int stencilBits,
                                                  bool isMultisampled,
                                                  int width, int height);
-
     virtual GrRenderTarget* createRenderTargetFrom3DApiStateHelper();
 
     virtual void eraseColorHelper(GrColor color);
 
     virtual void forceRenderTargetFlushHelper();
 
-    virtual bool readPixelsHelper(int left, int top, int width, int height,
-                                  GrPixelConfig, void* buffer);
+    virtual bool onReadPixels(GrRenderTarget* target,
+                              int left, int top, int width, int height,
+                              GrPixelConfig, void* buffer);
 
     virtual void drawIndexedHelper(GrPrimitiveType type,
                                    uint32_t startVertex,
@@ -158,7 +158,7 @@
     void flushAAState(GrPrimitiveType type);
     void flushBlend(GrPrimitiveType type);
 
-    void resolveTextureRenderTarget(GrGLTexture* texture);
+    void resolveRenderTarget(GrGLRenderTarget* texture);
 
     bool canBeTexture(GrPixelConfig config,
                       GrGLenum* internalFormat,