| Index: src/gpu/GrGpu.h
|
| diff --git a/src/gpu/GrGpu.h b/src/gpu/GrGpu.h
|
| index e8d493930490c07dc28fdc2dc7093cc677fa51c6..f2ad10f41714c6faf9beb947eed234025b20677e 100644
|
| --- a/src/gpu/GrGpu.h
|
| +++ b/src/gpu/GrGpu.h
|
| @@ -256,6 +256,16 @@
|
| const GrPrimitiveProcessor&,
|
| const GrPipeline&,
|
| const GrBatchTracker&) const = 0;
|
| +
|
| + // Called to determine whether a copySurface call would succeed or not. Derived
|
| + // classes must keep this consistent with their implementation of onCopySurface(). Fallbacks
|
| + // to issuing a draw from the src to dst take place at the GrDrawTarget level and this function
|
| + // should only return true if a faster copy path exists. The rect and point are pre-clipped. The
|
| + // src rect and implied dst rect are guaranteed to be within the src/dst bounds and non-empty.
|
| + virtual bool canCopySurface(const GrSurface* dst,
|
| + const GrSurface* src,
|
| + const SkIRect& srcRect,
|
| + const SkIPoint& dstPoint) = 0;
|
|
|
| // Called to perform a surface to surface copy. Fallbacks to issuing a draw from the src to dst
|
| // take place at the GrDrawTarget level and this function implement faster copy paths. The rect
|
|
|