| 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 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 uint32_t immediate_data_size, | 52 uint32_t immediate_data_size, |
| 53 const void* cmd_data) { | 53 const void* cmd_data) { |
| 54 if (!unsafe_es3_apis_enabled()) | 54 if (!unsafe_es3_apis_enabled()) |
| 55 return error::kUnknownCommand; | 55 return error::kUnknownCommand; |
| 56 const gles2::cmds::BindBufferBase& c = | 56 const gles2::cmds::BindBufferBase& c = |
| 57 *static_cast<const gles2::cmds::BindBufferBase*>(cmd_data); | 57 *static_cast<const gles2::cmds::BindBufferBase*>(cmd_data); |
| 58 (void)c; | 58 (void)c; |
| 59 GLenum target = static_cast<GLenum>(c.target); | 59 GLenum target = static_cast<GLenum>(c.target); |
| 60 GLuint index = static_cast<GLuint>(c.index); | 60 GLuint index = static_cast<GLuint>(c.index); |
| 61 GLuint buffer = c.buffer; | 61 GLuint buffer = c.buffer; |
| 62 group_->GetBufferServiceId(buffer, &buffer); | 62 if (!group_->GetBufferServiceId(buffer, &buffer)) { |
| 63 if (!group_->bind_generates_resource()) { |
| 64 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBindBufferBase", |
| 65 "invalid buffer id"); |
| 66 return error::kNoError; |
| 67 } |
| 68 GLuint client_id = buffer; |
| 69 glGenBuffersARB(1, &buffer); |
| 70 CreateBuffer(client_id, buffer); |
| 71 } |
| 63 glBindBufferBase(target, index, buffer); | 72 glBindBufferBase(target, index, buffer); |
| 64 return error::kNoError; | 73 return error::kNoError; |
| 65 } | 74 } |
| 66 | 75 |
| 67 error::Error GLES2DecoderImpl::HandleBindFramebuffer( | 76 error::Error GLES2DecoderImpl::HandleBindFramebuffer( |
| 68 uint32_t immediate_data_size, | 77 uint32_t immediate_data_size, |
| 69 const void* cmd_data) { | 78 const void* cmd_data) { |
| 70 const gles2::cmds::BindFramebuffer& c = | 79 const gles2::cmds::BindFramebuffer& c = |
| 71 *static_cast<const gles2::cmds::BindFramebuffer*>(cmd_data); | 80 *static_cast<const gles2::cmds::BindFramebuffer*>(cmd_data); |
| 72 (void)c; | 81 (void)c; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 98 | 107 |
| 99 error::Error GLES2DecoderImpl::HandleBindSampler(uint32_t immediate_data_size, | 108 error::Error GLES2DecoderImpl::HandleBindSampler(uint32_t immediate_data_size, |
| 100 const void* cmd_data) { | 109 const void* cmd_data) { |
| 101 if (!unsafe_es3_apis_enabled()) | 110 if (!unsafe_es3_apis_enabled()) |
| 102 return error::kUnknownCommand; | 111 return error::kUnknownCommand; |
| 103 const gles2::cmds::BindSampler& c = | 112 const gles2::cmds::BindSampler& c = |
| 104 *static_cast<const gles2::cmds::BindSampler*>(cmd_data); | 113 *static_cast<const gles2::cmds::BindSampler*>(cmd_data); |
| 105 (void)c; | 114 (void)c; |
| 106 GLuint unit = static_cast<GLuint>(c.unit); | 115 GLuint unit = static_cast<GLuint>(c.unit); |
| 107 GLuint sampler = c.sampler; | 116 GLuint sampler = c.sampler; |
| 108 group_->GetSamplerServiceId(sampler, &sampler); | 117 if (!group_->GetSamplerServiceId(sampler, &sampler)) { |
| 118 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBindSampler", |
| 119 "invalid sampler id"); |
| 120 return error::kNoError; |
| 121 } |
| 109 glBindSampler(unit, sampler); | 122 glBindSampler(unit, sampler); |
| 110 return error::kNoError; | 123 return error::kNoError; |
| 111 } | 124 } |
| 112 | 125 |
| 113 error::Error GLES2DecoderImpl::HandleBindTexture(uint32_t immediate_data_size, | 126 error::Error GLES2DecoderImpl::HandleBindTexture(uint32_t immediate_data_size, |
| 114 const void* cmd_data) { | 127 const void* cmd_data) { |
| 115 const gles2::cmds::BindTexture& c = | 128 const gles2::cmds::BindTexture& c = |
| 116 *static_cast<const gles2::cmds::BindTexture*>(cmd_data); | 129 *static_cast<const gles2::cmds::BindTexture*>(cmd_data); |
| 117 (void)c; | 130 (void)c; |
| 118 GLenum target = static_cast<GLenum>(c.target); | 131 GLenum target = static_cast<GLenum>(c.target); |
| 119 GLuint texture = c.texture; | 132 GLuint texture = c.texture; |
| 120 if (!validators_->texture_bind_target.IsValid(target)) { | 133 if (!validators_->texture_bind_target.IsValid(target)) { |
| 121 LOCAL_SET_GL_ERROR_INVALID_ENUM("glBindTexture", target, "target"); | 134 LOCAL_SET_GL_ERROR_INVALID_ENUM("glBindTexture", target, "target"); |
| 122 return error::kNoError; | 135 return error::kNoError; |
| 123 } | 136 } |
| 124 DoBindTexture(target, texture); | 137 DoBindTexture(target, texture); |
| 125 return error::kNoError; | 138 return error::kNoError; |
| 126 } | 139 } |
| 127 | 140 |
| 128 error::Error GLES2DecoderImpl::HandleBindTransformFeedback( | 141 error::Error GLES2DecoderImpl::HandleBindTransformFeedback( |
| 129 uint32_t immediate_data_size, | 142 uint32_t immediate_data_size, |
| 130 const void* cmd_data) { | 143 const void* cmd_data) { |
| 131 if (!unsafe_es3_apis_enabled()) | 144 if (!unsafe_es3_apis_enabled()) |
| 132 return error::kUnknownCommand; | 145 return error::kUnknownCommand; |
| 133 const gles2::cmds::BindTransformFeedback& c = | 146 const gles2::cmds::BindTransformFeedback& c = |
| 134 *static_cast<const gles2::cmds::BindTransformFeedback*>(cmd_data); | 147 *static_cast<const gles2::cmds::BindTransformFeedback*>(cmd_data); |
| 135 (void)c; | 148 (void)c; |
| 136 GLenum target = static_cast<GLenum>(c.target); | 149 GLenum target = static_cast<GLenum>(c.target); |
| 137 GLuint transformfeedback = c.transformfeedback; | 150 GLuint transformfeedback = c.transformfeedback; |
| 138 group_->GetTransformFeedbackServiceId(transformfeedback, &transformfeedback); | 151 if (!group_->GetTransformFeedbackServiceId(transformfeedback, |
| 152 &transformfeedback)) { |
| 153 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBindTransformFeedback", |
| 154 "invalid transformfeedback id"); |
| 155 return error::kNoError; |
| 156 } |
| 139 glBindTransformFeedback(target, transformfeedback); | 157 glBindTransformFeedback(target, transformfeedback); |
| 140 return error::kNoError; | 158 return error::kNoError; |
| 141 } | 159 } |
| 142 | 160 |
| 143 error::Error GLES2DecoderImpl::HandleBlendColor(uint32_t immediate_data_size, | 161 error::Error GLES2DecoderImpl::HandleBlendColor(uint32_t immediate_data_size, |
| 144 const void* cmd_data) { | 162 const void* cmd_data) { |
| 145 const gles2::cmds::BlendColor& c = | 163 const gles2::cmds::BlendColor& c = |
| 146 *static_cast<const gles2::cmds::BlendColor*>(cmd_data); | 164 *static_cast<const gles2::cmds::BlendColor*>(cmd_data); |
| 147 (void)c; | 165 (void)c; |
| 148 GLclampf red = static_cast<GLclampf>(c.red); | 166 GLclampf red = static_cast<GLclampf>(c.red); |
| (...skipping 1305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1454 c.params_shm_id, c.params_shm_offset, Result::ComputeSize(num_values)); | 1472 c.params_shm_id, c.params_shm_offset, Result::ComputeSize(num_values)); |
| 1455 GLfloat* params = result ? result->GetData() : NULL; | 1473 GLfloat* params = result ? result->GetData() : NULL; |
| 1456 if (params == NULL) { | 1474 if (params == NULL) { |
| 1457 return error::kOutOfBounds; | 1475 return error::kOutOfBounds; |
| 1458 } | 1476 } |
| 1459 LOCAL_COPY_REAL_GL_ERRORS_TO_WRAPPER("GetSamplerParameterfv"); | 1477 LOCAL_COPY_REAL_GL_ERRORS_TO_WRAPPER("GetSamplerParameterfv"); |
| 1460 // Check that the client initialized the result. | 1478 // Check that the client initialized the result. |
| 1461 if (result->size != 0) { | 1479 if (result->size != 0) { |
| 1462 return error::kInvalidArguments; | 1480 return error::kInvalidArguments; |
| 1463 } | 1481 } |
| 1464 group_->GetSamplerServiceId(sampler, &sampler); | 1482 if (!group_->GetSamplerServiceId(sampler, &sampler)) { |
| 1483 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glGetSamplerParameterfv", |
| 1484 "invalid sampler id"); |
| 1485 return error::kNoError; |
| 1486 } |
| 1465 glGetSamplerParameterfv(sampler, pname, params); | 1487 glGetSamplerParameterfv(sampler, pname, params); |
| 1466 GLenum error = glGetError(); | 1488 GLenum error = glGetError(); |
| 1467 if (error == GL_NO_ERROR) { | 1489 if (error == GL_NO_ERROR) { |
| 1468 result->SetNumResults(num_values); | 1490 result->SetNumResults(num_values); |
| 1469 } else { | 1491 } else { |
| 1470 LOCAL_SET_GL_ERROR(error, "GetSamplerParameterfv", ""); | 1492 LOCAL_SET_GL_ERROR(error, "GetSamplerParameterfv", ""); |
| 1471 } | 1493 } |
| 1472 return error::kNoError; | 1494 return error::kNoError; |
| 1473 } | 1495 } |
| 1474 | 1496 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 1489 c.params_shm_id, c.params_shm_offset, Result::ComputeSize(num_values)); | 1511 c.params_shm_id, c.params_shm_offset, Result::ComputeSize(num_values)); |
| 1490 GLint* params = result ? result->GetData() : NULL; | 1512 GLint* params = result ? result->GetData() : NULL; |
| 1491 if (params == NULL) { | 1513 if (params == NULL) { |
| 1492 return error::kOutOfBounds; | 1514 return error::kOutOfBounds; |
| 1493 } | 1515 } |
| 1494 LOCAL_COPY_REAL_GL_ERRORS_TO_WRAPPER("GetSamplerParameteriv"); | 1516 LOCAL_COPY_REAL_GL_ERRORS_TO_WRAPPER("GetSamplerParameteriv"); |
| 1495 // Check that the client initialized the result. | 1517 // Check that the client initialized the result. |
| 1496 if (result->size != 0) { | 1518 if (result->size != 0) { |
| 1497 return error::kInvalidArguments; | 1519 return error::kInvalidArguments; |
| 1498 } | 1520 } |
| 1499 group_->GetSamplerServiceId(sampler, &sampler); | 1521 if (!group_->GetSamplerServiceId(sampler, &sampler)) { |
| 1522 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glGetSamplerParameteriv", |
| 1523 "invalid sampler id"); |
| 1524 return error::kNoError; |
| 1525 } |
| 1500 glGetSamplerParameteriv(sampler, pname, params); | 1526 glGetSamplerParameteriv(sampler, pname, params); |
| 1501 GLenum error = glGetError(); | 1527 GLenum error = glGetError(); |
| 1502 if (error == GL_NO_ERROR) { | 1528 if (error == GL_NO_ERROR) { |
| 1503 result->SetNumResults(num_values); | 1529 result->SetNumResults(num_values); |
| 1504 } else { | 1530 } else { |
| 1505 LOCAL_SET_GL_ERROR(error, "GetSamplerParameteriv", ""); | 1531 LOCAL_SET_GL_ERROR(error, "GetSamplerParameteriv", ""); |
| 1506 } | 1532 } |
| 1507 return error::kNoError; | 1533 return error::kNoError; |
| 1508 } | 1534 } |
| 1509 | 1535 |
| (...skipping 377 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1887 const gles2::cmds::IsSampler& c = | 1913 const gles2::cmds::IsSampler& c = |
| 1888 *static_cast<const gles2::cmds::IsSampler*>(cmd_data); | 1914 *static_cast<const gles2::cmds::IsSampler*>(cmd_data); |
| 1889 (void)c; | 1915 (void)c; |
| 1890 GLuint sampler = c.sampler; | 1916 GLuint sampler = c.sampler; |
| 1891 typedef cmds::IsSampler::Result Result; | 1917 typedef cmds::IsSampler::Result Result; |
| 1892 Result* result_dst = GetSharedMemoryAs<Result*>( | 1918 Result* result_dst = GetSharedMemoryAs<Result*>( |
| 1893 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); | 1919 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); |
| 1894 if (!result_dst) { | 1920 if (!result_dst) { |
| 1895 return error::kOutOfBounds; | 1921 return error::kOutOfBounds; |
| 1896 } | 1922 } |
| 1897 group_->GetSamplerServiceId(sampler, &sampler); | 1923 *result_dst = group_->GetSamplerServiceId(sampler, &sampler); |
| 1898 *result_dst = glIsSampler(sampler); | |
| 1899 return error::kNoError; | 1924 return error::kNoError; |
| 1900 } | 1925 } |
| 1901 | 1926 |
| 1902 error::Error GLES2DecoderImpl::HandleIsShader(uint32_t immediate_data_size, | 1927 error::Error GLES2DecoderImpl::HandleIsShader(uint32_t immediate_data_size, |
| 1903 const void* cmd_data) { | 1928 const void* cmd_data) { |
| 1904 const gles2::cmds::IsShader& c = | 1929 const gles2::cmds::IsShader& c = |
| 1905 *static_cast<const gles2::cmds::IsShader*>(cmd_data); | 1930 *static_cast<const gles2::cmds::IsShader*>(cmd_data); |
| 1906 (void)c; | 1931 (void)c; |
| 1907 GLuint shader = c.shader; | 1932 GLuint shader = c.shader; |
| 1908 typedef cmds::IsShader::Result Result; | 1933 typedef cmds::IsShader::Result Result; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 1939 const gles2::cmds::IsTransformFeedback& c = | 1964 const gles2::cmds::IsTransformFeedback& c = |
| 1940 *static_cast<const gles2::cmds::IsTransformFeedback*>(cmd_data); | 1965 *static_cast<const gles2::cmds::IsTransformFeedback*>(cmd_data); |
| 1941 (void)c; | 1966 (void)c; |
| 1942 GLuint transformfeedback = c.transformfeedback; | 1967 GLuint transformfeedback = c.transformfeedback; |
| 1943 typedef cmds::IsTransformFeedback::Result Result; | 1968 typedef cmds::IsTransformFeedback::Result Result; |
| 1944 Result* result_dst = GetSharedMemoryAs<Result*>( | 1969 Result* result_dst = GetSharedMemoryAs<Result*>( |
| 1945 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); | 1970 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); |
| 1946 if (!result_dst) { | 1971 if (!result_dst) { |
| 1947 return error::kOutOfBounds; | 1972 return error::kOutOfBounds; |
| 1948 } | 1973 } |
| 1949 group_->GetTransformFeedbackServiceId(transformfeedback, &transformfeedback); | 1974 *result_dst = group_->GetTransformFeedbackServiceId(transformfeedback, |
| 1950 *result_dst = glIsTransformFeedback(transformfeedback); | 1975 &transformfeedback); |
| 1951 return error::kNoError; | 1976 return error::kNoError; |
| 1952 } | 1977 } |
| 1953 | 1978 |
| 1954 error::Error GLES2DecoderImpl::HandleLineWidth(uint32_t immediate_data_size, | 1979 error::Error GLES2DecoderImpl::HandleLineWidth(uint32_t immediate_data_size, |
| 1955 const void* cmd_data) { | 1980 const void* cmd_data) { |
| 1956 const gles2::cmds::LineWidth& c = | 1981 const gles2::cmds::LineWidth& c = |
| 1957 *static_cast<const gles2::cmds::LineWidth*>(cmd_data); | 1982 *static_cast<const gles2::cmds::LineWidth*>(cmd_data); |
| 1958 (void)c; | 1983 (void)c; |
| 1959 GLfloat width = static_cast<GLfloat>(c.width); | 1984 GLfloat width = static_cast<GLfloat>(c.width); |
| 1960 if (width <= 0.0f || base::IsNaN(width)) { | 1985 if (width <= 0.0f || base::IsNaN(width)) { |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2087 uint32_t immediate_data_size, | 2112 uint32_t immediate_data_size, |
| 2088 const void* cmd_data) { | 2113 const void* cmd_data) { |
| 2089 if (!unsafe_es3_apis_enabled()) | 2114 if (!unsafe_es3_apis_enabled()) |
| 2090 return error::kUnknownCommand; | 2115 return error::kUnknownCommand; |
| 2091 const gles2::cmds::SamplerParameterf& c = | 2116 const gles2::cmds::SamplerParameterf& c = |
| 2092 *static_cast<const gles2::cmds::SamplerParameterf*>(cmd_data); | 2117 *static_cast<const gles2::cmds::SamplerParameterf*>(cmd_data); |
| 2093 (void)c; | 2118 (void)c; |
| 2094 GLuint sampler = c.sampler; | 2119 GLuint sampler = c.sampler; |
| 2095 GLenum pname = static_cast<GLenum>(c.pname); | 2120 GLenum pname = static_cast<GLenum>(c.pname); |
| 2096 GLfloat param = static_cast<GLfloat>(c.param); | 2121 GLfloat param = static_cast<GLfloat>(c.param); |
| 2097 group_->GetSamplerServiceId(sampler, &sampler); | 2122 if (!group_->GetSamplerServiceId(sampler, &sampler)) { |
| 2123 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glSamplerParameterf", |
| 2124 "invalid sampler id"); |
| 2125 return error::kNoError; |
| 2126 } |
| 2098 glSamplerParameterf(sampler, pname, param); | 2127 glSamplerParameterf(sampler, pname, param); |
| 2099 return error::kNoError; | 2128 return error::kNoError; |
| 2100 } | 2129 } |
| 2101 | 2130 |
| 2102 error::Error GLES2DecoderImpl::HandleSamplerParameterfvImmediate( | 2131 error::Error GLES2DecoderImpl::HandleSamplerParameterfvImmediate( |
| 2103 uint32_t immediate_data_size, | 2132 uint32_t immediate_data_size, |
| 2104 const void* cmd_data) { | 2133 const void* cmd_data) { |
| 2105 if (!unsafe_es3_apis_enabled()) | 2134 if (!unsafe_es3_apis_enabled()) |
| 2106 return error::kUnknownCommand; | 2135 return error::kUnknownCommand; |
| 2107 const gles2::cmds::SamplerParameterfvImmediate& c = | 2136 const gles2::cmds::SamplerParameterfvImmediate& c = |
| (...skipping 22 matching lines...) Expand all Loading... |
| 2130 uint32_t immediate_data_size, | 2159 uint32_t immediate_data_size, |
| 2131 const void* cmd_data) { | 2160 const void* cmd_data) { |
| 2132 if (!unsafe_es3_apis_enabled()) | 2161 if (!unsafe_es3_apis_enabled()) |
| 2133 return error::kUnknownCommand; | 2162 return error::kUnknownCommand; |
| 2134 const gles2::cmds::SamplerParameteri& c = | 2163 const gles2::cmds::SamplerParameteri& c = |
| 2135 *static_cast<const gles2::cmds::SamplerParameteri*>(cmd_data); | 2164 *static_cast<const gles2::cmds::SamplerParameteri*>(cmd_data); |
| 2136 (void)c; | 2165 (void)c; |
| 2137 GLuint sampler = c.sampler; | 2166 GLuint sampler = c.sampler; |
| 2138 GLenum pname = static_cast<GLenum>(c.pname); | 2167 GLenum pname = static_cast<GLenum>(c.pname); |
| 2139 GLint param = static_cast<GLint>(c.param); | 2168 GLint param = static_cast<GLint>(c.param); |
| 2140 group_->GetSamplerServiceId(sampler, &sampler); | 2169 if (!group_->GetSamplerServiceId(sampler, &sampler)) { |
| 2170 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glSamplerParameteri", |
| 2171 "invalid sampler id"); |
| 2172 return error::kNoError; |
| 2173 } |
| 2141 glSamplerParameteri(sampler, pname, param); | 2174 glSamplerParameteri(sampler, pname, param); |
| 2142 return error::kNoError; | 2175 return error::kNoError; |
| 2143 } | 2176 } |
| 2144 | 2177 |
| 2145 error::Error GLES2DecoderImpl::HandleSamplerParameterivImmediate( | 2178 error::Error GLES2DecoderImpl::HandleSamplerParameterivImmediate( |
| 2146 uint32_t immediate_data_size, | 2179 uint32_t immediate_data_size, |
| 2147 const void* cmd_data) { | 2180 const void* cmd_data) { |
| 2148 if (!unsafe_es3_apis_enabled()) | 2181 if (!unsafe_es3_apis_enabled()) |
| 2149 return error::kUnknownCommand; | 2182 return error::kUnknownCommand; |
| 2150 const gles2::cmds::SamplerParameterivImmediate& c = | 2183 const gles2::cmds::SamplerParameterivImmediate& c = |
| (...skipping 2398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4549 state_.ignore_cached_state) { | 4582 state_.ignore_cached_state) { |
| 4550 framebuffer_state_.clear_state_dirty = true; | 4583 framebuffer_state_.clear_state_dirty = true; |
| 4551 } | 4584 } |
| 4552 return false; | 4585 return false; |
| 4553 default: | 4586 default: |
| 4554 NOTREACHED(); | 4587 NOTREACHED(); |
| 4555 return false; | 4588 return false; |
| 4556 } | 4589 } |
| 4557 } | 4590 } |
| 4558 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ | 4591 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ |
| OLD | NEW |