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#include "GrBatchFlushState.h"
9
10#include "GrBatchAtlas.h"
11#include "GrPipeline.h"
12
13GrBatchFlushState::GrBatchFlushState(GrGpu* gpu, GrResourceProvider* resourceProvider)
14    : fGpu(gpu)
15    , fUploader(gpu)
16    , fResourceProvider(resourceProvider)
17    , fVertexPool(gpu)
18    , fIndexPool(gpu)
19    , fCurrentToken(0)
20    , fLastFlushedToken(0) {}
21
22void* GrBatchFlushState::makeVertexSpace(size_t vertexSize, int vertexCount,
23                                         const GrVertexBuffer** buffer, int* startVertex) {
24    return fVertexPool.makeSpace(vertexSize, vertexCount, buffer, startVertex);
25}
26
27uint16_t* GrBatchFlushState::makeIndexSpace(int indexCount,
28                                            const GrIndexBuffer** buffer, int* startIndex) {
29    return reinterpret_cast<uint16_t*>(fIndexPool.makeSpace(indexCount, buffer, startIndex));
30}
31