180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru/* 380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Copyright 2010 Google Inc. 480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * 580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Use of this source code is governed by a BSD-style license that can be 680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * found in the LICENSE file. 780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru */ 880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#ifndef GrIndexBuffer_DEFINED 1280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#define GrIndexBuffer_DEFINED 1380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "GrGeometryBuffer.h" 1580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruclass GrIndexBuffer : public GrGeometryBuffer { 1780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Querupublic: 18d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger /** 19d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger * Retrieves the maximum number of quads that could be rendered 20d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger * from the index buffer (using kTriangles_GrPrimitiveType). 21d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger * @return the maximum number of quads using full size of index buffer. 22d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger */ 23d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger int maxQuads() const { 24d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger return this->sizeInBytes() / (sizeof(uint16_t) * 6); 25d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger } 2680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruprotected: 27096defe64d408e54474fe19f418c95bf1a554fc7Derek Sollenberger GrIndexBuffer(GrGpu* gpu, bool isWrapped, size_t sizeInBytes, bool dynamic, bool cpuBacked) 28096defe64d408e54474fe19f418c95bf1a554fc7Derek Sollenberger : INHERITED(gpu, isWrapped, sizeInBytes, dynamic, cpuBacked) {} 2980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruprivate: 3080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru typedef GrGeometryBuffer INHERITED; 3180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru}; 3280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 3380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#endif 34