Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_autogen.h

Issue 1922633002: Implement TransformFeedbackManager in GPU command buffer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 error::Error GLES2DecoderImpl::HandleBindTransformFeedback( 143 error::Error GLES2DecoderImpl::HandleBindTransformFeedback(
144 uint32_t immediate_data_size, 144 uint32_t immediate_data_size,
145 const void* cmd_data) { 145 const void* cmd_data) {
146 if (!unsafe_es3_apis_enabled()) 146 if (!unsafe_es3_apis_enabled())
147 return error::kUnknownCommand; 147 return error::kUnknownCommand;
148 const gles2::cmds::BindTransformFeedback& c = 148 const gles2::cmds::BindTransformFeedback& c =
149 *static_cast<const gles2::cmds::BindTransformFeedback*>(cmd_data); 149 *static_cast<const gles2::cmds::BindTransformFeedback*>(cmd_data);
150 (void)c; 150 (void)c;
151 GLenum target = static_cast<GLenum>(c.target); 151 GLenum target = static_cast<GLenum>(c.target);
152 GLuint transformfeedback = c.transformfeedback; 152 GLuint transformfeedback = c.transformfeedback;
153 if (!group_->GetTransformFeedbackServiceId(transformfeedback, 153 DoBindTransformFeedback(target, transformfeedback);
154 &transformfeedback)) {
155 LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBindTransformFeedback",
156 "invalid transformfeedback id");
157 return error::kNoError;
158 }
159 glBindTransformFeedback(target, transformfeedback);
160 return error::kNoError; 154 return error::kNoError;
161 } 155 }
162 156
163 error::Error GLES2DecoderImpl::HandleBlendColor(uint32_t immediate_data_size, 157 error::Error GLES2DecoderImpl::HandleBlendColor(uint32_t immediate_data_size,
164 const void* cmd_data) { 158 const void* cmd_data) {
165 const gles2::cmds::BlendColor& c = 159 const gles2::cmds::BlendColor& c =
166 *static_cast<const gles2::cmds::BlendColor*>(cmd_data); 160 *static_cast<const gles2::cmds::BlendColor*>(cmd_data);
167 (void)c; 161 (void)c;
168 GLclampf red = static_cast<GLclampf>(c.red); 162 GLclampf red = static_cast<GLclampf>(c.red);
169 GLclampf green = static_cast<GLclampf>(c.green); 163 GLclampf green = static_cast<GLclampf>(c.green);
(...skipping 735 matching lines...) Expand 10 before | Expand all | Expand 10 after
905 GLsizei n = static_cast<GLsizei>(c.n); 899 GLsizei n = static_cast<GLsizei>(c.n);
906 uint32_t data_size; 900 uint32_t data_size;
907 if (!SafeMultiplyUint32(n, sizeof(GLuint), &data_size)) { 901 if (!SafeMultiplyUint32(n, sizeof(GLuint), &data_size)) {
908 return error::kOutOfBounds; 902 return error::kOutOfBounds;
909 } 903 }
910 const GLuint* ids = 904 const GLuint* ids =
911 GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size); 905 GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
912 if (ids == NULL) { 906 if (ids == NULL) {
913 return error::kOutOfBounds; 907 return error::kOutOfBounds;
914 } 908 }
915 for (GLsizei ii = 0; ii < n; ++ii) { 909 DeleteTransformFeedbacksHelper(n, ids);
916 GLuint service_id = 0;
917 if (group_->GetTransformFeedbackServiceId(ids[ii], &service_id)) {
918 glDeleteTransformFeedbacks(1, &service_id);
919 group_->RemoveTransformFeedbackId(ids[ii]);
920 }
921 }
922 return error::kNoError; 910 return error::kNoError;
923 } 911 }
924 912
925 error::Error GLES2DecoderImpl::HandleDepthFunc(uint32_t immediate_data_size, 913 error::Error GLES2DecoderImpl::HandleDepthFunc(uint32_t immediate_data_size,
926 const void* cmd_data) { 914 const void* cmd_data) {
927 const gles2::cmds::DepthFunc& c = 915 const gles2::cmds::DepthFunc& c =
928 *static_cast<const gles2::cmds::DepthFunc*>(cmd_data); 916 *static_cast<const gles2::cmds::DepthFunc*>(cmd_data);
929 (void)c; 917 (void)c;
930 GLenum func = static_cast<GLenum>(c.func); 918 GLenum func = static_cast<GLenum>(c.func);
931 if (!validators_->cmp_function.IsValid(func)) { 919 if (!validators_->cmp_function.IsValid(func)) {
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after
1298 (void)c; 1286 (void)c;
1299 GLsizei n = static_cast<GLsizei>(c.n); 1287 GLsizei n = static_cast<GLsizei>(c.n);
1300 uint32_t data_size; 1288 uint32_t data_size;
1301 if (!SafeMultiplyUint32(n, sizeof(GLuint), &data_size)) { 1289 if (!SafeMultiplyUint32(n, sizeof(GLuint), &data_size)) {
1302 return error::kOutOfBounds; 1290 return error::kOutOfBounds;
1303 } 1291 }
1304 GLuint* ids = GetImmediateDataAs<GLuint*>(c, data_size, immediate_data_size); 1292 GLuint* ids = GetImmediateDataAs<GLuint*>(c, data_size, immediate_data_size);
1305 if (ids == NULL) { 1293 if (ids == NULL) {
1306 return error::kOutOfBounds; 1294 return error::kOutOfBounds;
1307 } 1295 }
1308 for (GLsizei ii = 0; ii < n; ++ii) { 1296 if (!GenTransformFeedbacksHelper(n, ids)) {
1309 if (group_->GetTransformFeedbackServiceId(ids[ii], NULL)) { 1297 return error::kInvalidArguments;
1310 return error::kInvalidArguments;
1311 }
1312 }
1313 std::unique_ptr<GLuint[]> service_ids(new GLuint[n]);
1314 glGenTransformFeedbacks(n, service_ids.get());
1315 for (GLsizei ii = 0; ii < n; ++ii) {
1316 group_->AddTransformFeedbackId(ids[ii], service_ids[ii]);
1317 } 1298 }
1318 return error::kNoError; 1299 return error::kNoError;
1319 } 1300 }
1320 1301
1321 error::Error GLES2DecoderImpl::HandleGetBooleanv(uint32_t immediate_data_size, 1302 error::Error GLES2DecoderImpl::HandleGetBooleanv(uint32_t immediate_data_size,
1322 const void* cmd_data) { 1303 const void* cmd_data) {
1323 const gles2::cmds::GetBooleanv& c = 1304 const gles2::cmds::GetBooleanv& c =
1324 *static_cast<const gles2::cmds::GetBooleanv*>(cmd_data); 1305 *static_cast<const gles2::cmds::GetBooleanv*>(cmd_data);
1325 (void)c; 1306 (void)c;
1326 GLenum pname = static_cast<GLenum>(c.pname); 1307 GLenum pname = static_cast<GLenum>(c.pname);
(...skipping 979 matching lines...) Expand 10 before | Expand all | Expand 10 after
2306 const gles2::cmds::IsTransformFeedback& c = 2287 const gles2::cmds::IsTransformFeedback& c =
2307 *static_cast<const gles2::cmds::IsTransformFeedback*>(cmd_data); 2288 *static_cast<const gles2::cmds::IsTransformFeedback*>(cmd_data);
2308 (void)c; 2289 (void)c;
2309 GLuint transformfeedback = c.transformfeedback; 2290 GLuint transformfeedback = c.transformfeedback;
2310 typedef cmds::IsTransformFeedback::Result Result; 2291 typedef cmds::IsTransformFeedback::Result Result;
2311 Result* result_dst = GetSharedMemoryAs<Result*>( 2292 Result* result_dst = GetSharedMemoryAs<Result*>(
2312 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 2293 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
2313 if (!result_dst) { 2294 if (!result_dst) {
2314 return error::kOutOfBounds; 2295 return error::kOutOfBounds;
2315 } 2296 }
2316 GLuint service_transformfeedback = 0; 2297 *result_dst = DoIsTransformFeedback(transformfeedback);
2317 *result_dst = group_->GetTransformFeedbackServiceId(
2318 transformfeedback, &service_transformfeedback);
2319 return error::kNoError; 2298 return error::kNoError;
2320 } 2299 }
2321 2300
2322 error::Error GLES2DecoderImpl::HandleLineWidth(uint32_t immediate_data_size, 2301 error::Error GLES2DecoderImpl::HandleLineWidth(uint32_t immediate_data_size,
2323 const void* cmd_data) { 2302 const void* cmd_data) {
2324 const gles2::cmds::LineWidth& c = 2303 const gles2::cmds::LineWidth& c =
2325 *static_cast<const gles2::cmds::LineWidth*>(cmd_data); 2304 *static_cast<const gles2::cmds::LineWidth*>(cmd_data);
2326 (void)c; 2305 (void)c;
2327 GLfloat width = static_cast<GLfloat>(c.width); 2306 GLfloat width = static_cast<GLfloat>(c.width);
2328 if (width <= 0.0f || std::isnan(width)) { 2307 if (width <= 0.0f || std::isnan(width)) {
(...skipping 18 matching lines...) Expand all
2347 } 2326 }
2348 2327
2349 error::Error GLES2DecoderImpl::HandlePauseTransformFeedback( 2328 error::Error GLES2DecoderImpl::HandlePauseTransformFeedback(
2350 uint32_t immediate_data_size, 2329 uint32_t immediate_data_size,
2351 const void* cmd_data) { 2330 const void* cmd_data) {
2352 if (!unsafe_es3_apis_enabled()) 2331 if (!unsafe_es3_apis_enabled())
2353 return error::kUnknownCommand; 2332 return error::kUnknownCommand;
2354 const gles2::cmds::PauseTransformFeedback& c = 2333 const gles2::cmds::PauseTransformFeedback& c =
2355 *static_cast<const gles2::cmds::PauseTransformFeedback*>(cmd_data); 2334 *static_cast<const gles2::cmds::PauseTransformFeedback*>(cmd_data);
2356 (void)c; 2335 (void)c;
2357 glPauseTransformFeedback(); 2336 DoPauseTransformFeedback();
2358 return error::kNoError; 2337 return error::kNoError;
2359 } 2338 }
2360 2339
2361 error::Error GLES2DecoderImpl::HandlePolygonOffset(uint32_t immediate_data_size, 2340 error::Error GLES2DecoderImpl::HandlePolygonOffset(uint32_t immediate_data_size,
2362 const void* cmd_data) { 2341 const void* cmd_data) {
2363 const gles2::cmds::PolygonOffset& c = 2342 const gles2::cmds::PolygonOffset& c =
2364 *static_cast<const gles2::cmds::PolygonOffset*>(cmd_data); 2343 *static_cast<const gles2::cmds::PolygonOffset*>(cmd_data);
2365 (void)c; 2344 (void)c;
2366 GLfloat factor = static_cast<GLfloat>(c.factor); 2345 GLfloat factor = static_cast<GLfloat>(c.factor);
2367 GLfloat units = static_cast<GLfloat>(c.units); 2346 GLfloat units = static_cast<GLfloat>(c.units);
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
2428 } 2407 }
2429 2408
2430 error::Error GLES2DecoderImpl::HandleResumeTransformFeedback( 2409 error::Error GLES2DecoderImpl::HandleResumeTransformFeedback(
2431 uint32_t immediate_data_size, 2410 uint32_t immediate_data_size,
2432 const void* cmd_data) { 2411 const void* cmd_data) {
2433 if (!unsafe_es3_apis_enabled()) 2412 if (!unsafe_es3_apis_enabled())
2434 return error::kUnknownCommand; 2413 return error::kUnknownCommand;
2435 const gles2::cmds::ResumeTransformFeedback& c = 2414 const gles2::cmds::ResumeTransformFeedback& c =
2436 *static_cast<const gles2::cmds::ResumeTransformFeedback*>(cmd_data); 2415 *static_cast<const gles2::cmds::ResumeTransformFeedback*>(cmd_data);
2437 (void)c; 2416 (void)c;
2438 glResumeTransformFeedback(); 2417 DoResumeTransformFeedback();
2439 return error::kNoError; 2418 return error::kNoError;
2440 } 2419 }
2441 2420
2442 error::Error GLES2DecoderImpl::HandleSampleCoverage( 2421 error::Error GLES2DecoderImpl::HandleSampleCoverage(
2443 uint32_t immediate_data_size, 2422 uint32_t immediate_data_size,
2444 const void* cmd_data) { 2423 const void* cmd_data) {
2445 const gles2::cmds::SampleCoverage& c = 2424 const gles2::cmds::SampleCoverage& c =
2446 *static_cast<const gles2::cmds::SampleCoverage*>(cmd_data); 2425 *static_cast<const gles2::cmds::SampleCoverage*>(cmd_data);
2447 (void)c; 2426 (void)c;
2448 GLclampf value = static_cast<GLclampf>(c.value); 2427 GLclampf value = static_cast<GLclampf>(c.value);
(...skipping 1852 matching lines...) Expand 10 before | Expand all | Expand 10 after
4301 4280
4302 error::Error GLES2DecoderImpl::HandleBeginTransformFeedback( 4281 error::Error GLES2DecoderImpl::HandleBeginTransformFeedback(
4303 uint32_t immediate_data_size, 4282 uint32_t immediate_data_size,
4304 const void* cmd_data) { 4283 const void* cmd_data) {
4305 if (!unsafe_es3_apis_enabled()) 4284 if (!unsafe_es3_apis_enabled())
4306 return error::kUnknownCommand; 4285 return error::kUnknownCommand;
4307 const gles2::cmds::BeginTransformFeedback& c = 4286 const gles2::cmds::BeginTransformFeedback& c =
4308 *static_cast<const gles2::cmds::BeginTransformFeedback*>(cmd_data); 4287 *static_cast<const gles2::cmds::BeginTransformFeedback*>(cmd_data);
4309 (void)c; 4288 (void)c;
4310 GLenum primitivemode = static_cast<GLenum>(c.primitivemode); 4289 GLenum primitivemode = static_cast<GLenum>(c.primitivemode);
4311 glBeginTransformFeedback(primitivemode); 4290 DoBeginTransformFeedback(primitivemode);
4312 return error::kNoError; 4291 return error::kNoError;
4313 } 4292 }
4314 4293
4315 error::Error GLES2DecoderImpl::HandleEndTransformFeedback( 4294 error::Error GLES2DecoderImpl::HandleEndTransformFeedback(
4316 uint32_t immediate_data_size, 4295 uint32_t immediate_data_size,
4317 const void* cmd_data) { 4296 const void* cmd_data) {
4318 if (!unsafe_es3_apis_enabled()) 4297 if (!unsafe_es3_apis_enabled())
4319 return error::kUnknownCommand; 4298 return error::kUnknownCommand;
4320 const gles2::cmds::EndTransformFeedback& c = 4299 const gles2::cmds::EndTransformFeedback& c =
4321 *static_cast<const gles2::cmds::EndTransformFeedback*>(cmd_data); 4300 *static_cast<const gles2::cmds::EndTransformFeedback*>(cmd_data);
4322 (void)c; 4301 (void)c;
4323 glEndTransformFeedback(); 4302 DoEndTransformFeedback();
4324 return error::kNoError; 4303 return error::kNoError;
4325 } 4304 }
4326 4305
4327 error::Error GLES2DecoderImpl::HandleInsertEventMarkerEXT( 4306 error::Error GLES2DecoderImpl::HandleInsertEventMarkerEXT(
4328 uint32_t immediate_data_size, 4307 uint32_t immediate_data_size,
4329 const void* cmd_data) { 4308 const void* cmd_data) {
4330 const gles2::cmds::InsertEventMarkerEXT& c = 4309 const gles2::cmds::InsertEventMarkerEXT& c =
4331 *static_cast<const gles2::cmds::InsertEventMarkerEXT*>(cmd_data); 4310 *static_cast<const gles2::cmds::InsertEventMarkerEXT*>(cmd_data);
4332 (void)c; 4311 (void)c;
4333 4312
(...skipping 795 matching lines...) Expand 10 before | Expand all | Expand 10 after
5129 state_.enable_flags.cached_sample_alpha_to_one_ext = enabled; 5108 state_.enable_flags.cached_sample_alpha_to_one_ext = enabled;
5130 return true; 5109 return true;
5131 } 5110 }
5132 return false; 5111 return false;
5133 default: 5112 default:
5134 NOTREACHED(); 5113 NOTREACHED();
5135 return false; 5114 return false;
5136 } 5115 }
5137 } 5116 }
5138 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 5117 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698