| Index: src/gpu/GrSurface.cpp
|
| diff --git a/src/gpu/GrSurface.cpp b/src/gpu/GrSurface.cpp
|
| index d067f07d0df167512e1259106d52dac4a4bc53b7..0aa5f681ab2d1a07657e9814b77ff20b039d9766 100644
|
| --- a/src/gpu/GrSurface.cpp
|
| +++ b/src/gpu/GrSurface.cpp
|
| @@ -13,6 +13,34 @@
|
| #include "SkImageEncoder.h"
|
| #include <stdio.h>
|
|
|
| +bool GrSurface::writePixels(int left, int top, int width, int height,
|
| + GrPixelConfig config, const void* buffer, size_t rowBytes,
|
| + uint32_t pixelOpsFlags) {
|
| + // go through context so that all necessary flushing occurs
|
| + GrContext* context = this->getContext();
|
| + if (NULL == context) {
|
| + return false;
|
| + }
|
| + return context->writeSurfacePixels(this, left, top, width, height, config, buffer, rowBytes,
|
| + pixelOpsFlags);
|
| +}
|
| +
|
| +bool GrSurface::readPixels(int left, int top, int width, int height,
|
| + GrPixelConfig config, void* buffer, size_t rowBytes,
|
| + uint32_t pixelOpsFlags) {
|
| + // go through context so that all necessary flushing occurs
|
| + GrContext* context = this->getContext();
|
| + if (NULL == context) {
|
| + return false;
|
| + }
|
| + GrRenderTarget* target = this->asRenderTarget();
|
| + if (target) {
|
| + return context->readRenderTargetPixels(target, left, top, width, height, config, buffer,
|
| + rowBytes, pixelOpsFlags);
|
| + }
|
| + return false;
|
| +}
|
| +
|
| SkImageInfo GrSurface::info() const {
|
| SkColorType colorType;
|
| if (!GrPixelConfig2ColorType(this->config(), &colorType)) {
|
|
|