| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright 2015 Google Inc. | 2  * Copyright 2015 Google Inc. | 
| 3  * | 3  * | 
| 4  * Use of this source code is governed by a BSD-style license that can be | 4  * Use of this source code is governed by a BSD-style license that can be | 
| 5  * found in the LICENSE file. | 5  * found in the LICENSE file. | 
| 6  */ | 6  */ | 
| 7 | 7 | 
| 8 #ifndef GrCopySurfaceBatch_DEFINED | 8 #ifndef GrCopySurfaceBatch_DEFINED | 
| 9 #define GrCopySurfaceBatch_DEFINED | 9 #define GrCopySurfaceBatch_DEFINED | 
| 10 | 10 | 
| 11 #include "GrBatch.h" | 11 #include "GrBatch.h" | 
| 12 #include "GrBatchFlushState.h" | 12 #include "GrBatchFlushState.h" | 
| 13 #include "GrGpu.h" | 13 #include "GrGpu.h" | 
| 14 #include "GrRenderTarget.h" | 14 #include "GrRenderTarget.h" | 
| 15 | 15 | 
| 16 class GrCopySurfaceBatch final : public GrBatch { | 16 class GrCopySurfaceBatch final : public GrBatch { | 
| 17 public: | 17 public: | 
| 18     DEFINE_BATCH_CLASS_ID | 18     DEFINE_BATCH_CLASS_ID | 
| 19 | 19 | 
| 20     /** This should not really be exposed as Create() will apply this clipping, 
    but there is |  | 
| 21      *  currently a workaround in GrContext::copySurface() for non-render target
     dsts that relies |  | 
| 22      *  on it. */ |  | 
| 23     static bool ClipSrcRectAndDstPoint(const GrSurface* dst, |  | 
| 24                                        const GrSurface* src, |  | 
| 25                                        const SkIRect& srcRect, |  | 
| 26                                        const SkIPoint& dstPoint, |  | 
| 27                                        SkIRect* clippedSrcRect, |  | 
| 28                                        SkIPoint* clippedDstPoint); |  | 
| 29 |  | 
| 30     static GrBatch* Create(GrSurface* dst, GrSurface* src, const SkIRect& srcRec
    t, | 20     static GrBatch* Create(GrSurface* dst, GrSurface* src, const SkIRect& srcRec
    t, | 
| 31                            const SkIPoint& dstPoint); | 21                            const SkIPoint& dstPoint); | 
| 32 | 22 | 
| 33     const char* name() const override { return "CopySurface"; } | 23     const char* name() const override { return "CopySurface"; } | 
| 34 | 24 | 
| 35     uint32_t renderTargetUniqueID() const override { | 25     uint32_t renderTargetUniqueID() const override { | 
| 36         GrRenderTarget* rt = fDst.get()->asRenderTarget(); | 26         GrRenderTarget* rt = fDst.get()->asRenderTarget(); | 
| 37         return rt ? rt->getUniqueID() : 0; | 27         return rt ? rt->getUniqueID() : 0; | 
| 38     } | 28     } | 
| 39     GrRenderTarget* renderTarget() const override { return fDst.get()->asRenderT
    arget(); } | 29     GrRenderTarget* renderTarget() const override { return fDst.get()->asRenderT
    arget(); } | 
| (...skipping 29 matching lines...) Expand all  Loading... | 
| 69 | 59 | 
| 70     GrPendingIOResource<GrSurface, kWrite_GrIOType> fDst; | 60     GrPendingIOResource<GrSurface, kWrite_GrIOType> fDst; | 
| 71     GrPendingIOResource<GrSurface, kRead_GrIOType>  fSrc; | 61     GrPendingIOResource<GrSurface, kRead_GrIOType>  fSrc; | 
| 72     SkIRect                                         fSrcRect; | 62     SkIRect                                         fSrcRect; | 
| 73     SkIPoint                                        fDstPoint; | 63     SkIPoint                                        fDstPoint; | 
| 74 | 64 | 
| 75     typedef GrBatch INHERITED; | 65     typedef GrBatch INHERITED; | 
| 76 }; | 66 }; | 
| 77 | 67 | 
| 78 #endif | 68 #endif | 
| OLD | NEW | 
|---|