diff options
author | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-16 07:34:45 +0000 |
---|---|---|
committer | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-16 07:34:45 +0000 |
commit | 36cef8cece381a98e76e57f50d4201d2f8f2a9b2 (patch) | |
tree | 702cb378477a510267105cc0fe2612bd914986ad /gpu/command_buffer/common | |
parent | d33a47ce26330b024214b0ecfb8b2c5cda218233 (diff) | |
download | chromium_src-36cef8cece381a98e76e57f50d4201d2f8f2a9b2.zip chromium_src-36cef8cece381a98e76e57f50d4201d2f8f2a9b2.tar.gz chromium_src-36cef8cece381a98e76e57f50d4201d2f8f2a9b2.tar.bz2 |
Fixed bugs in glActiveTexture. Added real implementation
for glCheckFramebufferStatus. Added support for hiding
ID 0 for all functions that reference a framebuffer or
renderbuffer.
TEST=unit tests
BUG=none
Review URL: http://codereview.chromium.org/1023002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41692 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/common')
-rw-r--r-- | gpu/command_buffer/common/gles2_cmd_format_autogen.h | 23 | ||||
-rw-r--r-- | gpu/command_buffer/common/gles2_cmd_format_test_autogen.h | 6 |
2 files changed, 23 insertions, 6 deletions
diff --git a/gpu/command_buffer/common/gles2_cmd_format_autogen.h b/gpu/command_buffer/common/gles2_cmd_format_autogen.h index 245a3c8..20db822 100644 --- a/gpu/command_buffer/common/gles2_cmd_format_autogen.h +++ b/gpu/command_buffer/common/gles2_cmd_format_autogen.h @@ -748,6 +748,8 @@ struct CheckFramebufferStatus { static const CommandId kCmdId = kCheckFramebufferStatus; static const cmd::ArgFlags kArgFlags = cmd::kFixed; + typedef GLenum Result; + static uint32 ComputeSize() { return static_cast<uint32>(sizeof(ValueType)); // NOLINT } @@ -756,26 +758,37 @@ struct CheckFramebufferStatus { header.SetCmd<ValueType>(); } - void Init(GLenum _target) { + void Init(GLenum _target, uint32 _result_shm_id, uint32 _result_shm_offset) { SetHeader(); target = _target; + result_shm_id = _result_shm_id; + result_shm_offset = _result_shm_offset; } - void* Set(void* cmd, GLenum _target) { - static_cast<ValueType*>(cmd)->Init(_target); + void* Set( + void* cmd, GLenum _target, uint32 _result_shm_id, + uint32 _result_shm_offset) { + static_cast<ValueType*>( + cmd)->Init(_target, _result_shm_id, _result_shm_offset); return NextCmdAddress<ValueType>(cmd); } gpu::CommandHeader header; uint32 target; + uint32 result_shm_id; + uint32 result_shm_offset; }; -COMPILE_ASSERT(sizeof(CheckFramebufferStatus) == 8, - Sizeof_CheckFramebufferStatus_is_not_8); +COMPILE_ASSERT(sizeof(CheckFramebufferStatus) == 16, + Sizeof_CheckFramebufferStatus_is_not_16); COMPILE_ASSERT(offsetof(CheckFramebufferStatus, header) == 0, OffsetOf_CheckFramebufferStatus_header_not_0); COMPILE_ASSERT(offsetof(CheckFramebufferStatus, target) == 4, OffsetOf_CheckFramebufferStatus_target_not_4); +COMPILE_ASSERT(offsetof(CheckFramebufferStatus, result_shm_id) == 8, + OffsetOf_CheckFramebufferStatus_result_shm_id_not_8); +COMPILE_ASSERT(offsetof(CheckFramebufferStatus, result_shm_offset) == 12, + OffsetOf_CheckFramebufferStatus_result_shm_offset_not_12); struct Clear { typedef Clear ValueType; diff --git a/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h b/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h index e53ac55..7cb1761 100644 --- a/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h +++ b/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h @@ -273,13 +273,17 @@ TEST(GLES2FormatTest, CheckFramebufferStatus) { CheckFramebufferStatus cmd = { { 0 } }; void* next_cmd = cmd.Set( &cmd, - static_cast<GLenum>(11)); + static_cast<GLenum>(11), + static_cast<uint32>(12), + static_cast<uint32>(13)); EXPECT_EQ(static_cast<uint32>(CheckFramebufferStatus::kCmdId), cmd.header.command); EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u); EXPECT_EQ(static_cast<char*>(next_cmd), reinterpret_cast<char*>(&cmd) + sizeof(cmd)); EXPECT_EQ(static_cast<GLenum>(11), cmd.target); + EXPECT_EQ(static_cast<uint32>(12), cmd.result_shm_id); + EXPECT_EQ(static_cast<uint32>(13), cmd.result_shm_offset); } TEST(GLES2FormatTest, Clear) { |