| 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 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ | 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ |
| 6 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ | 6 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 // certain commands. | 63 // certain commands. |
| 64 template <typename T, int id> | 64 template <typename T, int id> |
| 65 void SpecializedSetup(bool valid) { | 65 void SpecializedSetup(bool valid) { |
| 66 } | 66 } |
| 67 | 67 |
| 68 template <typename T> | 68 template <typename T> |
| 69 T* GetImmediateAs() { | 69 T* GetImmediateAs() { |
| 70 return reinterpret_cast<T*>(immediate_buffer_); | 70 return reinterpret_cast<T*>(immediate_buffer_); |
| 71 } | 71 } |
| 72 | 72 |
| 73 template <typename T, typename Command> | |
| 74 T GetImmediateDataAs(Command* cmd) { | |
| 75 return reinterpret_cast<T>(ImmediateDataAddress(cmd)); | |
| 76 } | |
| 77 | |
| 78 void ClearSharedMemory() { | 73 void ClearSharedMemory() { |
| 79 engine_->ClearSharedMemory(); | 74 engine_->ClearSharedMemory(); |
| 80 } | 75 } |
| 81 | 76 |
| 82 void SetUp() override; | 77 void SetUp() override; |
| 83 void TearDown() override; | 78 void TearDown() override; |
| 84 | 79 |
| 85 template <typename T> | 80 template <typename T> |
| 86 error::Error ExecuteCmd(const T& cmd) { | 81 error::Error ExecuteCmd(const T& cmd) { |
| 87 static_assert(T::kArgFlags == cmd::kFixed, | 82 static_assert(T::kArgFlags == cmd::kFixed, |
| (...skipping 478 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 566 static const GLint kBadAttribIndex = kNumVertexAttribs; | 561 static const GLint kBadAttribIndex = kNumVertexAttribs; |
| 567 | 562 |
| 568 static const GLint kMaxUniformLength = 12; | 563 static const GLint kMaxUniformLength = 12; |
| 569 static const char* kUniform1Name; | 564 static const char* kUniform1Name; |
| 570 static const char* kUniform2Name; | 565 static const char* kUniform2Name; |
| 571 static const char* kUniform3Name; | 566 static const char* kUniform3Name; |
| 572 static const char* kUniform4Name; | 567 static const char* kUniform4Name; |
| 573 static const char* kUniform5Name; | 568 static const char* kUniform5Name; |
| 574 static const char* kUniform6Name; | 569 static const char* kUniform6Name; |
| 575 static const char* kUniform7Name; | 570 static const char* kUniform7Name; |
| 571 static const char* kUniform8Name; |
| 576 static const GLint kUniform1Size = 1; | 572 static const GLint kUniform1Size = 1; |
| 577 static const GLint kUniform2Size = 3; | 573 static const GLint kUniform2Size = 3; |
| 578 static const GLint kUniform3Size = 2; | 574 static const GLint kUniform3Size = 2; |
| 579 static const GLint kUniform4Size = 1; | 575 static const GLint kUniform4Size = 1; |
| 580 static const GLint kUniform5Size = 1; | 576 static const GLint kUniform5Size = 1; |
| 581 static const GLint kUniform6Size = 1; | 577 static const GLint kUniform6Size = 1; |
| 582 static const GLint kUniform7Size = 1; | 578 static const GLint kUniform7Size = 1; |
| 579 static const GLint kUniform8Size = 2; |
| 583 static const GLint kUniform1RealLocation = 3; | 580 static const GLint kUniform1RealLocation = 3; |
| 584 static const GLint kUniform2RealLocation = 10; | 581 static const GLint kUniform2RealLocation = 10; |
| 585 static const GLint kUniform2ElementRealLocation = 12; | 582 static const GLint kUniform2ElementRealLocation = 12; |
| 586 static const GLint kUniform3RealLocation = 20; | 583 static const GLint kUniform3RealLocation = 20; |
| 587 static const GLint kUniform4RealLocation = 22; | 584 static const GLint kUniform4RealLocation = 22; |
| 588 static const GLint kUniform5RealLocation = 30; | 585 static const GLint kUniform5RealLocation = 30; |
| 589 static const GLint kUniform6RealLocation = 32; | 586 static const GLint kUniform6RealLocation = 32; |
| 590 static const GLint kUniform7RealLocation = 44; | 587 static const GLint kUniform7RealLocation = 44; |
| 588 static const GLint kUniform8RealLocation = 56; |
| 591 static const GLint kUniform1FakeLocation = 0; // These are | 589 static const GLint kUniform1FakeLocation = 0; // These are |
| 592 static const GLint kUniform2FakeLocation = 1; // hardcoded | 590 static const GLint kUniform2FakeLocation = 1; // hardcoded |
| 593 static const GLint kUniform2ElementFakeLocation = 0x10001; // to match | 591 static const GLint kUniform2ElementFakeLocation = 0x10001; // to match |
| 594 static const GLint kUniform3FakeLocation = 2; // ProgramManager. | 592 static const GLint kUniform3FakeLocation = 2; // ProgramManager. |
| 595 static const GLint kUniform4FakeLocation = 3; // | 593 static const GLint kUniform4FakeLocation = 3; // |
| 596 static const GLint kUniform5FakeLocation = 4; // | 594 static const GLint kUniform5FakeLocation = 4; // |
| 597 static const GLint kUniform6FakeLocation = 5; // | 595 static const GLint kUniform6FakeLocation = 5; // |
| 598 static const GLint kUniform7FakeLocation = 6; // | 596 static const GLint kUniform7FakeLocation = 6; // |
| 597 static const GLint kUniform8FakeLocation = 7; // |
| 599 static const GLint kUniform1DesiredLocation = -1; | 598 static const GLint kUniform1DesiredLocation = -1; |
| 600 static const GLint kUniform2DesiredLocation = -1; | 599 static const GLint kUniform2DesiredLocation = -1; |
| 601 static const GLint kUniform3DesiredLocation = -1; | 600 static const GLint kUniform3DesiredLocation = -1; |
| 602 static const GLint kUniform4DesiredLocation = -1; | 601 static const GLint kUniform4DesiredLocation = -1; |
| 603 static const GLint kUniform5DesiredLocation = -1; | 602 static const GLint kUniform5DesiredLocation = -1; |
| 604 static const GLint kUniform6DesiredLocation = -1; | 603 static const GLint kUniform6DesiredLocation = -1; |
| 605 static const GLint kUniform7DesiredLocation = -1; | 604 static const GLint kUniform7DesiredLocation = -1; |
| 605 static const GLint kUniform8DesiredLocation = -1; |
| 606 static const GLenum kUniform1Type = GL_SAMPLER_2D; | 606 static const GLenum kUniform1Type = GL_SAMPLER_2D; |
| 607 static const GLenum kUniform2Type = GL_INT_VEC2; | 607 static const GLenum kUniform2Type = GL_INT_VEC2; |
| 608 static const GLenum kUniform3Type = GL_FLOAT_VEC3; | 608 static const GLenum kUniform3Type = GL_FLOAT_VEC3; |
| 609 static const GLenum kUniform4Type = GL_UNSIGNED_INT; | 609 static const GLenum kUniform4Type = GL_UNSIGNED_INT; |
| 610 static const GLenum kUniform5Type = GL_UNSIGNED_INT_VEC2; | 610 static const GLenum kUniform5Type = GL_UNSIGNED_INT_VEC2; |
| 611 static const GLenum kUniform6Type = GL_UNSIGNED_INT_VEC3; | 611 static const GLenum kUniform6Type = GL_UNSIGNED_INT_VEC3; |
| 612 static const GLenum kUniform7Type = GL_UNSIGNED_INT_VEC4; | 612 static const GLenum kUniform7Type = GL_UNSIGNED_INT_VEC4; |
| 613 static const GLenum kUniform8Type = GL_INT; |
| 613 static const GLenum kUniformSamplerExternalType = GL_SAMPLER_EXTERNAL_OES; | 614 static const GLenum kUniformSamplerExternalType = GL_SAMPLER_EXTERNAL_OES; |
| 614 static const GLenum kUniformCubemapType = GL_SAMPLER_CUBE; | 615 static const GLenum kUniformCubemapType = GL_SAMPLER_CUBE; |
| 615 static const GLint kInvalidUniformLocation = 30; | 616 static const GLint kInvalidUniformLocation = 30; |
| 616 static const GLint kBadUniformIndex = 1000; | 617 static const GLint kBadUniformIndex = 1000; |
| 617 | 618 |
| 618 static const GLint kOutputVariable1Size = 0; | 619 static const GLint kOutputVariable1Size = 0; |
| 619 static const GLenum kOutputVariable1Type = GL_FLOAT_VEC4; | 620 static const GLenum kOutputVariable1Type = GL_FLOAT_VEC4; |
| 620 static const GLuint kOutputVariable1ColorName = 7; | 621 static const GLuint kOutputVariable1ColorName = 7; |
| 621 static const GLuint kOutputVariable1Index = 0; | 622 static const GLuint kOutputVariable1Index = 0; |
| 622 static const char* kOutputVariable1Name; | 623 static const char* kOutputVariable1Name; |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 764 | 765 |
| 765 protected: | 766 protected: |
| 766 void SetUp() override; | 767 void SetUp() override; |
| 767 void TearDown() override; | 768 void TearDown() override; |
| 768 }; | 769 }; |
| 769 | 770 |
| 770 // SpecializedSetup specializations that are needed in multiple unittest files. | 771 // SpecializedSetup specializations that are needed in multiple unittest files. |
| 771 template <> | 772 template <> |
| 772 void GLES2DecoderTestBase::SpecializedSetup<cmds::LinkProgram, 0>(bool valid); | 773 void GLES2DecoderTestBase::SpecializedSetup<cmds::LinkProgram, 0>(bool valid); |
| 773 | 774 |
| 775 MATCHER_P2(PointsToArray, array, size, "") { |
| 776 for (size_t i = 0; i < static_cast<size_t>(size); ++i) { |
| 777 if (arg[i] != array[i]) |
| 778 return false; |
| 779 } |
| 780 return true; |
| 781 } |
| 782 |
| 774 } // namespace gles2 | 783 } // namespace gles2 |
| 775 } // namespace gpu | 784 } // namespace gpu |
| 776 | 785 |
| 777 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ | 786 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_BASE_H_ |
| OLD | NEW |