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 GrInOrderCommandBuilder_DEFINED 9 #define GrInOrderCommandBuilder_DEFINED 10 11 #include "GrCommandBuilder.h" 12 13 class GrInOrderCommandBuilder : public GrCommandBuilder { 14 public: 15 typedef GrCommandBuilder::Cmd Cmd; 16 typedef GrCommandBuilder::State State; 17 GrInOrderCommandBuilder(GrGpu * gpu)18 GrInOrderCommandBuilder(GrGpu* gpu) : INHERITED(gpu) { } 19 20 Cmd* recordDrawBatch(State*, GrBatch*) override; 21 Cmd* recordStencilPath(const GrPipelineBuilder&, 22 const GrPathProcessor*, 23 const GrPath*, 24 const GrScissorState&, 25 const GrStencilSettings&) override; 26 Cmd* recordDrawPath(State*, 27 const GrPathProcessor*, 28 const GrPath*, 29 const GrStencilSettings&) override; 30 Cmd* recordDrawPaths(State*, 31 GrInOrderDrawBuffer*, 32 const GrPathProcessor*, 33 const GrPathRange*, 34 const void*, 35 GrDrawTarget::PathIndexType, 36 const float transformValues[], 37 GrDrawTarget::PathTransformType , 38 int, 39 const GrStencilSettings&, 40 const GrDrawTarget::PipelineInfo&) override; 41 42 private: 43 typedef GrCommandBuilder INHERITED; 44 45 }; 46 47 #endif 48