OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file is auto-generated from | 5 // This file is auto-generated from |
6 // gpu/command_buffer/build_gles2_cmd_buffer.py | 6 // gpu/command_buffer/build_gles2_cmd_buffer.py |
7 // It's formatted by clang-format using chromium coding style: | 7 // It's formatted by clang-format using chromium coding style: |
8 // clang-format -i -style=chromium filename | 8 // clang-format -i -style=chromium filename |
9 // DO NOT EDIT! | 9 // DO NOT EDIT! |
10 | 10 |
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 (void)c; | 377 (void)c; |
378 error::Error error; | 378 error::Error error; |
379 error = WillAccessBoundFramebufferForDraw(); | 379 error = WillAccessBoundFramebufferForDraw(); |
380 if (error != error::kNoError) | 380 if (error != error::kNoError) |
381 return error; | 381 return error; |
382 GLbitfield mask = static_cast<GLbitfield>(c.mask); | 382 GLbitfield mask = static_cast<GLbitfield>(c.mask); |
383 DoClear(mask); | 383 DoClear(mask); |
384 return error::kNoError; | 384 return error::kNoError; |
385 } | 385 } |
386 | 386 |
| 387 error::Error GLES2DecoderImpl::HandleClearBufferfi(uint32_t immediate_data_size, |
| 388 const void* cmd_data) { |
| 389 if (!unsafe_es3_apis_enabled()) |
| 390 return error::kUnknownCommand; |
| 391 const gles2::cmds::ClearBufferfi& c = |
| 392 *static_cast<const gles2::cmds::ClearBufferfi*>(cmd_data); |
| 393 (void)c; |
| 394 GLenum buffer = static_cast<GLenum>(c.buffer); |
| 395 GLint drawbuffers = static_cast<GLint>(c.drawbuffers); |
| 396 GLfloat depth = static_cast<GLfloat>(c.depth); |
| 397 GLint stencil = static_cast<GLint>(c.stencil); |
| 398 glClearBufferfi(buffer, drawbuffers, depth, stencil); |
| 399 return error::kNoError; |
| 400 } |
| 401 |
| 402 error::Error GLES2DecoderImpl::HandleClearBufferfvImmediate( |
| 403 uint32_t immediate_data_size, |
| 404 const void* cmd_data) { |
| 405 if (!unsafe_es3_apis_enabled()) |
| 406 return error::kUnknownCommand; |
| 407 const gles2::cmds::ClearBufferfvImmediate& c = |
| 408 *static_cast<const gles2::cmds::ClearBufferfvImmediate*>(cmd_data); |
| 409 (void)c; |
| 410 GLenum buffer = static_cast<GLenum>(c.buffer); |
| 411 GLint drawbuffers = static_cast<GLint>(c.drawbuffers); |
| 412 uint32_t data_size; |
| 413 if (!ComputeDataSize(1, sizeof(GLfloat), 4, &data_size)) { |
| 414 return error::kOutOfBounds; |
| 415 } |
| 416 if (data_size > immediate_data_size) { |
| 417 return error::kOutOfBounds; |
| 418 } |
| 419 const GLfloat* value = |
| 420 GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size); |
| 421 if (value == NULL) { |
| 422 return error::kOutOfBounds; |
| 423 } |
| 424 glClearBufferfv(buffer, drawbuffers, value); |
| 425 return error::kNoError; |
| 426 } |
| 427 |
| 428 error::Error GLES2DecoderImpl::HandleClearBufferivImmediate( |
| 429 uint32_t immediate_data_size, |
| 430 const void* cmd_data) { |
| 431 if (!unsafe_es3_apis_enabled()) |
| 432 return error::kUnknownCommand; |
| 433 const gles2::cmds::ClearBufferivImmediate& c = |
| 434 *static_cast<const gles2::cmds::ClearBufferivImmediate*>(cmd_data); |
| 435 (void)c; |
| 436 GLenum buffer = static_cast<GLenum>(c.buffer); |
| 437 GLint drawbuffers = static_cast<GLint>(c.drawbuffers); |
| 438 uint32_t data_size; |
| 439 if (!ComputeDataSize(1, sizeof(GLint), 4, &data_size)) { |
| 440 return error::kOutOfBounds; |
| 441 } |
| 442 if (data_size > immediate_data_size) { |
| 443 return error::kOutOfBounds; |
| 444 } |
| 445 const GLint* value = |
| 446 GetImmediateDataAs<const GLint*>(c, data_size, immediate_data_size); |
| 447 if (value == NULL) { |
| 448 return error::kOutOfBounds; |
| 449 } |
| 450 glClearBufferiv(buffer, drawbuffers, value); |
| 451 return error::kNoError; |
| 452 } |
| 453 |
| 454 error::Error GLES2DecoderImpl::HandleClearBufferuivImmediate( |
| 455 uint32_t immediate_data_size, |
| 456 const void* cmd_data) { |
| 457 if (!unsafe_es3_apis_enabled()) |
| 458 return error::kUnknownCommand; |
| 459 const gles2::cmds::ClearBufferuivImmediate& c = |
| 460 *static_cast<const gles2::cmds::ClearBufferuivImmediate*>(cmd_data); |
| 461 (void)c; |
| 462 GLenum buffer = static_cast<GLenum>(c.buffer); |
| 463 GLint drawbuffers = static_cast<GLint>(c.drawbuffers); |
| 464 uint32_t data_size; |
| 465 if (!ComputeDataSize(1, sizeof(GLuint), 4, &data_size)) { |
| 466 return error::kOutOfBounds; |
| 467 } |
| 468 if (data_size > immediate_data_size) { |
| 469 return error::kOutOfBounds; |
| 470 } |
| 471 const GLuint* value = |
| 472 GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size); |
| 473 if (value == NULL) { |
| 474 return error::kOutOfBounds; |
| 475 } |
| 476 glClearBufferuiv(buffer, drawbuffers, value); |
| 477 return error::kNoError; |
| 478 } |
| 479 |
387 error::Error GLES2DecoderImpl::HandleClearColor(uint32_t immediate_data_size, | 480 error::Error GLES2DecoderImpl::HandleClearColor(uint32_t immediate_data_size, |
388 const void* cmd_data) { | 481 const void* cmd_data) { |
389 const gles2::cmds::ClearColor& c = | 482 const gles2::cmds::ClearColor& c = |
390 *static_cast<const gles2::cmds::ClearColor*>(cmd_data); | 483 *static_cast<const gles2::cmds::ClearColor*>(cmd_data); |
391 (void)c; | 484 (void)c; |
392 GLclampf red = static_cast<GLclampf>(c.red); | 485 GLclampf red = static_cast<GLclampf>(c.red); |
393 GLclampf green = static_cast<GLclampf>(c.green); | 486 GLclampf green = static_cast<GLclampf>(c.green); |
394 GLclampf blue = static_cast<GLclampf>(c.blue); | 487 GLclampf blue = static_cast<GLclampf>(c.blue); |
395 GLclampf alpha = static_cast<GLclampf>(c.alpha); | 488 GLclampf alpha = static_cast<GLclampf>(c.alpha); |
396 if (state_.color_clear_red != red || state_.color_clear_green != green || | 489 if (state_.color_clear_red != red || state_.color_clear_green != green || |
(...skipping 4216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4613 state_.ignore_cached_state) { | 4706 state_.ignore_cached_state) { |
4614 framebuffer_state_.clear_state_dirty = true; | 4707 framebuffer_state_.clear_state_dirty = true; |
4615 } | 4708 } |
4616 return false; | 4709 return false; |
4617 default: | 4710 default: |
4618 NOTREACHED(); | 4711 NOTREACHED(); |
4619 return false; | 4712 return false; |
4620 } | 4713 } |
4621 } | 4714 } |
4622 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ | 4715 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ |
OLD | NEW |