blob: 4fc7cc74dd12abdb20d7d3d020bfb0b00cb30615 [file] [log] [blame]
joshualittaf242952015-05-05 11:55:39 -07001/*
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
13class GrInOrderCommandBuilder : public GrCommandBuilder {
14public:
15 typedef GrCommandBuilder::Cmd Cmd;
16 typedef GrCommandBuilder::State State;
17
18 GrInOrderCommandBuilder(GrGpu* gpu,
19 GrVertexBufferAllocPool* vertexPool,
20 GrIndexBufferAllocPool* indexPool)
21 : INHERITED(gpu, vertexPool, indexPool) {
22 }
23
24 Cmd* recordDrawBatch(State*, GrBatch*) override;
25 Cmd* recordStencilPath(const GrPipelineBuilder&,
26 const GrPathProcessor*,
27 const GrPath*,
28 const GrScissorState&,
29 const GrStencilSettings&) override;
30 Cmd* recordDrawPath(State*,
31 const GrPathProcessor*,
32 const GrPath*,
33 const GrStencilSettings&) override;
34 Cmd* recordDrawPaths(State*,
35 GrInOrderDrawBuffer*,
36 const GrPathProcessor*,
37 const GrPathRange*,
38 const void*,
39 GrDrawTarget::PathIndexType,
40 const float transformValues[],
41 GrDrawTarget::PathTransformType ,
42 int,
43 const GrStencilSettings&,
44 const GrDrawTarget::PipelineInfo&) override;
45
46private:
47 typedef GrCommandBuilder INHERITED;
48
49};
50
51#endif