1 /* 2 ** Copyright 2011, The Android Open Source Project 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 // auto generated by generate_caller_cpp.py 18 // implement declarations in caller.h 19 20 #include "header.h" 21 22 namespace android { 23 24 static const int * GenerateCall_glCompressedTexImage2D(DbgContext * const dbg, 25 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 26 static const int * GenerateCall_glCompressedTexSubImage2D(DbgContext * const dbg, 27 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 28 static const int * GenerateCall_glDrawElements(DbgContext * const dbg, 29 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 30 static const int * GenerateCall_glGenBuffers(DbgContext * const dbg, 31 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 32 static const int * GenerateCall_glGenFramebuffers(DbgContext * const dbg, 33 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 34 static const int * GenerateCall_glGenRenderbuffers(DbgContext * const dbg, 35 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 36 static const int * GenerateCall_glGenTextures(DbgContext * const dbg, 37 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 38 static const int * GenerateCall_glGetActiveAttrib(DbgContext * const dbg, 39 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 40 static const int * GenerateCall_glGetActiveUniform(DbgContext * const dbg, 41 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 42 static const int * GenerateCall_glGetAttachedShaders(DbgContext * const dbg, 43 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 44 static const int * GenerateCall_glGetBooleanv(DbgContext * const dbg, 45 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 46 static const int * GenerateCall_glGetBufferParameteriv(DbgContext * const dbg, 47 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 48 static const int * GenerateCall_glGetFloatv(DbgContext * const dbg, 49 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 50 static const int * GenerateCall_glGetFramebufferAttachmentParameteriv(DbgContext * const dbg, 51 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 52 static const int * GenerateCall_glGetIntegerv(DbgContext * const dbg, 53 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 54 static const int * GenerateCall_glGetProgramiv(DbgContext * const dbg, 55 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 56 static const int * GenerateCall_glGetProgramInfoLog(DbgContext * const dbg, 57 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 58 static const int * GenerateCall_glGetRenderbufferParameteriv(DbgContext * const dbg, 59 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 60 static const int * GenerateCall_glGetShaderiv(DbgContext * const dbg, 61 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 62 static const int * GenerateCall_glGetShaderInfoLog(DbgContext * const dbg, 63 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 64 static const int * GenerateCall_glGetShaderPrecisionFormat(DbgContext * const dbg, 65 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 66 static const int * GenerateCall_glGetShaderSource(DbgContext * const dbg, 67 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 68 static const int * GenerateCall_glGetString(DbgContext * const dbg, 69 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 70 static const int * GenerateCall_glGetTexParameterfv(DbgContext * const dbg, 71 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 72 static const int * GenerateCall_glGetTexParameteriv(DbgContext * const dbg, 73 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 74 static const int * GenerateCall_glGetUniformfv(DbgContext * const dbg, 75 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 76 static const int * GenerateCall_glGetUniformiv(DbgContext * const dbg, 77 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 78 static const int * GenerateCall_glGetVertexAttribfv(DbgContext * const dbg, 79 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 80 static const int * GenerateCall_glGetVertexAttribiv(DbgContext * const dbg, 81 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 82 static const int * GenerateCall_glGetVertexAttribPointerv(DbgContext * const dbg, 83 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 84 static const int * GenerateCall_glReadPixels(DbgContext * const dbg, 85 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 86 static const int * GenerateCall_glShaderBinary(DbgContext * const dbg, 87 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 88 static const int * GenerateCall_glShaderSource(DbgContext * const dbg, 89 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 90 static const int * GenerateCall_glTexImage2D(DbgContext * const dbg, 91 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 92 static const int * GenerateCall_glTexParameterfv(DbgContext * const dbg, 93 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 94 static const int * GenerateCall_glTexParameteriv(DbgContext * const dbg, 95 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 96 static const int * GenerateCall_glTexSubImage2D(DbgContext * const dbg, 97 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 98 static const int * GenerateCall_glVertexAttribPointer(DbgContext * const dbg, 99 const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); 100 101 #include "caller.h" 102 103 const int * GenerateCall(DbgContext * const dbg, const glesv2debugger::Message & cmd, 104 glesv2debugger::Message & msg, const int * const prevRet) 105 { 106 LOGD("GenerateCall function=%u", cmd.function()); 107 const int * ret = prevRet; // only some functions have return value 108 nsecs_t c0 = systemTime(timeMode); 109 switch (cmd.function()) { case glesv2debugger::Message_Function_glActiveTexture: 110 dbg->hooks->gl.glActiveTexture( 111 static_cast<GLenum>(cmd.arg0())); 112 break; 113 case glesv2debugger::Message_Function_glAttachShader: 114 dbg->hooks->gl.glAttachShader( 115 static_cast<GLuint>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 116 ); 117 break; 118 case glesv2debugger::Message_Function_glBindAttribLocation: 119 dbg->hooks->gl.glBindAttribLocation( 120 static_cast<GLuint>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()), 121 reinterpret_cast<GLchar*>(const_cast<char *>(cmd.data().data())) 122 ); 123 break; 124 case glesv2debugger::Message_Function_glBindBuffer: 125 dbg->hooks->gl.glBindBuffer( 126 static_cast<GLenum>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 127 ); 128 break; 129 case glesv2debugger::Message_Function_glBindFramebuffer: 130 dbg->hooks->gl.glBindFramebuffer( 131 static_cast<GLenum>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 132 ); 133 break; 134 case glesv2debugger::Message_Function_glBindRenderbuffer: 135 dbg->hooks->gl.glBindRenderbuffer( 136 static_cast<GLenum>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 137 ); 138 break; 139 case glesv2debugger::Message_Function_glBindTexture: 140 dbg->hooks->gl.glBindTexture( 141 static_cast<GLenum>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 142 ); 143 break; 144 case glesv2debugger::Message_Function_glBlendColor: 145 dbg->hooks->gl.glBlendColor( 146 static_cast<GLclampf>(cmd.arg0()), static_cast<GLclampf>(cmd.arg1()), 147 static_cast<GLclampf>(cmd.arg2()), static_cast<GLclampf>(cmd.arg3()) 148 ); 149 break; 150 case glesv2debugger::Message_Function_glBlendEquation: 151 dbg->hooks->gl.glBlendEquation( 152 static_cast<GLenum>(cmd.arg0())); 153 break; 154 case glesv2debugger::Message_Function_glBlendEquationSeparate: 155 dbg->hooks->gl.glBlendEquationSeparate( 156 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()) 157 ); 158 break; 159 case glesv2debugger::Message_Function_glBlendFunc: 160 dbg->hooks->gl.glBlendFunc( 161 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()) 162 ); 163 break; 164 case glesv2debugger::Message_Function_glBlendFuncSeparate: 165 dbg->hooks->gl.glBlendFuncSeparate( 166 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 167 static_cast<GLenum>(cmd.arg2()), static_cast<GLenum>(cmd.arg3()) 168 ); 169 break; 170 case glesv2debugger::Message_Function_glBufferData: 171 dbg->hooks->gl.glBufferData( 172 static_cast<GLenum>(cmd.arg0()), static_cast<GLsizeiptr>(cmd.arg1()), 173 reinterpret_cast<GLvoid*>(const_cast<char *>(cmd.data().data())), 174 static_cast<GLenum>(cmd.arg3())); 175 break; 176 case glesv2debugger::Message_Function_glBufferSubData: 177 dbg->hooks->gl.glBufferSubData( 178 static_cast<GLenum>(cmd.arg0()), static_cast<GLintptr>(cmd.arg1()), 179 static_cast<GLsizeiptr>(cmd.arg2()), reinterpret_cast<GLvoid*>(const_cast<char *>(cmd.data().data())) 180 ); 181 break; 182 case glesv2debugger::Message_Function_glCheckFramebufferStatus: 183 msg.set_ret(static_cast<int>(dbg->hooks->gl.glCheckFramebufferStatus( 184 static_cast<GLenum>(cmd.arg0())))); 185 if (cmd.has_ret()) 186 ret = reinterpret_cast<int *>(msg.ret()); 187 break; 188 case glesv2debugger::Message_Function_glClear: 189 dbg->hooks->gl.glClear( 190 static_cast<GLbitfield>(cmd.arg0())); 191 break; 192 case glesv2debugger::Message_Function_glClearColor: 193 dbg->hooks->gl.glClearColor( 194 static_cast<GLclampf>(cmd.arg0()), static_cast<GLclampf>(cmd.arg1()), 195 static_cast<GLclampf>(cmd.arg2()), static_cast<GLclampf>(cmd.arg3()) 196 ); 197 break; 198 case glesv2debugger::Message_Function_glClearDepthf: 199 dbg->hooks->gl.glClearDepthf( 200 static_cast<GLclampf>(cmd.arg0())); 201 break; 202 case glesv2debugger::Message_Function_glClearStencil: 203 dbg->hooks->gl.glClearStencil( 204 static_cast<GLint>(cmd.arg0())); 205 break; 206 case glesv2debugger::Message_Function_glColorMask: 207 dbg->hooks->gl.glColorMask( 208 GLboolean(cmd.arg0()), GLboolean(cmd.arg1()), GLboolean(cmd.arg2()), 209 GLboolean(cmd.arg3())); 210 break; 211 case glesv2debugger::Message_Function_glCompileShader: 212 dbg->hooks->gl.glCompileShader( 213 static_cast<GLuint>(cmd.arg0())); 214 break; 215 case glesv2debugger::Message_Function_glCompressedTexImage2D: 216 ret = GenerateCall_glCompressedTexImage2D(dbg, cmd, msg, prevRet); 217 break; 218 case glesv2debugger::Message_Function_glCompressedTexSubImage2D: 219 ret = GenerateCall_glCompressedTexSubImage2D(dbg, cmd, msg, prevRet); 220 break; 221 case glesv2debugger::Message_Function_glCopyTexImage2D: 222 dbg->hooks->gl.glCopyTexImage2D( 223 static_cast<GLenum>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 224 static_cast<GLenum>(cmd.arg2()), static_cast<GLint>(cmd.arg3()), 225 static_cast<GLint>(cmd.arg4()), static_cast<GLsizei>(cmd.arg5()), 226 static_cast<GLsizei>(cmd.arg6()), static_cast<GLint>(cmd.arg7()) 227 ); 228 break; 229 case glesv2debugger::Message_Function_glCopyTexSubImage2D: 230 dbg->hooks->gl.glCopyTexSubImage2D( 231 static_cast<GLenum>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 232 static_cast<GLint>(cmd.arg2()), static_cast<GLint>(cmd.arg3()), 233 static_cast<GLint>(cmd.arg4()), static_cast<GLint>(cmd.arg5()), 234 static_cast<GLsizei>(cmd.arg6()), static_cast<GLsizei>(cmd.arg7()) 235 ); 236 break; 237 case glesv2debugger::Message_Function_glCreateProgram: 238 msg.set_ret(static_cast<int>(dbg->hooks->gl.glCreateProgram( 239 ))); 240 if (cmd.has_ret()) 241 ret = reinterpret_cast<int *>(msg.ret()); 242 break; 243 case glesv2debugger::Message_Function_glCreateShader: 244 msg.set_ret(static_cast<int>(dbg->hooks->gl.glCreateShader( 245 static_cast<GLenum>(cmd.arg0())))); 246 if (cmd.has_ret()) 247 ret = reinterpret_cast<int *>(msg.ret()); 248 break; 249 case glesv2debugger::Message_Function_glCullFace: 250 dbg->hooks->gl.glCullFace( 251 static_cast<GLenum>(cmd.arg0())); 252 break; 253 case glesv2debugger::Message_Function_glDeleteBuffers: 254 dbg->hooks->gl.glDeleteBuffers( 255 static_cast<GLsizei>(cmd.arg0()), reinterpret_cast<GLuint*>(const_cast<char *>(cmd.data().data())) 256 ); 257 break; 258 case glesv2debugger::Message_Function_glDeleteFramebuffers: 259 dbg->hooks->gl.glDeleteFramebuffers( 260 static_cast<GLsizei>(cmd.arg0()), reinterpret_cast<GLuint*>(const_cast<char *>(cmd.data().data())) 261 ); 262 break; 263 case glesv2debugger::Message_Function_glDeleteProgram: 264 dbg->hooks->gl.glDeleteProgram( 265 static_cast<GLuint>(cmd.arg0())); 266 break; 267 case glesv2debugger::Message_Function_glDeleteRenderbuffers: 268 dbg->hooks->gl.glDeleteRenderbuffers( 269 static_cast<GLsizei>(cmd.arg0()), reinterpret_cast<GLuint*>(const_cast<char *>(cmd.data().data())) 270 ); 271 break; 272 case glesv2debugger::Message_Function_glDeleteShader: 273 dbg->hooks->gl.glDeleteShader( 274 static_cast<GLuint>(cmd.arg0())); 275 break; 276 case glesv2debugger::Message_Function_glDeleteTextures: 277 dbg->hooks->gl.glDeleteTextures( 278 static_cast<GLsizei>(cmd.arg0()), reinterpret_cast<GLuint*>(const_cast<char *>(cmd.data().data())) 279 ); 280 break; 281 case glesv2debugger::Message_Function_glDepthFunc: 282 dbg->hooks->gl.glDepthFunc( 283 static_cast<GLenum>(cmd.arg0())); 284 break; 285 case glesv2debugger::Message_Function_glDepthMask: 286 dbg->hooks->gl.glDepthMask( 287 GLboolean(cmd.arg0())); 288 break; 289 case glesv2debugger::Message_Function_glDepthRangef: 290 dbg->hooks->gl.glDepthRangef( 291 static_cast<GLclampf>(cmd.arg0()), static_cast<GLclampf>(cmd.arg1()) 292 ); 293 break; 294 case glesv2debugger::Message_Function_glDetachShader: 295 dbg->hooks->gl.glDetachShader( 296 static_cast<GLuint>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 297 ); 298 break; 299 case glesv2debugger::Message_Function_glDisable: 300 dbg->hooks->gl.glDisable( 301 static_cast<GLenum>(cmd.arg0())); 302 break; 303 case glesv2debugger::Message_Function_glDisableVertexAttribArray: 304 dbg->hooks->gl.glDisableVertexAttribArray( 305 static_cast<GLuint>(cmd.arg0())); 306 break; 307 case glesv2debugger::Message_Function_glDrawArrays: 308 dbg->hooks->gl.glDrawArrays( 309 static_cast<GLenum>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 310 static_cast<GLsizei>(cmd.arg2())); 311 break; 312 case glesv2debugger::Message_Function_glDrawElements: 313 ret = GenerateCall_glDrawElements(dbg, cmd, msg, prevRet); 314 break; 315 case glesv2debugger::Message_Function_glEnable: 316 dbg->hooks->gl.glEnable( 317 static_cast<GLenum>(cmd.arg0())); 318 break; 319 case glesv2debugger::Message_Function_glEnableVertexAttribArray: 320 dbg->hooks->gl.glEnableVertexAttribArray( 321 static_cast<GLuint>(cmd.arg0())); 322 break; 323 case glesv2debugger::Message_Function_glFinish: 324 dbg->hooks->gl.glFinish( 325 ); 326 break; 327 case glesv2debugger::Message_Function_glFlush: 328 dbg->hooks->gl.glFlush( 329 ); 330 break; 331 case glesv2debugger::Message_Function_glFramebufferRenderbuffer: 332 dbg->hooks->gl.glFramebufferRenderbuffer( 333 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 334 static_cast<GLenum>(cmd.arg2()), static_cast<GLuint>(cmd.arg3()) 335 ); 336 break; 337 case glesv2debugger::Message_Function_glFramebufferTexture2D: 338 dbg->hooks->gl.glFramebufferTexture2D( 339 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 340 static_cast<GLenum>(cmd.arg2()), static_cast<GLuint>(cmd.arg3()), 341 static_cast<GLint>(cmd.arg4())); 342 break; 343 case glesv2debugger::Message_Function_glFrontFace: 344 dbg->hooks->gl.glFrontFace( 345 static_cast<GLenum>(cmd.arg0())); 346 break; 347 case glesv2debugger::Message_Function_glGenBuffers: 348 ret = GenerateCall_glGenBuffers(dbg, cmd, msg, prevRet); 349 break; // annotated output pointers 350 case glesv2debugger::Message_Function_glGenerateMipmap: 351 dbg->hooks->gl.glGenerateMipmap( 352 static_cast<GLenum>(cmd.arg0())); 353 break; 354 case glesv2debugger::Message_Function_glGenFramebuffers: 355 ret = GenerateCall_glGenFramebuffers(dbg, cmd, msg, prevRet); 356 break; // annotated output pointers 357 case glesv2debugger::Message_Function_glGenRenderbuffers: 358 ret = GenerateCall_glGenRenderbuffers(dbg, cmd, msg, prevRet); 359 break; // annotated output pointers 360 case glesv2debugger::Message_Function_glGenTextures: 361 ret = GenerateCall_glGenTextures(dbg, cmd, msg, prevRet); 362 break; // annotated output pointers 363 case glesv2debugger::Message_Function_glGetActiveAttrib: 364 ret = GenerateCall_glGetActiveAttrib(dbg, cmd, msg, prevRet); 365 break; 366 case glesv2debugger::Message_Function_glGetActiveUniform: 367 ret = GenerateCall_glGetActiveUniform(dbg, cmd, msg, prevRet); 368 break; 369 case glesv2debugger::Message_Function_glGetAttachedShaders: 370 ret = GenerateCall_glGetAttachedShaders(dbg, cmd, msg, prevRet); 371 break; 372 case glesv2debugger::Message_Function_glGetAttribLocation: 373 msg.set_ret(static_cast<int>(dbg->hooks->gl.glGetAttribLocation( 374 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLchar*>(const_cast<char *>(cmd.data().data())) 375 ))); 376 if (cmd.has_ret()) 377 ret = reinterpret_cast<int *>(msg.ret()); 378 break; 379 case glesv2debugger::Message_Function_glGetBooleanv: 380 ret = GenerateCall_glGetBooleanv(dbg, cmd, msg, prevRet); 381 break; 382 case glesv2debugger::Message_Function_glGetBufferParameteriv: 383 ret = GenerateCall_glGetBufferParameteriv(dbg, cmd, msg, prevRet); 384 break; 385 case glesv2debugger::Message_Function_glGetError: 386 msg.set_ret(static_cast<int>(dbg->hooks->gl.glGetError( 387 ))); 388 if (cmd.has_ret()) 389 ret = reinterpret_cast<int *>(msg.ret()); 390 break; 391 case glesv2debugger::Message_Function_glGetFloatv: 392 ret = GenerateCall_glGetFloatv(dbg, cmd, msg, prevRet); 393 break; 394 case glesv2debugger::Message_Function_glGetFramebufferAttachmentParameteriv: 395 ret = GenerateCall_glGetFramebufferAttachmentParameteriv(dbg, cmd, msg, prevRet); 396 break; 397 case glesv2debugger::Message_Function_glGetIntegerv: 398 ret = GenerateCall_glGetIntegerv(dbg, cmd, msg, prevRet); 399 break; 400 case glesv2debugger::Message_Function_glGetProgramiv: 401 ret = GenerateCall_glGetProgramiv(dbg, cmd, msg, prevRet); 402 break; // annotated output pointers 403 case glesv2debugger::Message_Function_glGetProgramInfoLog: 404 ret = GenerateCall_glGetProgramInfoLog(dbg, cmd, msg, prevRet); 405 break; 406 case glesv2debugger::Message_Function_glGetRenderbufferParameteriv: 407 ret = GenerateCall_glGetRenderbufferParameteriv(dbg, cmd, msg, prevRet); 408 break; 409 case glesv2debugger::Message_Function_glGetShaderiv: 410 ret = GenerateCall_glGetShaderiv(dbg, cmd, msg, prevRet); 411 break; // annotated output pointers 412 case glesv2debugger::Message_Function_glGetShaderInfoLog: 413 ret = GenerateCall_glGetShaderInfoLog(dbg, cmd, msg, prevRet); 414 break; 415 case glesv2debugger::Message_Function_glGetShaderPrecisionFormat: 416 ret = GenerateCall_glGetShaderPrecisionFormat(dbg, cmd, msg, prevRet); 417 break; 418 case glesv2debugger::Message_Function_glGetShaderSource: 419 ret = GenerateCall_glGetShaderSource(dbg, cmd, msg, prevRet); 420 break; 421 case glesv2debugger::Message_Function_glGetString: 422 ret = GenerateCall_glGetString(dbg, cmd, msg, prevRet); 423 break; 424 case glesv2debugger::Message_Function_glGetTexParameterfv: 425 ret = GenerateCall_glGetTexParameterfv(dbg, cmd, msg, prevRet); 426 break; 427 case glesv2debugger::Message_Function_glGetTexParameteriv: 428 ret = GenerateCall_glGetTexParameteriv(dbg, cmd, msg, prevRet); 429 break; 430 case glesv2debugger::Message_Function_glGetUniformfv: 431 ret = GenerateCall_glGetUniformfv(dbg, cmd, msg, prevRet); 432 break; 433 case glesv2debugger::Message_Function_glGetUniformiv: 434 ret = GenerateCall_glGetUniformiv(dbg, cmd, msg, prevRet); 435 break; 436 case glesv2debugger::Message_Function_glGetUniformLocation: 437 msg.set_ret(static_cast<int>(dbg->hooks->gl.glGetUniformLocation( 438 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLchar*>(const_cast<char *>(cmd.data().data())) 439 ))); 440 if (cmd.has_ret()) 441 ret = reinterpret_cast<int *>(msg.ret()); 442 break; 443 case glesv2debugger::Message_Function_glGetVertexAttribfv: 444 ret = GenerateCall_glGetVertexAttribfv(dbg, cmd, msg, prevRet); 445 break; 446 case glesv2debugger::Message_Function_glGetVertexAttribiv: 447 ret = GenerateCall_glGetVertexAttribiv(dbg, cmd, msg, prevRet); 448 break; 449 case glesv2debugger::Message_Function_glGetVertexAttribPointerv: 450 ret = GenerateCall_glGetVertexAttribPointerv(dbg, cmd, msg, prevRet); 451 break; 452 case glesv2debugger::Message_Function_glHint: 453 dbg->hooks->gl.glHint( 454 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()) 455 ); 456 break; 457 case glesv2debugger::Message_Function_glIsBuffer: 458 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsBuffer( 459 static_cast<GLuint>(cmd.arg0())))); 460 if (cmd.has_ret()) 461 ret = reinterpret_cast<int *>(msg.ret()); 462 break; 463 case glesv2debugger::Message_Function_glIsEnabled: 464 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsEnabled( 465 static_cast<GLenum>(cmd.arg0())))); 466 if (cmd.has_ret()) 467 ret = reinterpret_cast<int *>(msg.ret()); 468 break; 469 case glesv2debugger::Message_Function_glIsFramebuffer: 470 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsFramebuffer( 471 static_cast<GLuint>(cmd.arg0())))); 472 if (cmd.has_ret()) 473 ret = reinterpret_cast<int *>(msg.ret()); 474 break; 475 case glesv2debugger::Message_Function_glIsProgram: 476 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsProgram( 477 static_cast<GLuint>(cmd.arg0())))); 478 if (cmd.has_ret()) 479 ret = reinterpret_cast<int *>(msg.ret()); 480 break; 481 case glesv2debugger::Message_Function_glIsRenderbuffer: 482 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsRenderbuffer( 483 static_cast<GLuint>(cmd.arg0())))); 484 if (cmd.has_ret()) 485 ret = reinterpret_cast<int *>(msg.ret()); 486 break; 487 case glesv2debugger::Message_Function_glIsShader: 488 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsShader( 489 static_cast<GLuint>(cmd.arg0())))); 490 if (cmd.has_ret()) 491 ret = reinterpret_cast<int *>(msg.ret()); 492 break; 493 case glesv2debugger::Message_Function_glIsTexture: 494 msg.set_ret(static_cast<int>(dbg->hooks->gl.glIsTexture( 495 static_cast<GLuint>(cmd.arg0())))); 496 if (cmd.has_ret()) 497 ret = reinterpret_cast<int *>(msg.ret()); 498 break; 499 case glesv2debugger::Message_Function_glLineWidth: 500 dbg->hooks->gl.glLineWidth( 501 static_cast<GLfloat>(cmd.arg0())); 502 break; 503 case glesv2debugger::Message_Function_glLinkProgram: 504 dbg->hooks->gl.glLinkProgram( 505 static_cast<GLuint>(cmd.arg0())); 506 break; 507 case glesv2debugger::Message_Function_glPixelStorei: 508 dbg->hooks->gl.glPixelStorei( 509 static_cast<GLenum>(cmd.arg0()), static_cast<GLint>(cmd.arg1()) 510 ); 511 break; 512 case glesv2debugger::Message_Function_glPolygonOffset: 513 dbg->hooks->gl.glPolygonOffset( 514 static_cast<GLfloat>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()) 515 ); 516 break; 517 case glesv2debugger::Message_Function_glReadPixels: 518 ret = GenerateCall_glReadPixels(dbg, cmd, msg, prevRet); 519 break; 520 case glesv2debugger::Message_Function_glReleaseShaderCompiler: 521 dbg->hooks->gl.glReleaseShaderCompiler( 522 ); 523 break; 524 case glesv2debugger::Message_Function_glRenderbufferStorage: 525 dbg->hooks->gl.glRenderbufferStorage( 526 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 527 static_cast<GLsizei>(cmd.arg2()), static_cast<GLsizei>(cmd.arg3()) 528 ); 529 break; 530 case glesv2debugger::Message_Function_glSampleCoverage: 531 dbg->hooks->gl.glSampleCoverage( 532 static_cast<GLclampf>(cmd.arg0()), GLboolean(cmd.arg1())); 533 break; 534 case glesv2debugger::Message_Function_glScissor: 535 dbg->hooks->gl.glScissor( 536 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 537 static_cast<GLsizei>(cmd.arg2()), static_cast<GLsizei>(cmd.arg3()) 538 ); 539 break; 540 case glesv2debugger::Message_Function_glShaderBinary: 541 ret = GenerateCall_glShaderBinary(dbg, cmd, msg, prevRet); 542 break; 543 case glesv2debugger::Message_Function_glShaderSource: 544 ret = GenerateCall_glShaderSource(dbg, cmd, msg, prevRet); 545 break; 546 case glesv2debugger::Message_Function_glStencilFunc: 547 dbg->hooks->gl.glStencilFunc( 548 static_cast<GLenum>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 549 static_cast<GLuint>(cmd.arg2())); 550 break; 551 case glesv2debugger::Message_Function_glStencilFuncSeparate: 552 dbg->hooks->gl.glStencilFuncSeparate( 553 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 554 static_cast<GLint>(cmd.arg2()), static_cast<GLuint>(cmd.arg3()) 555 ); 556 break; 557 case glesv2debugger::Message_Function_glStencilMask: 558 dbg->hooks->gl.glStencilMask( 559 static_cast<GLuint>(cmd.arg0())); 560 break; 561 case glesv2debugger::Message_Function_glStencilMaskSeparate: 562 dbg->hooks->gl.glStencilMaskSeparate( 563 static_cast<GLenum>(cmd.arg0()), static_cast<GLuint>(cmd.arg1()) 564 ); 565 break; 566 case glesv2debugger::Message_Function_glStencilOp: 567 dbg->hooks->gl.glStencilOp( 568 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 569 static_cast<GLenum>(cmd.arg2())); 570 break; 571 case glesv2debugger::Message_Function_glStencilOpSeparate: 572 dbg->hooks->gl.glStencilOpSeparate( 573 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 574 static_cast<GLenum>(cmd.arg2()), static_cast<GLenum>(cmd.arg3()) 575 ); 576 break; 577 case glesv2debugger::Message_Function_glTexImage2D: 578 ret = GenerateCall_glTexImage2D(dbg, cmd, msg, prevRet); 579 break; 580 case glesv2debugger::Message_Function_glTexParameterf: 581 dbg->hooks->gl.glTexParameterf( 582 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 583 static_cast<GLfloat>(cmd.arg2())); 584 break; 585 case glesv2debugger::Message_Function_glTexParameterfv: 586 ret = GenerateCall_glTexParameterfv(dbg, cmd, msg, prevRet); 587 break; 588 case glesv2debugger::Message_Function_glTexParameteri: 589 dbg->hooks->gl.glTexParameteri( 590 static_cast<GLenum>(cmd.arg0()), static_cast<GLenum>(cmd.arg1()), 591 static_cast<GLint>(cmd.arg2())); 592 break; 593 case glesv2debugger::Message_Function_glTexParameteriv: 594 ret = GenerateCall_glTexParameteriv(dbg, cmd, msg, prevRet); 595 break; 596 case glesv2debugger::Message_Function_glTexSubImage2D: 597 ret = GenerateCall_glTexSubImage2D(dbg, cmd, msg, prevRet); 598 break; 599 case glesv2debugger::Message_Function_glUniform1f: 600 dbg->hooks->gl.glUniform1f( 601 static_cast<GLint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()) 602 ); 603 break; 604 case glesv2debugger::Message_Function_glUniform1fv: 605 dbg->hooks->gl.glUniform1fv( 606 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 607 reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 608 ); 609 break; 610 case glesv2debugger::Message_Function_glUniform1i: 611 dbg->hooks->gl.glUniform1i( 612 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()) 613 ); 614 break; 615 case glesv2debugger::Message_Function_glUniform1iv: 616 dbg->hooks->gl.glUniform1iv( 617 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 618 reinterpret_cast<GLint*>(const_cast<char *>(cmd.data().data())) 619 ); 620 break; 621 case glesv2debugger::Message_Function_glUniform2f: 622 dbg->hooks->gl.glUniform2f( 623 static_cast<GLint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 624 static_cast<GLfloat>(cmd.arg2())); 625 break; 626 case glesv2debugger::Message_Function_glUniform2fv: 627 dbg->hooks->gl.glUniform2fv( 628 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 629 reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 630 ); 631 break; 632 case glesv2debugger::Message_Function_glUniform2i: 633 dbg->hooks->gl.glUniform2i( 634 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 635 static_cast<GLint>(cmd.arg2())); 636 break; 637 case glesv2debugger::Message_Function_glUniform2iv: 638 dbg->hooks->gl.glUniform2iv( 639 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 640 reinterpret_cast<GLint*>(const_cast<char *>(cmd.data().data())) 641 ); 642 break; 643 case glesv2debugger::Message_Function_glUniform3f: 644 dbg->hooks->gl.glUniform3f( 645 static_cast<GLint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 646 static_cast<GLfloat>(cmd.arg2()), static_cast<GLfloat>(cmd.arg3()) 647 ); 648 break; 649 case glesv2debugger::Message_Function_glUniform3fv: 650 dbg->hooks->gl.glUniform3fv( 651 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 652 reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 653 ); 654 break; 655 case glesv2debugger::Message_Function_glUniform3i: 656 dbg->hooks->gl.glUniform3i( 657 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 658 static_cast<GLint>(cmd.arg2()), static_cast<GLint>(cmd.arg3()) 659 ); 660 break; 661 case glesv2debugger::Message_Function_glUniform3iv: 662 dbg->hooks->gl.glUniform3iv( 663 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 664 reinterpret_cast<GLint*>(const_cast<char *>(cmd.data().data())) 665 ); 666 break; 667 case glesv2debugger::Message_Function_glUniform4f: 668 dbg->hooks->gl.glUniform4f( 669 static_cast<GLint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 670 static_cast<GLfloat>(cmd.arg2()), static_cast<GLfloat>(cmd.arg3()), 671 static_cast<GLfloat>(cmd.arg4())); 672 break; 673 case glesv2debugger::Message_Function_glUniform4fv: 674 dbg->hooks->gl.glUniform4fv( 675 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 676 reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 677 ); 678 break; 679 case glesv2debugger::Message_Function_glUniform4i: 680 dbg->hooks->gl.glUniform4i( 681 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 682 static_cast<GLint>(cmd.arg2()), static_cast<GLint>(cmd.arg3()), 683 static_cast<GLint>(cmd.arg4())); 684 break; 685 case glesv2debugger::Message_Function_glUniform4iv: 686 dbg->hooks->gl.glUniform4iv( 687 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 688 reinterpret_cast<GLint*>(const_cast<char *>(cmd.data().data())) 689 ); 690 break; 691 case glesv2debugger::Message_Function_glUniformMatrix2fv: 692 dbg->hooks->gl.glUniformMatrix2fv( 693 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 694 GLboolean(cmd.arg2()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 695 ); 696 break; 697 case glesv2debugger::Message_Function_glUniformMatrix3fv: 698 dbg->hooks->gl.glUniformMatrix3fv( 699 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 700 GLboolean(cmd.arg2()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 701 ); 702 break; 703 case glesv2debugger::Message_Function_glUniformMatrix4fv: 704 dbg->hooks->gl.glUniformMatrix4fv( 705 static_cast<GLint>(cmd.arg0()), static_cast<GLsizei>(cmd.arg1()), 706 GLboolean(cmd.arg2()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 707 ); 708 break; 709 case glesv2debugger::Message_Function_glUseProgram: 710 dbg->hooks->gl.glUseProgram( 711 static_cast<GLuint>(cmd.arg0())); 712 break; 713 case glesv2debugger::Message_Function_glValidateProgram: 714 dbg->hooks->gl.glValidateProgram( 715 static_cast<GLuint>(cmd.arg0())); 716 break; 717 case glesv2debugger::Message_Function_glVertexAttrib1f: 718 dbg->hooks->gl.glVertexAttrib1f( 719 static_cast<GLuint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()) 720 ); 721 break; 722 case glesv2debugger::Message_Function_glVertexAttrib1fv: 723 dbg->hooks->gl.glVertexAttrib1fv( 724 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 725 ); 726 break; 727 case glesv2debugger::Message_Function_glVertexAttrib2f: 728 dbg->hooks->gl.glVertexAttrib2f( 729 static_cast<GLuint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 730 static_cast<GLfloat>(cmd.arg2())); 731 break; 732 case glesv2debugger::Message_Function_glVertexAttrib2fv: 733 dbg->hooks->gl.glVertexAttrib2fv( 734 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 735 ); 736 break; 737 case glesv2debugger::Message_Function_glVertexAttrib3f: 738 dbg->hooks->gl.glVertexAttrib3f( 739 static_cast<GLuint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 740 static_cast<GLfloat>(cmd.arg2()), static_cast<GLfloat>(cmd.arg3()) 741 ); 742 break; 743 case glesv2debugger::Message_Function_glVertexAttrib3fv: 744 dbg->hooks->gl.glVertexAttrib3fv( 745 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 746 ); 747 break; 748 case glesv2debugger::Message_Function_glVertexAttrib4f: 749 dbg->hooks->gl.glVertexAttrib4f( 750 static_cast<GLuint>(cmd.arg0()), static_cast<GLfloat>(cmd.arg1()), 751 static_cast<GLfloat>(cmd.arg2()), static_cast<GLfloat>(cmd.arg3()), 752 static_cast<GLfloat>(cmd.arg4())); 753 break; 754 case glesv2debugger::Message_Function_glVertexAttrib4fv: 755 dbg->hooks->gl.glVertexAttrib4fv( 756 static_cast<GLuint>(cmd.arg0()), reinterpret_cast<GLfloat*>(const_cast<char *>(cmd.data().data())) 757 ); 758 break; 759 case glesv2debugger::Message_Function_glVertexAttribPointer: 760 ret = GenerateCall_glVertexAttribPointer(dbg, cmd, msg, prevRet); 761 break; 762 case glesv2debugger::Message_Function_glViewport: 763 dbg->hooks->gl.glViewport( 764 static_cast<GLint>(cmd.arg0()), static_cast<GLint>(cmd.arg1()), 765 static_cast<GLsizei>(cmd.arg2()), static_cast<GLsizei>(cmd.arg3()) 766 ); 767 break; 768 default: 769 assert(0); 770 } 771 msg.set_time((systemTime(timeMode) - c0) * 1e-6f); 772 msg.set_context_id(reinterpret_cast<int>(dbg)); 773 msg.set_function(cmd.function()); 774 msg.set_type(glesv2debugger::Message_Type_AfterGeneratedCall); 775 return ret; 776 } 777 778 }; // name space android { 779