| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" | 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" |
| 6 | 6 |
| 7 #include <limits.h> | 7 #include <limits.h> |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 #include <stdio.h> | 10 #include <stdio.h> |
| (...skipping 637 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 648 | 648 |
| 649 void WaitForReadPixels(base::Closure callback) override; | 649 void WaitForReadPixels(base::Closure callback) override; |
| 650 | 650 |
| 651 Logger* GetLogger() override; | 651 Logger* GetLogger() override; |
| 652 | 652 |
| 653 void BeginDecoding() override; | 653 void BeginDecoding() override; |
| 654 void EndDecoding() override; | 654 void EndDecoding() override; |
| 655 | 655 |
| 656 ErrorState* GetErrorState() override; | 656 ErrorState* GetErrorState() override; |
| 657 const ContextState* GetContextState() override { return &state_; } | 657 const ContextState* GetContextState() override { return &state_; } |
| 658 scoped_refptr<ShaderTranslatorInterface> GetTranslator(GLenum type) override; |
| 658 | 659 |
| 659 void SetShaderCacheCallback(const ShaderCacheCallback& callback) override; | 660 void SetShaderCacheCallback(const ShaderCacheCallback& callback) override; |
| 660 void SetFenceSyncReleaseCallback( | 661 void SetFenceSyncReleaseCallback( |
| 661 const FenceSyncReleaseCallback& callback) override; | 662 const FenceSyncReleaseCallback& callback) override; |
| 662 void SetWaitFenceSyncCallback(const WaitFenceSyncCallback& callback) override; | 663 void SetWaitFenceSyncCallback(const WaitFenceSyncCallback& callback) override; |
| 663 | 664 |
| 664 void SetDescheduleUntilFinishedCallback( | 665 void SetDescheduleUntilFinishedCallback( |
| 665 const NoParamCallback& callback) override; | 666 const NoParamCallback& callback) override; |
| 666 void SetRescheduleAfterFinishedCallback( | 667 void SetRescheduleAfterFinishedCallback( |
| 667 const NoParamCallback& callback) override; | 668 const NoParamCallback& callback) override; |
| (...skipping 8648 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9316 GLuint client_program_id, GLsizei count, const char* const* varyings, | 9317 GLuint client_program_id, GLsizei count, const char* const* varyings, |
| 9317 GLenum buffer_mode) { | 9318 GLenum buffer_mode) { |
| 9318 Program* program = GetProgramInfoNotShader( | 9319 Program* program = GetProgramInfoNotShader( |
| 9319 client_program_id, "glTransformFeedbackVaryings"); | 9320 client_program_id, "glTransformFeedbackVaryings"); |
| 9320 if (!program) { | 9321 if (!program) { |
| 9321 return; | 9322 return; |
| 9322 } | 9323 } |
| 9323 program->TransformFeedbackVaryings(count, varyings, buffer_mode); | 9324 program->TransformFeedbackVaryings(count, varyings, buffer_mode); |
| 9324 } | 9325 } |
| 9325 | 9326 |
| 9327 scoped_refptr<ShaderTranslatorInterface> GLES2DecoderImpl::GetTranslator( |
| 9328 GLenum type) { |
| 9329 return type == GL_VERTEX_SHADER ? vertex_translator_ : fragment_translator_; |
| 9330 } |
| 9331 |
| 9326 void GLES2DecoderImpl::DoCompileShader(GLuint client_id) { | 9332 void GLES2DecoderImpl::DoCompileShader(GLuint client_id) { |
| 9327 TRACE_EVENT0("gpu", "GLES2DecoderImpl::DoCompileShader"); | 9333 TRACE_EVENT0("gpu", "GLES2DecoderImpl::DoCompileShader"); |
| 9328 Shader* shader = GetShaderInfoNotProgram(client_id, "glCompileShader"); | 9334 Shader* shader = GetShaderInfoNotProgram(client_id, "glCompileShader"); |
| 9329 if (!shader) { | 9335 if (!shader) { |
| 9330 return; | 9336 return; |
| 9331 } | 9337 } |
| 9332 | 9338 |
| 9333 scoped_refptr<ShaderTranslatorInterface> translator; | 9339 scoped_refptr<ShaderTranslatorInterface> translator; |
| 9334 if (!feature_info_->disable_shader_translator()) { | 9340 if (!feature_info_->disable_shader_translator()) |
| 9335 translator = shader->shader_type() == GL_VERTEX_SHADER ? | 9341 translator = GetTranslator(shader->shader_type()); |
| 9336 vertex_translator_ : fragment_translator_; | |
| 9337 } | |
| 9338 | 9342 |
| 9339 const Shader::TranslatedShaderSourceType source_type = | 9343 const Shader::TranslatedShaderSourceType source_type = |
| 9340 feature_info_->feature_flags().angle_translated_shader_source ? | 9344 feature_info_->feature_flags().angle_translated_shader_source ? |
| 9341 Shader::kANGLE : Shader::kGL; | 9345 Shader::kANGLE : Shader::kGL; |
| 9342 shader->RequestCompile(translator, source_type); | 9346 shader->RequestCompile(translator, source_type); |
| 9343 } | 9347 } |
| 9344 | 9348 |
| 9345 void GLES2DecoderImpl::DoGetShaderiv( | 9349 void GLES2DecoderImpl::DoGetShaderiv( |
| 9346 GLuint shader_id, GLenum pname, GLint* params) { | 9350 GLuint shader_id, GLenum pname, GLint* params) { |
| 9347 Shader* shader = GetShaderInfoNotProgram(shader_id, "glGetShaderiv"); | 9351 Shader* shader = GetShaderInfoNotProgram(shader_id, "glGetShaderiv"); |
| (...skipping 8013 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 17361 } | 17365 } |
| 17362 | 17366 |
| 17363 // Include the auto-generated part of this file. We split this because it means | 17367 // Include the auto-generated part of this file. We split this because it means |
| 17364 // we can easily edit the non-auto generated parts right here in this file | 17368 // we can easily edit the non-auto generated parts right here in this file |
| 17365 // instead of having to edit some template or the code generator. | 17369 // instead of having to edit some template or the code generator. |
| 17366 #include "base/macros.h" | 17370 #include "base/macros.h" |
| 17367 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" | 17371 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" |
| 17368 | 17372 |
| 17369 } // namespace gles2 | 17373 } // namespace gles2 |
| 17370 } // namespace gpu | 17374 } // namespace gpu |
| OLD | NEW |