#include <sstream>
#include "ANGLEPerfTest.h"
#include "DrawCallPerfParams.h"
#include "test_utils/draw_call_perf_utils.h"
namespace
{
GLuint CreateElementArrayBuffer(size_t count, GLenum type, GLenum usage)
{ … }
struct DrawElementsPerfParams final : public DrawCallPerfParams
{ … };
std::ostream &operator<<(std::ostream &os, const DrawElementsPerfParams ¶ms)
{ … }
class DrawElementsPerfBenchmark : public ANGLERenderTest,
public ::testing::WithParamInterface<DrawElementsPerfParams>
{ … };
DrawElementsPerfBenchmark::DrawElementsPerfBenchmark()
: … { … }
GLsizei ElementTypeSize(GLenum elementType)
{ … }
void DrawElementsPerfBenchmark::initializeBenchmark()
{ … }
void DrawElementsPerfBenchmark::destroyBenchmark()
{ … }
void DrawElementsPerfBenchmark::drawBenchmark()
{ … }
TEST_P(DrawElementsPerfBenchmark, Run)
{ … }
usingnamespaceangle;
usingnamespaceparams;
P;
P CombineIndexType(const P &in, GLenum indexType)
{ … }
P CombineIndexBufferChanged(const P &in, bool indexBufferChanged)
{ … }
std::vector<GLenum> gIndexTypes = …;
std::vector<P> gWithIndexType = …;
std::vector<P> gWithRenderer = …;
std::vector<P> gWithChange = …;
std::vector<P> gWithDevice = …;
ANGLE_INSTANTIATE_TEST_ARRAY(…);
}