blob: 09d1977bfcc11ee1fa9ea39dde3543983ac14f9e [file] [log] [blame]
reed@google.comac10a2d2010-12-22 21:39:39 +00001/*
2 Copyright 2010 Google Inc.
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15 */
16
17
18#ifndef GrIndexBuffer_DEFINED
19#define GrIndexBuffer_DEFINED
20
bsalomon@google.com1c13c962011-02-14 16:51:21 +000021#include "GrGeometryBuffer.h"
reed@google.comac10a2d2010-12-22 21:39:39 +000022
bsalomon@google.com1c13c962011-02-14 16:51:21 +000023class GrIndexBuffer : public GrGeometryBuffer {
bsalomon@google.com86afc2a2011-02-16 16:12:19 +000024public:
25 /**
26 * Retrieves the maximum number of quads that could be rendered
27 * from the index buffer (using kTriangles_PrimitiveType).
28 * @return the maximum number of quads using full size of index buffer.
29 */
30 int maxQuads() const { return size() / (sizeof(uint16_t) * 6); }
reed@google.comac10a2d2010-12-22 21:39:39 +000031protected:
bsalomon@google.com1c13c962011-02-14 16:51:21 +000032 GrIndexBuffer(size_t sizeInBytes, bool dynamic) :
33 INHERITED(sizeInBytes, dynamic) {}
reed@google.comac10a2d2010-12-22 21:39:39 +000034private:
bsalomon@google.com1c13c962011-02-14 16:51:21 +000035 typedef GrGeometryBuffer INHERITED;
reed@google.comac10a2d2010-12-22 21:39:39 +000036};
37
38#endif