Index: src/gpu/GrTargetCommands.h |
diff --git a/src/gpu/GrTargetCommands.h b/src/gpu/GrTargetCommands.h |
index 4b3dd574e3a537c05b0aaaee4ef33caf5100000e..3a21afe938d70e357b7968cbdc437af3d5aafd15 100644 |
--- a/src/gpu/GrTargetCommands.h |
+++ b/src/gpu/GrTargetCommands.h |
@@ -47,6 +47,7 @@ public: |
kDrawPath_CmdType = 6, |
kDrawPaths_CmdType = 7, |
kDrawBatch_CmdType = 8, |
+ kBlendBarrier_CmdType = 9, |
}; |
Cmd(CmdType type) : fMarkerID(-1), fType(type) {} |
@@ -121,6 +122,7 @@ public: |
GrSurface* src, |
const SkIRect& srcRect, |
const SkIPoint& dstPoint); |
+ Cmd* recordBlendBarrier(GrInOrderDrawBuffer*); |
protected: |
void willReserveVertexAndIndexSpace(int vertexCount, |
@@ -295,6 +297,11 @@ private: |
GrBatchTarget* fBatchTarget; |
}; |
+ struct BlendBarrier : public Cmd { |
+ BlendBarrier() : Cmd(kBlendBarrier_CmdType) {} |
+ void execute(GrGpu*, const SetState*) override; |
+ }; |
+ |
static const int kCmdBufferInitialSizeInBytes = 8 * 1024; |
typedef void* TCmdAlign; // This wouldn't be enough align if a command used long double. |