bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 1 | /* |
| 2 | * Copyright 2016 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 | |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 8 | #include "GrGLTestInterface.h" |
| 9 | |
| 10 | namespace { |
Mike Klein | 7634330 | 2017-06-22 13:15:13 -0700 | [diff] [blame] | 11 | template<typename R, typename... A> |
| 12 | GrGLFunction<R(*)(A...)> bind_to_member(GrGLTestInterface* interface, |
| 13 | R (GrGLTestInterface::*member)(A...)) { |
| 14 | return [interface, member] (A... a) -> R { return (interface->*member)(a...); }; |
| 15 | } |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 16 | } // anonymous namespace |
| 17 | |
| 18 | GrGLTestInterface::GrGLTestInterface() { |
| 19 | fFunctions.fActiveTexture = bind_to_member(this, &GrGLTestInterface::activeTexture); |
| 20 | fFunctions.fAttachShader = bind_to_member(this, &GrGLTestInterface::attachShader); |
| 21 | fFunctions.fBeginQuery = bind_to_member(this, &GrGLTestInterface::beginQuery); |
| 22 | fFunctions.fBindAttribLocation = bind_to_member(this, &GrGLTestInterface::bindAttribLocation); |
| 23 | fFunctions.fBindBuffer = bind_to_member(this, &GrGLTestInterface::bindBuffer); |
| 24 | fFunctions.fBindFramebuffer = bind_to_member(this, &GrGLTestInterface::bindFramebuffer); |
| 25 | fFunctions.fBindRenderbuffer = bind_to_member(this, &GrGLTestInterface::bindRenderbuffer); |
| 26 | fFunctions.fBindTexture = bind_to_member(this, &GrGLTestInterface::bindTexture); |
| 27 | fFunctions.fBindFragDataLocation = bind_to_member(this, &GrGLTestInterface::bindFragDataLocation); |
| 28 | fFunctions.fBindFragDataLocationIndexed = bind_to_member(this, &GrGLTestInterface::bindFragDataLocationIndexed); |
| 29 | fFunctions.fBindVertexArray = bind_to_member(this, &GrGLTestInterface::bindVertexArray); |
| 30 | fFunctions.fBlendBarrier = bind_to_member(this, &GrGLTestInterface::blendBarrier); |
| 31 | fFunctions.fBlendColor = bind_to_member(this, &GrGLTestInterface::blendColor); |
| 32 | fFunctions.fBlendEquation = bind_to_member(this, &GrGLTestInterface::blendEquation); |
| 33 | fFunctions.fBlendFunc = bind_to_member(this, &GrGLTestInterface::blendFunc); |
| 34 | fFunctions.fBlitFramebuffer = bind_to_member(this, &GrGLTestInterface::blitFramebuffer); |
| 35 | fFunctions.fBufferData = bind_to_member(this, &GrGLTestInterface::bufferData); |
| 36 | fFunctions.fBufferSubData = bind_to_member(this, &GrGLTestInterface::bufferSubData); |
| 37 | fFunctions.fCheckFramebufferStatus = bind_to_member(this, &GrGLTestInterface::checkFramebufferStatus); |
| 38 | fFunctions.fClear = bind_to_member(this, &GrGLTestInterface::clear); |
| 39 | fFunctions.fClearColor = bind_to_member(this, &GrGLTestInterface::clearColor); |
| 40 | fFunctions.fClearStencil = bind_to_member(this, &GrGLTestInterface::clearStencil); |
| 41 | fFunctions.fColorMask = bind_to_member(this, &GrGLTestInterface::colorMask); |
| 42 | fFunctions.fCompileShader = bind_to_member(this, &GrGLTestInterface::compileShader); |
| 43 | fFunctions.fCompressedTexImage2D = bind_to_member(this, &GrGLTestInterface::compressedTexImage2D); |
| 44 | fFunctions.fCompressedTexSubImage2D = bind_to_member(this, &GrGLTestInterface::compressedTexSubImage2D); |
| 45 | fFunctions.fCopyTexSubImage2D = bind_to_member(this, &GrGLTestInterface::copyTexSubImage2D); |
| 46 | fFunctions.fCreateProgram = bind_to_member(this, &GrGLTestInterface::createProgram); |
| 47 | fFunctions.fCreateShader = bind_to_member(this, &GrGLTestInterface::createShader); |
| 48 | fFunctions.fCullFace = bind_to_member(this, &GrGLTestInterface::cullFace); |
| 49 | fFunctions.fDeleteBuffers = bind_to_member(this, &GrGLTestInterface::deleteBuffers); |
| 50 | fFunctions.fDeleteFramebuffers = bind_to_member(this, &GrGLTestInterface::deleteFramebuffers); |
| 51 | fFunctions.fDeleteProgram = bind_to_member(this, &GrGLTestInterface::deleteProgram); |
| 52 | fFunctions.fDeleteQueries = bind_to_member(this, &GrGLTestInterface::deleteQueries); |
| 53 | fFunctions.fDeleteRenderbuffers = bind_to_member(this, &GrGLTestInterface::deleteRenderbuffers); |
| 54 | fFunctions.fDeleteShader = bind_to_member(this, &GrGLTestInterface::deleteShader); |
| 55 | fFunctions.fDeleteTextures = bind_to_member(this, &GrGLTestInterface::deleteTextures); |
| 56 | fFunctions.fDeleteVertexArrays = bind_to_member(this, &GrGLTestInterface::deleteVertexArrays); |
| 57 | fFunctions.fDepthMask = bind_to_member(this, &GrGLTestInterface::depthMask); |
| 58 | fFunctions.fDisable = bind_to_member(this, &GrGLTestInterface::disable); |
| 59 | fFunctions.fDisableVertexAttribArray = bind_to_member(this, &GrGLTestInterface::disableVertexAttribArray); |
| 60 | fFunctions.fDrawArrays = bind_to_member(this, &GrGLTestInterface::drawArrays); |
| 61 | fFunctions.fDrawArraysInstanced = bind_to_member(this, &GrGLTestInterface::drawArraysInstanced); |
| 62 | fFunctions.fDrawArraysIndirect = bind_to_member(this, &GrGLTestInterface::drawArraysIndirect); |
| 63 | fFunctions.fDrawBuffer = bind_to_member(this, &GrGLTestInterface::drawBuffer); |
| 64 | fFunctions.fDrawBuffers = bind_to_member(this, &GrGLTestInterface::drawBuffers); |
| 65 | fFunctions.fDrawElements = bind_to_member(this, &GrGLTestInterface::drawElements); |
| 66 | fFunctions.fDrawElementsInstanced = bind_to_member(this, &GrGLTestInterface::drawElementsInstanced); |
| 67 | fFunctions.fDrawElementsIndirect = bind_to_member(this, &GrGLTestInterface::drawElementsIndirect); |
bsalomon | fc9527a | 2016-08-29 09:18:39 -0700 | [diff] [blame] | 68 | fFunctions.fDrawRangeElements = bind_to_member(this, &GrGLTestInterface::drawRangeElements); |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 69 | fFunctions.fEnable = bind_to_member(this, &GrGLTestInterface::enable); |
| 70 | fFunctions.fEnableVertexAttribArray = bind_to_member(this, &GrGLTestInterface::enableVertexAttribArray); |
| 71 | fFunctions.fEndQuery = bind_to_member(this, &GrGLTestInterface::endQuery); |
| 72 | fFunctions.fFinish = bind_to_member(this, &GrGLTestInterface::finish); |
| 73 | fFunctions.fFlush = bind_to_member(this, &GrGLTestInterface::flush); |
| 74 | fFunctions.fFlushMappedBufferRange = bind_to_member(this, &GrGLTestInterface::flushMappedBufferRange); |
| 75 | fFunctions.fFramebufferRenderbuffer = bind_to_member(this, &GrGLTestInterface::framebufferRenderbuffer); |
| 76 | fFunctions.fFramebufferTexture2D = bind_to_member(this, &GrGLTestInterface::framebufferTexture2D); |
| 77 | fFunctions.fFramebufferTexture2DMultisample = bind_to_member(this, &GrGLTestInterface::framebufferTexture2DMultisample); |
| 78 | fFunctions.fFrontFace = bind_to_member(this, &GrGLTestInterface::frontFace); |
| 79 | fFunctions.fGenBuffers = bind_to_member(this, &GrGLTestInterface::genBuffers); |
| 80 | fFunctions.fGenFramebuffers = bind_to_member(this, &GrGLTestInterface::genFramebuffers); |
| 81 | fFunctions.fGenerateMipmap = bind_to_member(this, &GrGLTestInterface::generateMipmap); |
| 82 | fFunctions.fGenQueries = bind_to_member(this, &GrGLTestInterface::genQueries); |
| 83 | fFunctions.fGenRenderbuffers = bind_to_member(this, &GrGLTestInterface::genRenderbuffers); |
| 84 | fFunctions.fGenTextures = bind_to_member(this, &GrGLTestInterface::genTextures); |
| 85 | fFunctions.fGenVertexArrays = bind_to_member(this, &GrGLTestInterface::genVertexArrays); |
| 86 | fFunctions.fGetBufferParameteriv = bind_to_member(this, &GrGLTestInterface::getBufferParameteriv); |
| 87 | fFunctions.fGetError = bind_to_member(this, &GrGLTestInterface::getError); |
| 88 | fFunctions.fGetFramebufferAttachmentParameteriv = bind_to_member(this, &GrGLTestInterface::getFramebufferAttachmentParameteriv); |
| 89 | fFunctions.fGetIntegerv = bind_to_member(this, &GrGLTestInterface::getIntegerv); |
| 90 | fFunctions.fGetMultisamplefv = bind_to_member(this, &GrGLTestInterface::getMultisamplefv); |
| 91 | fFunctions.fGetProgramInfoLog = bind_to_member(this, &GrGLTestInterface::getProgramInfoLog); |
| 92 | fFunctions.fGetProgramiv = bind_to_member(this, &GrGLTestInterface::getProgramiv); |
| 93 | fFunctions.fGetQueryiv = bind_to_member(this, &GrGLTestInterface::getQueryiv); |
| 94 | fFunctions.fGetQueryObjecti64v = bind_to_member(this, &GrGLTestInterface::getQueryObjecti64v); |
| 95 | fFunctions.fGetQueryObjectiv = bind_to_member(this, &GrGLTestInterface::getQueryObjectiv); |
| 96 | fFunctions.fGetQueryObjectui64v = bind_to_member(this, &GrGLTestInterface::getQueryObjectui64v); |
| 97 | fFunctions.fGetQueryObjectuiv = bind_to_member(this, &GrGLTestInterface::getQueryObjectuiv); |
| 98 | fFunctions.fGetRenderbufferParameteriv = bind_to_member(this, &GrGLTestInterface::getRenderbufferParameteriv); |
| 99 | fFunctions.fGetShaderInfoLog = bind_to_member(this, &GrGLTestInterface::getShaderInfoLog); |
| 100 | fFunctions.fGetShaderiv = bind_to_member(this, &GrGLTestInterface::getShaderiv); |
| 101 | fFunctions.fGetShaderPrecisionFormat = bind_to_member(this, &GrGLTestInterface::getShaderPrecisionFormat); |
| 102 | fFunctions.fGetString = bind_to_member(this, &GrGLTestInterface::getString); |
| 103 | fFunctions.fGetStringi = bind_to_member(this, &GrGLTestInterface::getStringi); |
| 104 | fFunctions.fGetTexLevelParameteriv = bind_to_member(this, &GrGLTestInterface::getTexLevelParameteriv); |
| 105 | fFunctions.fGetUniformLocation = bind_to_member(this, &GrGLTestInterface::getUniformLocation); |
| 106 | fFunctions.fInsertEventMarker = bind_to_member(this, &GrGLTestInterface::insertEventMarker); |
| 107 | fFunctions.fInvalidateBufferData = bind_to_member(this, &GrGLTestInterface::invalidateBufferData); |
| 108 | fFunctions.fInvalidateBufferSubData = bind_to_member(this, &GrGLTestInterface::invalidateBufferSubData); |
| 109 | fFunctions.fInvalidateFramebuffer = bind_to_member(this, &GrGLTestInterface::invalidateFramebuffer); |
| 110 | fFunctions.fInvalidateSubFramebuffer = bind_to_member(this, &GrGLTestInterface::invalidateSubFramebuffer); |
| 111 | fFunctions.fInvalidateTexImage = bind_to_member(this, &GrGLTestInterface::invalidateTexImage); |
| 112 | fFunctions.fInvalidateTexSubImage = bind_to_member(this, &GrGLTestInterface::invalidateTexSubImage); |
| 113 | fFunctions.fIsTexture = bind_to_member(this, &GrGLTestInterface::isTexture); |
| 114 | fFunctions.fLineWidth = bind_to_member(this, &GrGLTestInterface::lineWidth); |
| 115 | fFunctions.fLinkProgram = bind_to_member(this, &GrGLTestInterface::linkProgram); |
| 116 | fFunctions.fMapBuffer = bind_to_member(this, &GrGLTestInterface::mapBuffer); |
| 117 | fFunctions.fMapBufferRange = bind_to_member(this, &GrGLTestInterface::mapBufferRange); |
| 118 | fFunctions.fMapBufferSubData = bind_to_member(this, &GrGLTestInterface::mapBufferSubData); |
| 119 | fFunctions.fMapTexSubImage2D = bind_to_member(this, &GrGLTestInterface::mapTexSubImage2D); |
ethannicholas | 28ef445 | 2016-03-25 09:26:03 -0700 | [diff] [blame] | 120 | fFunctions.fMinSampleShading = bind_to_member(this, &GrGLTestInterface::minSampleShading); |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 121 | fFunctions.fPixelStorei = bind_to_member(this, &GrGLTestInterface::pixelStorei); |
Jim Van Verth | 609e7cc | 2017-03-30 14:28:08 -0400 | [diff] [blame] | 122 | fFunctions.fPolygonMode = bind_to_member(this, &GrGLTestInterface::polygonMode); |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 123 | fFunctions.fPopGroupMarker = bind_to_member(this, &GrGLTestInterface::popGroupMarker); |
| 124 | fFunctions.fPushGroupMarker = bind_to_member(this, &GrGLTestInterface::pushGroupMarker); |
| 125 | fFunctions.fQueryCounter = bind_to_member(this, &GrGLTestInterface::queryCounter); |
| 126 | fFunctions.fRasterSamples = bind_to_member(this, &GrGLTestInterface::rasterSamples); |
| 127 | fFunctions.fReadBuffer = bind_to_member(this, &GrGLTestInterface::readBuffer); |
| 128 | fFunctions.fReadPixels = bind_to_member(this, &GrGLTestInterface::readPixels); |
| 129 | fFunctions.fRenderbufferStorage = bind_to_member(this, &GrGLTestInterface::renderbufferStorage); |
| 130 | fFunctions.fRenderbufferStorageMultisample = bind_to_member(this, &GrGLTestInterface::renderbufferStorageMultisample); |
| 131 | fFunctions.fResolveMultisampleFramebuffer = bind_to_member(this, &GrGLTestInterface::resolveMultisampleFramebuffer); |
| 132 | fFunctions.fScissor = bind_to_member(this, &GrGLTestInterface::scissor); |
| 133 | fFunctions.fBindUniformLocation = bind_to_member(this, &GrGLTestInterface::bindUniformLocation); |
| 134 | fFunctions.fShaderSource = bind_to_member(this, &GrGLTestInterface::shaderSource); |
| 135 | fFunctions.fStencilFunc = bind_to_member(this, &GrGLTestInterface::stencilFunc); |
| 136 | fFunctions.fStencilFuncSeparate = bind_to_member(this, &GrGLTestInterface::stencilFuncSeparate); |
| 137 | fFunctions.fStencilMask = bind_to_member(this, &GrGLTestInterface::stencilMask); |
| 138 | fFunctions.fStencilMaskSeparate = bind_to_member(this, &GrGLTestInterface::stencilMaskSeparate); |
| 139 | fFunctions.fStencilOp = bind_to_member(this, &GrGLTestInterface::stencilOp); |
| 140 | fFunctions.fStencilOpSeparate = bind_to_member(this, &GrGLTestInterface::stencilOpSeparate); |
| 141 | fFunctions.fTexBuffer = bind_to_member(this, &GrGLTestInterface::texBuffer); |
| 142 | fFunctions.fTexImage2D = bind_to_member(this, &GrGLTestInterface::texImage2D); |
| 143 | fFunctions.fTexParameteri = bind_to_member(this, &GrGLTestInterface::texParameteri); |
| 144 | fFunctions.fTexParameteriv = bind_to_member(this, &GrGLTestInterface::texParameteriv); |
| 145 | fFunctions.fTexStorage2D = bind_to_member(this, &GrGLTestInterface::texStorage2D); |
| 146 | fFunctions.fDiscardFramebuffer = bind_to_member(this, &GrGLTestInterface::discardFramebuffer); |
| 147 | fFunctions.fTexSubImage2D = bind_to_member(this, &GrGLTestInterface::texSubImage2D); |
| 148 | fFunctions.fTextureBarrier = bind_to_member(this, &GrGLTestInterface::textureBarrier); |
| 149 | fFunctions.fUniform1f = bind_to_member(this, &GrGLTestInterface::uniform1f); |
| 150 | fFunctions.fUniform1i = bind_to_member(this, &GrGLTestInterface::uniform1i); |
| 151 | fFunctions.fUniform1fv = bind_to_member(this, &GrGLTestInterface::uniform1fv); |
| 152 | fFunctions.fUniform1iv = bind_to_member(this, &GrGLTestInterface::uniform1iv); |
| 153 | fFunctions.fUniform2f = bind_to_member(this, &GrGLTestInterface::uniform2f); |
| 154 | fFunctions.fUniform2i = bind_to_member(this, &GrGLTestInterface::uniform2i); |
| 155 | fFunctions.fUniform2fv = bind_to_member(this, &GrGLTestInterface::uniform2fv); |
| 156 | fFunctions.fUniform2iv = bind_to_member(this, &GrGLTestInterface::uniform2iv); |
| 157 | fFunctions.fUniform3f = bind_to_member(this, &GrGLTestInterface::uniform3f); |
| 158 | fFunctions.fUniform3i = bind_to_member(this, &GrGLTestInterface::uniform3i); |
| 159 | fFunctions.fUniform3fv = bind_to_member(this, &GrGLTestInterface::uniform3fv); |
| 160 | fFunctions.fUniform3iv = bind_to_member(this, &GrGLTestInterface::uniform3iv); |
| 161 | fFunctions.fUniform4f = bind_to_member(this, &GrGLTestInterface::uniform4f); |
| 162 | fFunctions.fUniform4i = bind_to_member(this, &GrGLTestInterface::uniform4i); |
| 163 | fFunctions.fUniform4fv = bind_to_member(this, &GrGLTestInterface::uniform4fv); |
| 164 | fFunctions.fUniform4iv = bind_to_member(this, &GrGLTestInterface::uniform4iv); |
| 165 | fFunctions.fUniformMatrix2fv = bind_to_member(this, &GrGLTestInterface::uniformMatrix2fv); |
| 166 | fFunctions.fUniformMatrix3fv = bind_to_member(this, &GrGLTestInterface::uniformMatrix3fv); |
| 167 | fFunctions.fUniformMatrix4fv = bind_to_member(this, &GrGLTestInterface::uniformMatrix4fv); |
| 168 | fFunctions.fUnmapBuffer = bind_to_member(this, &GrGLTestInterface::unmapBuffer); |
| 169 | fFunctions.fUnmapBufferSubData = bind_to_member(this, &GrGLTestInterface::unmapBufferSubData); |
| 170 | fFunctions.fUnmapTexSubImage2D = bind_to_member(this, &GrGLTestInterface::unmapTexSubImage2D); |
| 171 | fFunctions.fUseProgram = bind_to_member(this, &GrGLTestInterface::useProgram); |
| 172 | fFunctions.fVertexAttrib1f = bind_to_member(this, &GrGLTestInterface::vertexAttrib1f); |
| 173 | fFunctions.fVertexAttrib2fv = bind_to_member(this, &GrGLTestInterface::vertexAttrib2fv); |
| 174 | fFunctions.fVertexAttrib3fv = bind_to_member(this, &GrGLTestInterface::vertexAttrib3fv); |
| 175 | fFunctions.fVertexAttrib4fv = bind_to_member(this, &GrGLTestInterface::vertexAttrib4fv); |
| 176 | fFunctions.fVertexAttribDivisor = bind_to_member(this, &GrGLTestInterface::vertexAttribDivisor); |
| 177 | fFunctions.fVertexAttribIPointer = bind_to_member(this, &GrGLTestInterface::vertexAttribIPointer); |
| 178 | fFunctions.fVertexAttribPointer = bind_to_member(this, &GrGLTestInterface::vertexAttribPointer); |
| 179 | fFunctions.fViewport = bind_to_member(this, &GrGLTestInterface::viewport); |
| 180 | fFunctions.fMatrixLoadf = bind_to_member(this, &GrGLTestInterface::matrixLoadf); |
| 181 | fFunctions.fMatrixLoadIdentity = bind_to_member(this, &GrGLTestInterface::matrixLoadIdentity); |
| 182 | fFunctions.fPathCommands = bind_to_member(this, &GrGLTestInterface::pathCommands); |
| 183 | fFunctions.fPathParameteri = bind_to_member(this, &GrGLTestInterface::pathParameteri); |
| 184 | fFunctions.fPathParameterf = bind_to_member(this, &GrGLTestInterface::pathParameterf); |
| 185 | fFunctions.fGenPaths = bind_to_member(this, &GrGLTestInterface::genPaths); |
| 186 | fFunctions.fDeletePaths = bind_to_member(this, &GrGLTestInterface::deletePaths); |
| 187 | fFunctions.fIsPath = bind_to_member(this, &GrGLTestInterface::isPath); |
| 188 | fFunctions.fPathStencilFunc = bind_to_member(this, &GrGLTestInterface::pathStencilFunc); |
| 189 | fFunctions.fStencilFillPath = bind_to_member(this, &GrGLTestInterface::stencilFillPath); |
| 190 | fFunctions.fStencilStrokePath = bind_to_member(this, &GrGLTestInterface::stencilStrokePath); |
| 191 | fFunctions.fStencilFillPathInstanced = bind_to_member(this, &GrGLTestInterface::stencilFillPathInstanced); |
| 192 | fFunctions.fStencilStrokePathInstanced = bind_to_member(this, &GrGLTestInterface::stencilStrokePathInstanced); |
| 193 | fFunctions.fCoverFillPath = bind_to_member(this, &GrGLTestInterface::coverFillPath); |
| 194 | fFunctions.fCoverStrokePath = bind_to_member(this, &GrGLTestInterface::coverStrokePath); |
| 195 | fFunctions.fCoverFillPathInstanced = bind_to_member(this, &GrGLTestInterface::coverFillPathInstanced); |
| 196 | fFunctions.fCoverStrokePathInstanced = bind_to_member(this, &GrGLTestInterface::coverStrokePathInstanced); |
| 197 | fFunctions.fStencilThenCoverFillPath = bind_to_member(this, &GrGLTestInterface::stencilThenCoverFillPath); |
| 198 | fFunctions.fStencilThenCoverStrokePath = bind_to_member(this, &GrGLTestInterface::stencilThenCoverStrokePath); |
| 199 | fFunctions.fStencilThenCoverFillPathInstanced = bind_to_member(this, &GrGLTestInterface::stencilThenCoverFillPathInstanced); |
| 200 | fFunctions.fStencilThenCoverStrokePathInstanced = bind_to_member(this, &GrGLTestInterface::stencilThenCoverStrokePathInstanced); |
| 201 | fFunctions.fProgramPathFragmentInputGen = bind_to_member(this, &GrGLTestInterface::programPathFragmentInputGen); |
| 202 | fFunctions.fBindFragmentInputLocation = bind_to_member(this, &GrGLTestInterface::bindFragmentInputLocation); |
| 203 | fFunctions.fGetProgramResourceLocation = bind_to_member(this, &GrGLTestInterface::getProgramResourceLocation); |
| 204 | fFunctions.fCoverageModulation = bind_to_member(this, &GrGLTestInterface::coverageModulation); |
| 205 | fFunctions.fMultiDrawArraysIndirect = bind_to_member(this, &GrGLTestInterface::multiDrawArraysIndirect); |
| 206 | fFunctions.fMultiDrawElementsIndirect = bind_to_member(this, &GrGLTestInterface::multiDrawElementsIndirect); |
| 207 | fFunctions.fGetTextureHandle = bind_to_member(this, &GrGLTestInterface::getTextureHandle); |
| 208 | fFunctions.fGetTextureSamplerHandle = bind_to_member(this, &GrGLTestInterface::getTextureSamplerHandle); |
| 209 | fFunctions.fMakeTextureHandleResident = bind_to_member(this, &GrGLTestInterface::makeTextureHandleResident); |
| 210 | fFunctions.fMakeTextureHandleNonResident = bind_to_member(this, &GrGLTestInterface::makeTextureHandleNonResident); |
| 211 | fFunctions.fGetImageHandle = bind_to_member(this, &GrGLTestInterface::getImageHandle); |
| 212 | fFunctions.fMakeImageHandleResident = bind_to_member(this, &GrGLTestInterface::makeImageHandleResident); |
| 213 | fFunctions.fMakeImageHandleNonResident = bind_to_member(this, &GrGLTestInterface::makeImageHandleNonResident); |
| 214 | fFunctions.fIsTextureHandleResident = bind_to_member(this, &GrGLTestInterface::isTextureHandleResident); |
| 215 | fFunctions.fIsImageHandleResident = bind_to_member(this, &GrGLTestInterface::isImageHandleResident); |
| 216 | fFunctions.fUniformHandleui64 = bind_to_member(this, &GrGLTestInterface::uniformHandleui64); |
| 217 | fFunctions.fUniformHandleui64v = bind_to_member(this, &GrGLTestInterface::uniformHandleui64v); |
| 218 | fFunctions.fProgramUniformHandleui64 = bind_to_member(this, &GrGLTestInterface::programUniformHandleui64); |
| 219 | fFunctions.fProgramUniformHandleui64v = bind_to_member(this, &GrGLTestInterface::programUniformHandleui64v); |
| 220 | fFunctions.fTextureParameteri = bind_to_member(this, &GrGLTestInterface::textureParameteri); |
| 221 | fFunctions.fTextureParameteriv = bind_to_member(this, &GrGLTestInterface::textureParameteriv); |
| 222 | fFunctions.fTextureParameterf = bind_to_member(this, &GrGLTestInterface::textureParameterf); |
| 223 | fFunctions.fTextureParameterfv = bind_to_member(this, &GrGLTestInterface::textureParameterfv); |
| 224 | fFunctions.fTextureImage1D = bind_to_member(this, &GrGLTestInterface::textureImage1D); |
| 225 | fFunctions.fTextureImage2D = bind_to_member(this, &GrGLTestInterface::textureImage2D); |
| 226 | fFunctions.fTextureSubImage1D = bind_to_member(this, &GrGLTestInterface::textureSubImage1D); |
| 227 | fFunctions.fTextureSubImage2D = bind_to_member(this, &GrGLTestInterface::textureSubImage2D); |
| 228 | fFunctions.fCopyTextureImage1D = bind_to_member(this, &GrGLTestInterface::copyTextureImage1D); |
| 229 | fFunctions.fCopyTextureImage2D = bind_to_member(this, &GrGLTestInterface::copyTextureImage2D); |
| 230 | fFunctions.fCopyTextureSubImage1D = bind_to_member(this, &GrGLTestInterface::copyTextureSubImage1D); |
| 231 | fFunctions.fCopyTextureSubImage2D = bind_to_member(this, &GrGLTestInterface::copyTextureSubImage2D); |
| 232 | fFunctions.fGetTextureImage = bind_to_member(this, &GrGLTestInterface::getTextureImage); |
| 233 | fFunctions.fGetTextureParameterfv = bind_to_member(this, &GrGLTestInterface::getTextureParameterfv); |
| 234 | fFunctions.fGetTextureParameteriv = bind_to_member(this, &GrGLTestInterface::getTextureParameteriv); |
| 235 | fFunctions.fGetTextureLevelParameterfv = bind_to_member(this, &GrGLTestInterface::getTextureLevelParameterfv); |
| 236 | fFunctions.fGetTextureLevelParameteriv = bind_to_member(this, &GrGLTestInterface::getTextureLevelParameteriv); |
| 237 | fFunctions.fTextureImage3D = bind_to_member(this, &GrGLTestInterface::textureImage3D); |
| 238 | fFunctions.fTextureSubImage3D = bind_to_member(this, &GrGLTestInterface::textureSubImage3D); |
| 239 | fFunctions.fCopyTextureSubImage3D = bind_to_member(this, &GrGLTestInterface::copyTextureSubImage3D); |
| 240 | fFunctions.fCompressedTextureImage3D = bind_to_member(this, &GrGLTestInterface::compressedTextureImage3D); |
| 241 | fFunctions.fCompressedTextureImage2D = bind_to_member(this, &GrGLTestInterface::compressedTextureImage2D); |
| 242 | fFunctions.fCompressedTextureImage1D = bind_to_member(this, &GrGLTestInterface::compressedTextureImage1D); |
| 243 | fFunctions.fCompressedTextureSubImage3D = bind_to_member(this, &GrGLTestInterface::compressedTextureSubImage3D); |
| 244 | fFunctions.fCompressedTextureSubImage2D = bind_to_member(this, &GrGLTestInterface::compressedTextureSubImage2D); |
| 245 | fFunctions.fCompressedTextureSubImage1D = bind_to_member(this, &GrGLTestInterface::compressedTextureSubImage1D); |
| 246 | fFunctions.fGetCompressedTextureImage = bind_to_member(this, &GrGLTestInterface::getCompressedTextureImage); |
| 247 | fFunctions.fNamedBufferData = bind_to_member(this, &GrGLTestInterface::namedBufferData); |
| 248 | fFunctions.fNamedBufferSubData = bind_to_member(this, &GrGLTestInterface::namedBufferSubData); |
| 249 | fFunctions.fMapNamedBuffer = bind_to_member(this, &GrGLTestInterface::mapNamedBuffer); |
| 250 | fFunctions.fUnmapNamedBuffer = bind_to_member(this, &GrGLTestInterface::unmapNamedBuffer); |
| 251 | fFunctions.fGetNamedBufferParameteriv = bind_to_member(this, &GrGLTestInterface::getNamedBufferParameteriv); |
| 252 | fFunctions.fGetNamedBufferPointerv = bind_to_member(this, &GrGLTestInterface::getNamedBufferPointerv); |
| 253 | fFunctions.fGetNamedBufferSubData = bind_to_member(this, &GrGLTestInterface::getNamedBufferSubData); |
| 254 | fFunctions.fProgramUniform1f = bind_to_member(this, &GrGLTestInterface::programUniform1f); |
| 255 | fFunctions.fProgramUniform2f = bind_to_member(this, &GrGLTestInterface::programUniform2f); |
| 256 | fFunctions.fProgramUniform3f = bind_to_member(this, &GrGLTestInterface::programUniform3f); |
| 257 | fFunctions.fProgramUniform4f = bind_to_member(this, &GrGLTestInterface::programUniform4f); |
| 258 | fFunctions.fProgramUniform1i = bind_to_member(this, &GrGLTestInterface::programUniform1i); |
| 259 | fFunctions.fProgramUniform2i = bind_to_member(this, &GrGLTestInterface::programUniform2i); |
| 260 | fFunctions.fProgramUniform3i = bind_to_member(this, &GrGLTestInterface::programUniform3i); |
| 261 | fFunctions.fProgramUniform4i = bind_to_member(this, &GrGLTestInterface::programUniform4i); |
| 262 | fFunctions.fProgramUniform1fv = bind_to_member(this, &GrGLTestInterface::programUniform1fv); |
| 263 | fFunctions.fProgramUniform2fv = bind_to_member(this, &GrGLTestInterface::programUniform2fv); |
| 264 | fFunctions.fProgramUniform3fv = bind_to_member(this, &GrGLTestInterface::programUniform3fv); |
| 265 | fFunctions.fProgramUniform4fv = bind_to_member(this, &GrGLTestInterface::programUniform4fv); |
| 266 | fFunctions.fProgramUniform1iv = bind_to_member(this, &GrGLTestInterface::programUniform1iv); |
| 267 | fFunctions.fProgramUniform2iv = bind_to_member(this, &GrGLTestInterface::programUniform2iv); |
| 268 | fFunctions.fProgramUniform3iv = bind_to_member(this, &GrGLTestInterface::programUniform3iv); |
| 269 | fFunctions.fProgramUniform4iv = bind_to_member(this, &GrGLTestInterface::programUniform4iv); |
| 270 | fFunctions.fProgramUniformMatrix2fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix2fv); |
| 271 | fFunctions.fProgramUniformMatrix3fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix3fv); |
| 272 | fFunctions.fProgramUniformMatrix4fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix4fv); |
| 273 | fFunctions.fProgramUniformMatrix2x3fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix2x3fv); |
| 274 | fFunctions.fProgramUniformMatrix3x2fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix3x2fv); |
| 275 | fFunctions.fProgramUniformMatrix2x4fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix2x4fv); |
| 276 | fFunctions.fProgramUniformMatrix4x2fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix4x2fv); |
| 277 | fFunctions.fProgramUniformMatrix3x4fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix3x4fv); |
| 278 | fFunctions.fProgramUniformMatrix4x3fv = bind_to_member(this, &GrGLTestInterface::programUniformMatrix4x3fv); |
| 279 | fFunctions.fNamedRenderbufferStorage = bind_to_member(this, &GrGLTestInterface::namedRenderbufferStorage); |
| 280 | fFunctions.fGetNamedRenderbufferParameteriv = bind_to_member(this, &GrGLTestInterface::getNamedRenderbufferParameteriv); |
| 281 | fFunctions.fNamedRenderbufferStorageMultisample = bind_to_member(this, &GrGLTestInterface::namedRenderbufferStorageMultisample); |
| 282 | fFunctions.fCheckNamedFramebufferStatus = bind_to_member(this, &GrGLTestInterface::checkNamedFramebufferStatus); |
| 283 | fFunctions.fNamedFramebufferTexture1D = bind_to_member(this, &GrGLTestInterface::namedFramebufferTexture1D); |
| 284 | fFunctions.fNamedFramebufferTexture2D = bind_to_member(this, &GrGLTestInterface::namedFramebufferTexture2D); |
| 285 | fFunctions.fNamedFramebufferTexture3D = bind_to_member(this, &GrGLTestInterface::namedFramebufferTexture3D); |
| 286 | fFunctions.fNamedFramebufferRenderbuffer = bind_to_member(this, &GrGLTestInterface::namedFramebufferRenderbuffer); |
| 287 | fFunctions.fGetNamedFramebufferAttachmentParameteriv = bind_to_member(this, &GrGLTestInterface::getNamedFramebufferAttachmentParameteriv); |
| 288 | fFunctions.fGenerateTextureMipmap = bind_to_member(this, &GrGLTestInterface::generateTextureMipmap); |
| 289 | fFunctions.fFramebufferDrawBuffer = bind_to_member(this, &GrGLTestInterface::framebufferDrawBuffer); |
| 290 | fFunctions.fFramebufferDrawBuffers = bind_to_member(this, &GrGLTestInterface::framebufferDrawBuffers); |
| 291 | fFunctions.fFramebufferReadBuffer = bind_to_member(this, &GrGLTestInterface::framebufferReadBuffer); |
| 292 | fFunctions.fGetFramebufferParameteriv = bind_to_member(this, &GrGLTestInterface::getFramebufferParameteriv); |
| 293 | fFunctions.fNamedCopyBufferSubData = bind_to_member(this, &GrGLTestInterface::namedCopyBufferSubData); |
| 294 | fFunctions.fVertexArrayVertexOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayVertexOffset); |
| 295 | fFunctions.fVertexArrayColorOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayColorOffset); |
| 296 | fFunctions.fVertexArrayEdgeFlagOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayEdgeFlagOffset); |
| 297 | fFunctions.fVertexArrayIndexOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayIndexOffset); |
| 298 | fFunctions.fVertexArrayNormalOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayNormalOffset); |
| 299 | fFunctions.fVertexArrayTexCoordOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayTexCoordOffset); |
| 300 | fFunctions.fVertexArrayMultiTexCoordOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayMultiTexCoordOffset); |
| 301 | fFunctions.fVertexArrayFogCoordOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayFogCoordOffset); |
| 302 | fFunctions.fVertexArraySecondaryColorOffset = bind_to_member(this, &GrGLTestInterface::vertexArraySecondaryColorOffset); |
| 303 | fFunctions.fVertexArrayVertexAttribOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayVertexAttribOffset); |
| 304 | fFunctions.fVertexArrayVertexAttribIOffset = bind_to_member(this, &GrGLTestInterface::vertexArrayVertexAttribIOffset); |
| 305 | fFunctions.fEnableVertexArray = bind_to_member(this, &GrGLTestInterface::enableVertexArray); |
| 306 | fFunctions.fDisableVertexArray = bind_to_member(this, &GrGLTestInterface::disableVertexArray); |
| 307 | fFunctions.fEnableVertexArrayAttrib = bind_to_member(this, &GrGLTestInterface::enableVertexArrayAttrib); |
| 308 | fFunctions.fDisableVertexArrayAttrib = bind_to_member(this, &GrGLTestInterface::disableVertexArrayAttrib); |
| 309 | fFunctions.fGetVertexArrayIntegerv = bind_to_member(this, &GrGLTestInterface::getVertexArrayIntegerv); |
| 310 | fFunctions.fGetVertexArrayPointerv = bind_to_member(this, &GrGLTestInterface::getVertexArrayPointerv); |
| 311 | fFunctions.fGetVertexArrayIntegeri_v = bind_to_member(this, &GrGLTestInterface::getVertexArrayIntegeri_v); |
| 312 | fFunctions.fGetVertexArrayPointeri_v = bind_to_member(this, &GrGLTestInterface::getVertexArrayPointeri_v); |
| 313 | fFunctions.fMapNamedBufferRange = bind_to_member(this, &GrGLTestInterface::mapNamedBufferRange); |
| 314 | fFunctions.fFlushMappedNamedBufferRange = bind_to_member(this, &GrGLTestInterface::flushMappedNamedBufferRange); |
| 315 | fFunctions.fTextureBuffer = bind_to_member(this, &GrGLTestInterface::textureBuffer); |
jvanverth | 84741b3 | 2016-09-30 08:39:02 -0700 | [diff] [blame] | 316 | fFunctions.fFenceSync = bind_to_member(this, &GrGLTestInterface::fenceSync); |
Greg Daniel | dba7e7c | 2017-07-20 15:47:30 -0400 | [diff] [blame] | 317 | fFunctions.fIsSync = bind_to_member(this, &GrGLTestInterface::isSync); |
jvanverth | 84741b3 | 2016-09-30 08:39:02 -0700 | [diff] [blame] | 318 | fFunctions.fClientWaitSync = bind_to_member(this, &GrGLTestInterface::clientWaitSync); |
Greg Daniel | 6be3523 | 2017-03-01 17:01:09 -0500 | [diff] [blame] | 319 | fFunctions.fWaitSync = bind_to_member(this, &GrGLTestInterface::waitSync); |
jvanverth | 84741b3 | 2016-09-30 08:39:02 -0700 | [diff] [blame] | 320 | fFunctions.fDeleteSync = bind_to_member(this, &GrGLTestInterface::deleteSync); |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 321 | fFunctions.fDebugMessageControl = bind_to_member(this, &GrGLTestInterface::debugMessageControl); |
| 322 | fFunctions.fDebugMessageInsert = bind_to_member(this, &GrGLTestInterface::debugMessageInsert); |
| 323 | fFunctions.fDebugMessageCallback = bind_to_member(this, &GrGLTestInterface::debugMessageCallback); |
| 324 | fFunctions.fGetDebugMessageLog = bind_to_member(this, &GrGLTestInterface::getDebugMessageLog); |
| 325 | fFunctions.fPushDebugGroup = bind_to_member(this, &GrGLTestInterface::pushDebugGroup); |
| 326 | fFunctions.fPopDebugGroup = bind_to_member(this, &GrGLTestInterface::popDebugGroup); |
| 327 | fFunctions.fObjectLabel = bind_to_member(this, &GrGLTestInterface::objectLabel); |
Greg Daniel | 81e7bf8 | 2017-07-19 14:47:42 -0400 | [diff] [blame] | 328 | fFunctions.fGetInternalformativ = bind_to_member(this, &GrGLTestInterface::getInternalformativ); |
bsalomon | b5a94e3 | 2016-03-18 12:07:24 -0700 | [diff] [blame] | 329 | } |