1 /* 2 * Copyright 2015 Google Inc. 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8 #ifndef GrReorderCommandBuilder_DEFINED 9 #define GrReorderCommandBuilder_DEFINED 10 11 #include "GrCommandBuilder.h" 12 13 class GrReorderCommandBuilder : public GrCommandBuilder { 14 public: 15 typedef GrCommandBuilder::Cmd Cmd; 16 typedef GrCommandBuilder::State State; 17 GrReorderCommandBuilder(GrGpu * gpu)18 GrReorderCommandBuilder(GrGpu* gpu) : INHERITED(gpu) {} 19 20 Cmd* recordDrawBatch(State*, GrBatch*) override; recordStencilPath(const GrPipelineBuilder &,const GrPathProcessor *,const GrPath *,const GrScissorState &,const GrStencilSettings &)21 Cmd* recordStencilPath(const GrPipelineBuilder&, 22 const GrPathProcessor*, 23 const GrPath*, 24 const GrScissorState&, 25 const GrStencilSettings&) override { 26 SkFAIL("Unsupported\n"); 27 return NULL; 28 } 29 recordDrawPath(State *,const GrPathProcessor *,const GrPath *,const GrStencilSettings &)30 Cmd* recordDrawPath(State*, 31 const GrPathProcessor*, 32 const GrPath*, 33 const GrStencilSettings&) override { 34 SkFAIL("Unsupported\n"); 35 return NULL; 36 } 37 recordDrawPaths(State *,GrInOrderDrawBuffer *,const GrPathProcessor *,const GrPathRange *,const void *,GrDrawTarget::PathIndexType,const float transformValues[],GrDrawTarget::PathTransformType,int,const GrStencilSettings &,const GrDrawTarget::PipelineInfo &)38 Cmd* recordDrawPaths(State*, 39 GrInOrderDrawBuffer*, 40 const GrPathProcessor*, 41 const GrPathRange*, 42 const void*, 43 GrDrawTarget::PathIndexType, 44 const float transformValues[], 45 GrDrawTarget::PathTransformType , 46 int, 47 const GrStencilSettings&, 48 const GrDrawTarget::PipelineInfo&) override { 49 SkFAIL("Unsupported\n"); 50 return NULL; 51 } 52 53 private: 54 typedef GrCommandBuilder INHERITED; 55 56 }; 57 58 #endif 59