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

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

Issue 546026: Adds unit tests for glDrawArrays and glDrawBuffers... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 11 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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. DO NOT EDIT! 5 // This file is auto-generated. DO NOT EDIT!
6 6
7 // It is included by gles2_cmd_decoder.cc 7 // It is included by gles2_cmd_decoder.cc
8 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 8 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
9 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 9 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
10 10
11 parse_error::ParseError GLES2DecoderImpl::HandleActiveTexture( 11 parse_error::ParseError GLES2DecoderImpl::HandleActiveTexture(
12 uint32 immediate_data_size, const gles2::ActiveTexture& c) { 12 uint32 immediate_data_size, const gles2::ActiveTexture& c) {
13 GLenum texture = static_cast<GLenum>(c.texture); 13 GLenum texture = static_cast<GLenum>(c.texture);
14 glActiveTexture(texture); 14 glActiveTexture(texture);
15 return parse_error::kParseNoError; 15 return parse_error::kParseNoError;
16 } 16 }
17 17
18 parse_error::ParseError GLES2DecoderImpl::HandleAttachShader( 18 parse_error::ParseError GLES2DecoderImpl::HandleAttachShader(
19 uint32 immediate_data_size, const gles2::AttachShader& c) { 19 uint32 immediate_data_size, const gles2::AttachShader& c) {
20 GLuint program; 20 GLuint program;
21 if (!id_map_.GetServiceId(c.program, &program)) { 21 if (!id_manager_->GetServiceId(c.program, &program)) {
22 SetGLError(GL_INVALID_VALUE); 22 SetGLError(GL_INVALID_VALUE);
23 return parse_error::kParseNoError; 23 return parse_error::kParseNoError;
24 } 24 }
25 GLuint shader; 25 GLuint shader;
26 if (!id_map_.GetServiceId(c.shader, &shader)) { 26 if (!id_manager_->GetServiceId(c.shader, &shader)) {
27 SetGLError(GL_INVALID_VALUE); 27 SetGLError(GL_INVALID_VALUE);
28 return parse_error::kParseNoError; 28 return parse_error::kParseNoError;
29 } 29 }
30 glAttachShader(program, shader); 30 glAttachShader(program, shader);
31 return parse_error::kParseNoError; 31 return parse_error::kParseNoError;
32 } 32 }
33 33
34 parse_error::ParseError GLES2DecoderImpl::HandleBindAttribLocation( 34 parse_error::ParseError GLES2DecoderImpl::HandleBindAttribLocation(
35 uint32 immediate_data_size, const gles2::BindAttribLocation& c) { 35 uint32 immediate_data_size, const gles2::BindAttribLocation& c) {
36 GLuint program; 36 GLuint program;
37 if (!id_map_.GetServiceId(c.program, &program)) { 37 if (!id_manager_->GetServiceId(c.program, &program)) {
38 SetGLError(GL_INVALID_VALUE); 38 SetGLError(GL_INVALID_VALUE);
39 return parse_error::kParseNoError; 39 return parse_error::kParseNoError;
40 } 40 }
41 GLuint index = static_cast<GLuint>(c.index); 41 GLuint index = static_cast<GLuint>(c.index);
42 uint32 name_size = c.data_size; 42 uint32 name_size = c.data_size;
43 const char* name = GetSharedMemoryAs<const char*>( 43 const char* name = GetSharedMemoryAs<const char*>(
44 c.name_shm_id, c.name_shm_offset, name_size); 44 c.name_shm_id, c.name_shm_offset, name_size);
45 if (name == NULL) { 45 if (name == NULL) {
46 return parse_error::kParseOutOfBounds; 46 return parse_error::kParseOutOfBounds;
47 } 47 }
48 String name_str(name, name_size); 48 String name_str(name, name_size);
49 glBindAttribLocation(program, index, name_str.c_str()); 49 glBindAttribLocation(program, index, name_str.c_str());
50 return parse_error::kParseNoError; 50 return parse_error::kParseNoError;
51 } 51 }
52 52
53 parse_error::ParseError GLES2DecoderImpl::HandleBindAttribLocationImmediate( 53 parse_error::ParseError GLES2DecoderImpl::HandleBindAttribLocationImmediate(
54 uint32 immediate_data_size, const gles2::BindAttribLocationImmediate& c) { 54 uint32 immediate_data_size, const gles2::BindAttribLocationImmediate& c) {
55 GLuint program; 55 GLuint program;
56 if (!id_map_.GetServiceId(c.program, &program)) { 56 if (!id_manager_->GetServiceId(c.program, &program)) {
57 SetGLError(GL_INVALID_VALUE); 57 SetGLError(GL_INVALID_VALUE);
58 return parse_error::kParseNoError; 58 return parse_error::kParseNoError;
59 } 59 }
60 GLuint index = static_cast<GLuint>(c.index); 60 GLuint index = static_cast<GLuint>(c.index);
61 uint32 name_size = c.data_size; 61 uint32 name_size = c.data_size;
62 const char* name = GetImmediateDataAs<const char*>( 62 const char* name = GetImmediateDataAs<const char*>(
63 c, name_size, immediate_data_size); 63 c, name_size, immediate_data_size);
64 if (name == NULL) { 64 if (name == NULL) {
65 return parse_error::kParseOutOfBounds; 65 return parse_error::kParseOutOfBounds;
66 } 66 }
67 String name_str(name, name_size); 67 String name_str(name, name_size);
68 glBindAttribLocation(program, index, name_str.c_str()); 68 glBindAttribLocation(program, index, name_str.c_str());
69 return parse_error::kParseNoError; 69 return parse_error::kParseNoError;
70 } 70 }
71 71
72 parse_error::ParseError GLES2DecoderImpl::HandleBindBuffer( 72 parse_error::ParseError GLES2DecoderImpl::HandleBindBuffer(
73 uint32 immediate_data_size, const gles2::BindBuffer& c) { 73 uint32 immediate_data_size, const gles2::BindBuffer& c) {
74 GLenum target = static_cast<GLenum>(c.target); 74 GLenum target = static_cast<GLenum>(c.target);
75 GLuint buffer; 75 GLuint buffer;
76 if (!id_map_.GetServiceId(c.buffer, &buffer)) { 76 if (!id_manager_->GetServiceId(c.buffer, &buffer)) {
77 SetGLError(GL_INVALID_VALUE); 77 SetGLError(GL_INVALID_VALUE);
78 return parse_error::kParseNoError; 78 return parse_error::kParseNoError;
79 } 79 }
80 if (!ValidateGLenumBufferTarget(target)) { 80 if (!ValidateGLenumBufferTarget(target)) {
81 SetGLError(GL_INVALID_ENUM); 81 SetGLError(GL_INVALID_ENUM);
82 return parse_error::kParseNoError; 82 return parse_error::kParseNoError;
83 } 83 }
84 DoBindBuffer(target, buffer); 84 DoBindBuffer(target, buffer);
85 return parse_error::kParseNoError; 85 return parse_error::kParseNoError;
86 } 86 }
87 87
88 parse_error::ParseError GLES2DecoderImpl::HandleBindFramebuffer( 88 parse_error::ParseError GLES2DecoderImpl::HandleBindFramebuffer(
89 uint32 immediate_data_size, const gles2::BindFramebuffer& c) { 89 uint32 immediate_data_size, const gles2::BindFramebuffer& c) {
90 GLenum target = static_cast<GLenum>(c.target); 90 GLenum target = static_cast<GLenum>(c.target);
91 GLuint framebuffer; 91 GLuint framebuffer;
92 if (!id_map_.GetServiceId(c.framebuffer, &framebuffer)) { 92 if (!id_manager_->GetServiceId(c.framebuffer, &framebuffer)) {
93 SetGLError(GL_INVALID_VALUE); 93 SetGLError(GL_INVALID_VALUE);
94 return parse_error::kParseNoError; 94 return parse_error::kParseNoError;
95 } 95 }
96 if (!ValidateGLenumFrameBufferTarget(target)) { 96 if (!ValidateGLenumFrameBufferTarget(target)) {
97 SetGLError(GL_INVALID_ENUM); 97 SetGLError(GL_INVALID_ENUM);
98 return parse_error::kParseNoError; 98 return parse_error::kParseNoError;
99 } 99 }
100 glBindFramebufferEXT(target, framebuffer); 100 glBindFramebufferEXT(target, framebuffer);
101 return parse_error::kParseNoError; 101 return parse_error::kParseNoError;
102 } 102 }
103 103
104 parse_error::ParseError GLES2DecoderImpl::HandleBindRenderbuffer( 104 parse_error::ParseError GLES2DecoderImpl::HandleBindRenderbuffer(
105 uint32 immediate_data_size, const gles2::BindRenderbuffer& c) { 105 uint32 immediate_data_size, const gles2::BindRenderbuffer& c) {
106 GLenum target = static_cast<GLenum>(c.target); 106 GLenum target = static_cast<GLenum>(c.target);
107 GLuint renderbuffer; 107 GLuint renderbuffer;
108 if (!id_map_.GetServiceId(c.renderbuffer, &renderbuffer)) { 108 if (!id_manager_->GetServiceId(c.renderbuffer, &renderbuffer)) {
109 SetGLError(GL_INVALID_VALUE); 109 SetGLError(GL_INVALID_VALUE);
110 return parse_error::kParseNoError; 110 return parse_error::kParseNoError;
111 } 111 }
112 if (!ValidateGLenumRenderBufferTarget(target)) { 112 if (!ValidateGLenumRenderBufferTarget(target)) {
113 SetGLError(GL_INVALID_ENUM); 113 SetGLError(GL_INVALID_ENUM);
114 return parse_error::kParseNoError; 114 return parse_error::kParseNoError;
115 } 115 }
116 glBindRenderbufferEXT(target, renderbuffer); 116 glBindRenderbufferEXT(target, renderbuffer);
117 return parse_error::kParseNoError; 117 return parse_error::kParseNoError;
118 } 118 }
119 119
120 parse_error::ParseError GLES2DecoderImpl::HandleBindTexture( 120 parse_error::ParseError GLES2DecoderImpl::HandleBindTexture(
121 uint32 immediate_data_size, const gles2::BindTexture& c) { 121 uint32 immediate_data_size, const gles2::BindTexture& c) {
122 GLenum target = static_cast<GLenum>(c.target); 122 GLenum target = static_cast<GLenum>(c.target);
123 GLuint texture; 123 GLuint texture;
124 if (!id_map_.GetServiceId(c.texture, &texture)) { 124 if (!id_manager_->GetServiceId(c.texture, &texture)) {
125 SetGLError(GL_INVALID_VALUE); 125 SetGLError(GL_INVALID_VALUE);
126 return parse_error::kParseNoError; 126 return parse_error::kParseNoError;
127 } 127 }
128 if (!ValidateGLenumTextureBindTarget(target)) { 128 if (!ValidateGLenumTextureBindTarget(target)) {
129 SetGLError(GL_INVALID_ENUM); 129 SetGLError(GL_INVALID_ENUM);
130 return parse_error::kParseNoError; 130 return parse_error::kParseNoError;
131 } 131 }
132 glBindTexture(target, texture); 132 glBindTexture(target, texture);
133 return parse_error::kParseNoError; 133 return parse_error::kParseNoError;
134 } 134 }
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
298 GLboolean green = static_cast<GLboolean>(c.green); 298 GLboolean green = static_cast<GLboolean>(c.green);
299 GLboolean blue = static_cast<GLboolean>(c.blue); 299 GLboolean blue = static_cast<GLboolean>(c.blue);
300 GLboolean alpha = static_cast<GLboolean>(c.alpha); 300 GLboolean alpha = static_cast<GLboolean>(c.alpha);
301 glColorMask(red, green, blue, alpha); 301 glColorMask(red, green, blue, alpha);
302 return parse_error::kParseNoError; 302 return parse_error::kParseNoError;
303 } 303 }
304 304
305 parse_error::ParseError GLES2DecoderImpl::HandleCompileShader( 305 parse_error::ParseError GLES2DecoderImpl::HandleCompileShader(
306 uint32 immediate_data_size, const gles2::CompileShader& c) { 306 uint32 immediate_data_size, const gles2::CompileShader& c) {
307 GLuint shader; 307 GLuint shader;
308 if (!id_map_.GetServiceId(c.shader, &shader)) { 308 if (!id_manager_->GetServiceId(c.shader, &shader)) {
309 SetGLError(GL_INVALID_VALUE); 309 SetGLError(GL_INVALID_VALUE);
310 return parse_error::kParseNoError; 310 return parse_error::kParseNoError;
311 } 311 }
312 glCompileShader(shader); 312 glCompileShader(shader);
313 return parse_error::kParseNoError; 313 return parse_error::kParseNoError;
314 } 314 }
315 315
316 parse_error::ParseError GLES2DecoderImpl::HandleCompressedTexSubImage2D( 316 parse_error::ParseError GLES2DecoderImpl::HandleCompressedTexSubImage2D(
317 uint32 immediate_data_size, const gles2::CompressedTexSubImage2D& c) { 317 uint32 immediate_data_size, const gles2::CompressedTexSubImage2D& c) {
318 GLenum target = static_cast<GLenum>(c.target); 318 GLenum target = static_cast<GLenum>(c.target);
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
556 uint32 immediate_data_size, const gles2::DepthRangef& c) { 556 uint32 immediate_data_size, const gles2::DepthRangef& c) {
557 GLclampf zNear = static_cast<GLclampf>(c.zNear); 557 GLclampf zNear = static_cast<GLclampf>(c.zNear);
558 GLclampf zFar = static_cast<GLclampf>(c.zFar); 558 GLclampf zFar = static_cast<GLclampf>(c.zFar);
559 glDepthRange(zNear, zFar); 559 glDepthRange(zNear, zFar);
560 return parse_error::kParseNoError; 560 return parse_error::kParseNoError;
561 } 561 }
562 562
563 parse_error::ParseError GLES2DecoderImpl::HandleDetachShader( 563 parse_error::ParseError GLES2DecoderImpl::HandleDetachShader(
564 uint32 immediate_data_size, const gles2::DetachShader& c) { 564 uint32 immediate_data_size, const gles2::DetachShader& c) {
565 GLuint program; 565 GLuint program;
566 if (!id_map_.GetServiceId(c.program, &program)) { 566 if (!id_manager_->GetServiceId(c.program, &program)) {
567 SetGLError(GL_INVALID_VALUE); 567 SetGLError(GL_INVALID_VALUE);
568 return parse_error::kParseNoError; 568 return parse_error::kParseNoError;
569 } 569 }
570 GLuint shader; 570 GLuint shader;
571 if (!id_map_.GetServiceId(c.shader, &shader)) { 571 if (!id_manager_->GetServiceId(c.shader, &shader)) {
572 SetGLError(GL_INVALID_VALUE); 572 SetGLError(GL_INVALID_VALUE);
573 return parse_error::kParseNoError; 573 return parse_error::kParseNoError;
574 } 574 }
575 glDetachShader(program, shader); 575 glDetachShader(program, shader);
576 return parse_error::kParseNoError; 576 return parse_error::kParseNoError;
577 } 577 }
578 578
579 parse_error::ParseError GLES2DecoderImpl::HandleDisable( 579 parse_error::ParseError GLES2DecoderImpl::HandleDisable(
580 uint32 immediate_data_size, const gles2::Disable& c) { 580 uint32 immediate_data_size, const gles2::Disable& c) {
581 GLenum cap = static_cast<GLenum>(c.cap); 581 GLenum cap = static_cast<GLenum>(c.cap);
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
636 glFlush(); 636 glFlush();
637 return parse_error::kParseNoError; 637 return parse_error::kParseNoError;
638 } 638 }
639 639
640 parse_error::ParseError GLES2DecoderImpl::HandleFramebufferRenderbuffer( 640 parse_error::ParseError GLES2DecoderImpl::HandleFramebufferRenderbuffer(
641 uint32 immediate_data_size, const gles2::FramebufferRenderbuffer& c) { 641 uint32 immediate_data_size, const gles2::FramebufferRenderbuffer& c) {
642 GLenum target = static_cast<GLenum>(c.target); 642 GLenum target = static_cast<GLenum>(c.target);
643 GLenum attachment = static_cast<GLenum>(c.attachment); 643 GLenum attachment = static_cast<GLenum>(c.attachment);
644 GLenum renderbuffertarget = static_cast<GLenum>(c.renderbuffertarget); 644 GLenum renderbuffertarget = static_cast<GLenum>(c.renderbuffertarget);
645 GLuint renderbuffer; 645 GLuint renderbuffer;
646 if (!id_map_.GetServiceId(c.renderbuffer, &renderbuffer)) { 646 if (!id_manager_->GetServiceId(c.renderbuffer, &renderbuffer)) {
647 SetGLError(GL_INVALID_VALUE); 647 SetGLError(GL_INVALID_VALUE);
648 return parse_error::kParseNoError; 648 return parse_error::kParseNoError;
649 } 649 }
650 if (!ValidateGLenumFrameBufferTarget(target)) { 650 if (!ValidateGLenumFrameBufferTarget(target)) {
651 SetGLError(GL_INVALID_ENUM); 651 SetGLError(GL_INVALID_ENUM);
652 return parse_error::kParseNoError; 652 return parse_error::kParseNoError;
653 } 653 }
654 if (!ValidateGLenumAttachment(attachment)) { 654 if (!ValidateGLenumAttachment(attachment)) {
655 SetGLError(GL_INVALID_ENUM); 655 SetGLError(GL_INVALID_ENUM);
656 return parse_error::kParseNoError; 656 return parse_error::kParseNoError;
657 } 657 }
658 if (!ValidateGLenumRenderBufferTarget(renderbuffertarget)) { 658 if (!ValidateGLenumRenderBufferTarget(renderbuffertarget)) {
659 SetGLError(GL_INVALID_ENUM); 659 SetGLError(GL_INVALID_ENUM);
660 return parse_error::kParseNoError; 660 return parse_error::kParseNoError;
661 } 661 }
662 glFramebufferRenderbufferEXT( 662 glFramebufferRenderbufferEXT(
663 target, attachment, renderbuffertarget, renderbuffer); 663 target, attachment, renderbuffertarget, renderbuffer);
664 return parse_error::kParseNoError; 664 return parse_error::kParseNoError;
665 } 665 }
666 666
667 parse_error::ParseError GLES2DecoderImpl::HandleFramebufferTexture2D( 667 parse_error::ParseError GLES2DecoderImpl::HandleFramebufferTexture2D(
668 uint32 immediate_data_size, const gles2::FramebufferTexture2D& c) { 668 uint32 immediate_data_size, const gles2::FramebufferTexture2D& c) {
669 GLenum target = static_cast<GLenum>(c.target); 669 GLenum target = static_cast<GLenum>(c.target);
670 GLenum attachment = static_cast<GLenum>(c.attachment); 670 GLenum attachment = static_cast<GLenum>(c.attachment);
671 GLenum textarget = static_cast<GLenum>(c.textarget); 671 GLenum textarget = static_cast<GLenum>(c.textarget);
672 GLuint texture; 672 GLuint texture;
673 if (!id_map_.GetServiceId(c.texture, &texture)) { 673 if (!id_manager_->GetServiceId(c.texture, &texture)) {
674 SetGLError(GL_INVALID_VALUE); 674 SetGLError(GL_INVALID_VALUE);
675 return parse_error::kParseNoError; 675 return parse_error::kParseNoError;
676 } 676 }
677 GLint level = static_cast<GLint>(c.level); 677 GLint level = static_cast<GLint>(c.level);
678 if (!ValidateGLenumFrameBufferTarget(target)) { 678 if (!ValidateGLenumFrameBufferTarget(target)) {
679 SetGLError(GL_INVALID_ENUM); 679 SetGLError(GL_INVALID_ENUM);
680 return parse_error::kParseNoError; 680 return parse_error::kParseNoError;
681 } 681 }
682 if (!ValidateGLenumAttachment(attachment)) { 682 if (!ValidateGLenumAttachment(attachment)) {
683 SetGLError(GL_INVALID_ENUM); 683 SetGLError(GL_INVALID_ENUM);
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
936 if (params == NULL) { 936 if (params == NULL) {
937 return parse_error::kParseOutOfBounds; 937 return parse_error::kParseOutOfBounds;
938 } 938 }
939 glGetIntegerv(pname, params); 939 glGetIntegerv(pname, params);
940 return parse_error::kParseNoError; 940 return parse_error::kParseNoError;
941 } 941 }
942 942
943 parse_error::ParseError GLES2DecoderImpl::HandleGetProgramiv( 943 parse_error::ParseError GLES2DecoderImpl::HandleGetProgramiv(
944 uint32 immediate_data_size, const gles2::GetProgramiv& c) { 944 uint32 immediate_data_size, const gles2::GetProgramiv& c) {
945 GLuint program; 945 GLuint program;
946 if (!id_map_.GetServiceId(c.program, &program)) { 946 if (!id_manager_->GetServiceId(c.program, &program)) {
947 SetGLError(GL_INVALID_VALUE); 947 SetGLError(GL_INVALID_VALUE);
948 return parse_error::kParseNoError; 948 return parse_error::kParseNoError;
949 } 949 }
950 GLenum pname = static_cast<GLenum>(c.pname); 950 GLenum pname = static_cast<GLenum>(c.pname);
951 GLint* params; 951 GLint* params;
952 GLsizei num_values = util_.GLGetNumValuesReturned(pname); 952 GLsizei num_values = util_.GLGetNumValuesReturned(pname);
953 uint32 params_size = num_values * sizeof(*params); 953 uint32 params_size = num_values * sizeof(*params);
954 params = GetSharedMemoryAs<GLint*>( 954 params = GetSharedMemoryAs<GLint*>(
955 c.params_shm_id, c.params_shm_offset, params_size); 955 c.params_shm_id, c.params_shm_offset, params_size);
956 if (!ValidateGLenumProgramParameter(pname)) { 956 if (!ValidateGLenumProgramParameter(pname)) {
957 SetGLError(GL_INVALID_ENUM); 957 SetGLError(GL_INVALID_ENUM);
958 return parse_error::kParseNoError; 958 return parse_error::kParseNoError;
959 } 959 }
960 if (params == NULL) { 960 if (params == NULL) {
961 return parse_error::kParseOutOfBounds; 961 return parse_error::kParseOutOfBounds;
962 } 962 }
963 glGetProgramiv(program, pname, params); 963 glGetProgramiv(program, pname, params);
964 return parse_error::kParseNoError; 964 return parse_error::kParseNoError;
965 } 965 }
966 966
967 parse_error::ParseError GLES2DecoderImpl::HandleGetProgramInfoLog( 967 parse_error::ParseError GLES2DecoderImpl::HandleGetProgramInfoLog(
968 uint32 immediate_data_size, const gles2::GetProgramInfoLog& c) { 968 uint32 immediate_data_size, const gles2::GetProgramInfoLog& c) {
969 GLuint program; 969 GLuint program;
970 if (!id_map_.GetServiceId(c.program, &program)) { 970 if (!id_manager_->GetServiceId(c.program, &program)) {
971 SetGLError(GL_INVALID_VALUE); 971 SetGLError(GL_INVALID_VALUE);
972 return parse_error::kParseNoError; 972 return parse_error::kParseNoError;
973 } 973 }
974 GLsizei bufsize = static_cast<GLsizei>(c.bufsize); 974 GLsizei bufsize = static_cast<GLsizei>(c.bufsize);
975 uint32 size_shm_id = c.length_shm_id; 975 uint32 size_shm_id = c.length_shm_id;
976 uint32 size_shm_offset = c.length_shm_offset; 976 uint32 size_shm_offset = c.length_shm_offset;
977 GLsizei* length = NULL; 977 GLsizei* length = NULL;
978 if (size_shm_id != 0 || size_shm_offset != 0) { 978 if (size_shm_id != 0 || size_shm_offset != 0) {
979 length = GetSharedMemoryAs<GLsizei*>( 979 length = GetSharedMemoryAs<GLsizei*>(
980 size_shm_id, size_shm_offset, sizeof(*length)); 980 size_shm_id, size_shm_offset, sizeof(*length));
(...skipping 30 matching lines...) Expand all
1011 if (params == NULL) { 1011 if (params == NULL) {
1012 return parse_error::kParseOutOfBounds; 1012 return parse_error::kParseOutOfBounds;
1013 } 1013 }
1014 glGetRenderbufferParameterivEXT(target, pname, params); 1014 glGetRenderbufferParameterivEXT(target, pname, params);
1015 return parse_error::kParseNoError; 1015 return parse_error::kParseNoError;
1016 } 1016 }
1017 1017
1018 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderiv( 1018 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderiv(
1019 uint32 immediate_data_size, const gles2::GetShaderiv& c) { 1019 uint32 immediate_data_size, const gles2::GetShaderiv& c) {
1020 GLuint shader; 1020 GLuint shader;
1021 if (!id_map_.GetServiceId(c.shader, &shader)) { 1021 if (!id_manager_->GetServiceId(c.shader, &shader)) {
1022 SetGLError(GL_INVALID_VALUE); 1022 SetGLError(GL_INVALID_VALUE);
1023 return parse_error::kParseNoError; 1023 return parse_error::kParseNoError;
1024 } 1024 }
1025 GLenum pname = static_cast<GLenum>(c.pname); 1025 GLenum pname = static_cast<GLenum>(c.pname);
1026 GLint* params; 1026 GLint* params;
1027 GLsizei num_values = util_.GLGetNumValuesReturned(pname); 1027 GLsizei num_values = util_.GLGetNumValuesReturned(pname);
1028 uint32 params_size = num_values * sizeof(*params); 1028 uint32 params_size = num_values * sizeof(*params);
1029 params = GetSharedMemoryAs<GLint*>( 1029 params = GetSharedMemoryAs<GLint*>(
1030 c.params_shm_id, c.params_shm_offset, params_size); 1030 c.params_shm_id, c.params_shm_offset, params_size);
1031 if (!ValidateGLenumShaderParameter(pname)) { 1031 if (!ValidateGLenumShaderParameter(pname)) {
1032 SetGLError(GL_INVALID_ENUM); 1032 SetGLError(GL_INVALID_ENUM);
1033 return parse_error::kParseNoError; 1033 return parse_error::kParseNoError;
1034 } 1034 }
1035 if (params == NULL) { 1035 if (params == NULL) {
1036 return parse_error::kParseOutOfBounds; 1036 return parse_error::kParseOutOfBounds;
1037 } 1037 }
1038 glGetShaderiv(shader, pname, params); 1038 glGetShaderiv(shader, pname, params);
1039 return parse_error::kParseNoError; 1039 return parse_error::kParseNoError;
1040 } 1040 }
1041 1041
1042 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderInfoLog( 1042 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderInfoLog(
1043 uint32 immediate_data_size, const gles2::GetShaderInfoLog& c) { 1043 uint32 immediate_data_size, const gles2::GetShaderInfoLog& c) {
1044 GLuint shader; 1044 GLuint shader;
1045 if (!id_map_.GetServiceId(c.shader, &shader)) { 1045 if (!id_manager_->GetServiceId(c.shader, &shader)) {
1046 SetGLError(GL_INVALID_VALUE); 1046 SetGLError(GL_INVALID_VALUE);
1047 return parse_error::kParseNoError; 1047 return parse_error::kParseNoError;
1048 } 1048 }
1049 GLsizei bufsize = static_cast<GLsizei>(c.bufsize); 1049 GLsizei bufsize = static_cast<GLsizei>(c.bufsize);
1050 uint32 size_shm_id = c.length_shm_id; 1050 uint32 size_shm_id = c.length_shm_id;
1051 uint32 size_shm_offset = c.length_shm_offset; 1051 uint32 size_shm_offset = c.length_shm_offset;
1052 GLsizei* length = NULL; 1052 GLsizei* length = NULL;
1053 if (size_shm_id != 0 || size_shm_offset != 0) { 1053 if (size_shm_id != 0 || size_shm_offset != 0) {
1054 length = GetSharedMemoryAs<GLsizei*>( 1054 length = GetSharedMemoryAs<GLsizei*>(
1055 size_shm_id, size_shm_offset, sizeof(*length)); 1055 size_shm_id, size_shm_offset, sizeof(*length));
1056 if (!length) { 1056 if (!length) {
1057 return parse_error::kParseOutOfBounds; 1057 return parse_error::kParseOutOfBounds;
1058 } 1058 }
1059 } 1059 }
1060 char* infolog = GetSharedMemoryAs<char*>( 1060 char* infolog = GetSharedMemoryAs<char*>(
1061 c.infolog_shm_id, c.infolog_shm_offset, bufsize); 1061 c.infolog_shm_id, c.infolog_shm_offset, bufsize);
1062 if (infolog == NULL) { 1062 if (infolog == NULL) {
1063 return parse_error::kParseOutOfBounds; 1063 return parse_error::kParseOutOfBounds;
1064 } 1064 }
1065 glGetShaderInfoLog(shader, bufsize, length, infolog); 1065 glGetShaderInfoLog(shader, bufsize, length, infolog);
1066 return parse_error::kParseNoError; 1066 return parse_error::kParseNoError;
1067 } 1067 }
1068 1068
1069 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderSource( 1069 parse_error::ParseError GLES2DecoderImpl::HandleGetShaderSource(
1070 uint32 immediate_data_size, const gles2::GetShaderSource& c) { 1070 uint32 immediate_data_size, const gles2::GetShaderSource& c) {
1071 GLuint shader; 1071 GLuint shader;
1072 if (!id_map_.GetServiceId(c.shader, &shader)) { 1072 if (!id_manager_->GetServiceId(c.shader, &shader)) {
1073 SetGLError(GL_INVALID_VALUE); 1073 SetGLError(GL_INVALID_VALUE);
1074 return parse_error::kParseNoError; 1074 return parse_error::kParseNoError;
1075 } 1075 }
1076 GLsizei bufsize = static_cast<GLsizei>(c.bufsize); 1076 GLsizei bufsize = static_cast<GLsizei>(c.bufsize);
1077 uint32 size_shm_id = c.length_shm_id; 1077 uint32 size_shm_id = c.length_shm_id;
1078 uint32 size_shm_offset = c.length_shm_offset; 1078 uint32 size_shm_offset = c.length_shm_offset;
1079 GLsizei* length = NULL; 1079 GLsizei* length = NULL;
1080 if (size_shm_id != 0 || size_shm_offset != 0) { 1080 if (size_shm_id != 0 || size_shm_offset != 0) {
1081 length = GetSharedMemoryAs<GLsizei*>( 1081 length = GetSharedMemoryAs<GLsizei*>(
1082 size_shm_id, size_shm_offset, sizeof(*length)); 1082 size_shm_id, size_shm_offset, sizeof(*length));
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
1204 SetGLError(GL_INVALID_ENUM); 1204 SetGLError(GL_INVALID_ENUM);
1205 return parse_error::kParseNoError; 1205 return parse_error::kParseNoError;
1206 } 1206 }
1207 glHint(target, mode); 1207 glHint(target, mode);
1208 return parse_error::kParseNoError; 1208 return parse_error::kParseNoError;
1209 } 1209 }
1210 1210
1211 parse_error::ParseError GLES2DecoderImpl::HandleIsBuffer( 1211 parse_error::ParseError GLES2DecoderImpl::HandleIsBuffer(
1212 uint32 immediate_data_size, const gles2::IsBuffer& c) { 1212 uint32 immediate_data_size, const gles2::IsBuffer& c) {
1213 GLuint buffer; 1213 GLuint buffer;
1214 if (!id_map_.GetServiceId(c.buffer, &buffer)) { 1214 if (!id_manager_->GetServiceId(c.buffer, &buffer)) {
1215 SetGLError(GL_INVALID_VALUE); 1215 SetGLError(GL_INVALID_VALUE);
1216 return parse_error::kParseNoError; 1216 return parse_error::kParseNoError;
1217 } 1217 }
1218 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1218 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1219 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1219 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1220 *result_dst = glIsBuffer(buffer); 1220 *result_dst = glIsBuffer(buffer);
1221 return parse_error::kParseNoError; 1221 return parse_error::kParseNoError;
1222 } 1222 }
1223 1223
1224 parse_error::ParseError GLES2DecoderImpl::HandleIsEnabled( 1224 parse_error::ParseError GLES2DecoderImpl::HandleIsEnabled(
1225 uint32 immediate_data_size, const gles2::IsEnabled& c) { 1225 uint32 immediate_data_size, const gles2::IsEnabled& c) {
1226 GLenum cap = static_cast<GLenum>(c.cap); 1226 GLenum cap = static_cast<GLenum>(c.cap);
1227 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1227 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1228 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1228 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1229 if (!ValidateGLenumCapability(cap)) { 1229 if (!ValidateGLenumCapability(cap)) {
1230 SetGLError(GL_INVALID_ENUM); 1230 SetGLError(GL_INVALID_ENUM);
1231 return parse_error::kParseNoError; 1231 return parse_error::kParseNoError;
1232 } 1232 }
1233 *result_dst = glIsEnabled(cap); 1233 *result_dst = glIsEnabled(cap);
1234 return parse_error::kParseNoError; 1234 return parse_error::kParseNoError;
1235 } 1235 }
1236 1236
1237 parse_error::ParseError GLES2DecoderImpl::HandleIsFramebuffer( 1237 parse_error::ParseError GLES2DecoderImpl::HandleIsFramebuffer(
1238 uint32 immediate_data_size, const gles2::IsFramebuffer& c) { 1238 uint32 immediate_data_size, const gles2::IsFramebuffer& c) {
1239 GLuint framebuffer; 1239 GLuint framebuffer;
1240 if (!id_map_.GetServiceId(c.framebuffer, &framebuffer)) { 1240 if (!id_manager_->GetServiceId(c.framebuffer, &framebuffer)) {
1241 SetGLError(GL_INVALID_VALUE); 1241 SetGLError(GL_INVALID_VALUE);
1242 return parse_error::kParseNoError; 1242 return parse_error::kParseNoError;
1243 } 1243 }
1244 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1244 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1245 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1245 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1246 *result_dst = glIsFramebufferEXT(framebuffer); 1246 *result_dst = glIsFramebufferEXT(framebuffer);
1247 return parse_error::kParseNoError; 1247 return parse_error::kParseNoError;
1248 } 1248 }
1249 1249
1250 parse_error::ParseError GLES2DecoderImpl::HandleIsProgram( 1250 parse_error::ParseError GLES2DecoderImpl::HandleIsProgram(
1251 uint32 immediate_data_size, const gles2::IsProgram& c) { 1251 uint32 immediate_data_size, const gles2::IsProgram& c) {
1252 GLuint program; 1252 GLuint program;
1253 if (!id_map_.GetServiceId(c.program, &program)) { 1253 if (!id_manager_->GetServiceId(c.program, &program)) {
1254 SetGLError(GL_INVALID_VALUE); 1254 SetGLError(GL_INVALID_VALUE);
1255 return parse_error::kParseNoError; 1255 return parse_error::kParseNoError;
1256 } 1256 }
1257 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1257 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1258 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1258 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1259 *result_dst = glIsProgram(program); 1259 *result_dst = glIsProgram(program);
1260 return parse_error::kParseNoError; 1260 return parse_error::kParseNoError;
1261 } 1261 }
1262 1262
1263 parse_error::ParseError GLES2DecoderImpl::HandleIsRenderbuffer( 1263 parse_error::ParseError GLES2DecoderImpl::HandleIsRenderbuffer(
1264 uint32 immediate_data_size, const gles2::IsRenderbuffer& c) { 1264 uint32 immediate_data_size, const gles2::IsRenderbuffer& c) {
1265 GLuint renderbuffer; 1265 GLuint renderbuffer;
1266 if (!id_map_.GetServiceId(c.renderbuffer, &renderbuffer)) { 1266 if (!id_manager_->GetServiceId(c.renderbuffer, &renderbuffer)) {
1267 SetGLError(GL_INVALID_VALUE); 1267 SetGLError(GL_INVALID_VALUE);
1268 return parse_error::kParseNoError; 1268 return parse_error::kParseNoError;
1269 } 1269 }
1270 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1270 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1271 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1271 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1272 *result_dst = glIsRenderbufferEXT(renderbuffer); 1272 *result_dst = glIsRenderbufferEXT(renderbuffer);
1273 return parse_error::kParseNoError; 1273 return parse_error::kParseNoError;
1274 } 1274 }
1275 1275
1276 parse_error::ParseError GLES2DecoderImpl::HandleIsShader( 1276 parse_error::ParseError GLES2DecoderImpl::HandleIsShader(
1277 uint32 immediate_data_size, const gles2::IsShader& c) { 1277 uint32 immediate_data_size, const gles2::IsShader& c) {
1278 GLuint shader; 1278 GLuint shader;
1279 if (!id_map_.GetServiceId(c.shader, &shader)) { 1279 if (!id_manager_->GetServiceId(c.shader, &shader)) {
1280 SetGLError(GL_INVALID_VALUE); 1280 SetGLError(GL_INVALID_VALUE);
1281 return parse_error::kParseNoError; 1281 return parse_error::kParseNoError;
1282 } 1282 }
1283 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1283 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1284 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1284 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1285 *result_dst = glIsShader(shader); 1285 *result_dst = glIsShader(shader);
1286 return parse_error::kParseNoError; 1286 return parse_error::kParseNoError;
1287 } 1287 }
1288 1288
1289 parse_error::ParseError GLES2DecoderImpl::HandleIsTexture( 1289 parse_error::ParseError GLES2DecoderImpl::HandleIsTexture(
1290 uint32 immediate_data_size, const gles2::IsTexture& c) { 1290 uint32 immediate_data_size, const gles2::IsTexture& c) {
1291 GLuint texture; 1291 GLuint texture;
1292 if (!id_map_.GetServiceId(c.texture, &texture)) { 1292 if (!id_manager_->GetServiceId(c.texture, &texture)) {
1293 SetGLError(GL_INVALID_VALUE); 1293 SetGLError(GL_INVALID_VALUE);
1294 return parse_error::kParseNoError; 1294 return parse_error::kParseNoError;
1295 } 1295 }
1296 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>( 1296 GLboolean* result_dst = GetSharedMemoryAs<GLboolean*>(
1297 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst)); 1297 c.result_shm_id, c.result_shm_offset, sizeof(*result_dst));
1298 *result_dst = glIsTexture(texture); 1298 *result_dst = glIsTexture(texture);
1299 return parse_error::kParseNoError; 1299 return parse_error::kParseNoError;
1300 } 1300 }
1301 1301
1302 parse_error::ParseError GLES2DecoderImpl::HandleLineWidth( 1302 parse_error::ParseError GLES2DecoderImpl::HandleLineWidth(
1303 uint32 immediate_data_size, const gles2::LineWidth& c) { 1303 uint32 immediate_data_size, const gles2::LineWidth& c) {
1304 GLfloat width = static_cast<GLfloat>(c.width); 1304 GLfloat width = static_cast<GLfloat>(c.width);
1305 glLineWidth(width); 1305 glLineWidth(width);
1306 return parse_error::kParseNoError; 1306 return parse_error::kParseNoError;
1307 } 1307 }
1308 1308
1309 parse_error::ParseError GLES2DecoderImpl::HandleLinkProgram( 1309 parse_error::ParseError GLES2DecoderImpl::HandleLinkProgram(
1310 uint32 immediate_data_size, const gles2::LinkProgram& c) { 1310 uint32 immediate_data_size, const gles2::LinkProgram& c) {
1311 GLuint program; 1311 GLuint program;
1312 if (!id_map_.GetServiceId(c.program, &program)) { 1312 if (!id_manager_->GetServiceId(c.program, &program)) {
1313 SetGLError(GL_INVALID_VALUE); 1313 SetGLError(GL_INVALID_VALUE);
1314 return parse_error::kParseNoError; 1314 return parse_error::kParseNoError;
1315 } 1315 }
1316 DoLinkProgram(program); 1316 DoLinkProgram(program);
1317 return parse_error::kParseNoError; 1317 return parse_error::kParseNoError;
1318 } 1318 }
1319 1319
1320 parse_error::ParseError GLES2DecoderImpl::HandlePolygonOffset( 1320 parse_error::ParseError GLES2DecoderImpl::HandlePolygonOffset(
1321 uint32 immediate_data_size, const gles2::PolygonOffset& c) { 1321 uint32 immediate_data_size, const gles2::PolygonOffset& c) {
1322 GLfloat factor = static_cast<GLfloat>(c.factor); 1322 GLfloat factor = static_cast<GLfloat>(c.factor);
(...skipping 761 matching lines...) Expand 10 before | Expand all | Expand 10 after
2084 if (value == NULL) { 2084 if (value == NULL) {
2085 return parse_error::kParseOutOfBounds; 2085 return parse_error::kParseOutOfBounds;
2086 } 2086 }
2087 glUniformMatrix4fv(location, count, transpose, value); 2087 glUniformMatrix4fv(location, count, transpose, value);
2088 return parse_error::kParseNoError; 2088 return parse_error::kParseNoError;
2089 } 2089 }
2090 2090
2091 parse_error::ParseError GLES2DecoderImpl::HandleUseProgram( 2091 parse_error::ParseError GLES2DecoderImpl::HandleUseProgram(
2092 uint32 immediate_data_size, const gles2::UseProgram& c) { 2092 uint32 immediate_data_size, const gles2::UseProgram& c) {
2093 GLuint program; 2093 GLuint program;
2094 if (!id_map_.GetServiceId(c.program, &program)) { 2094 if (!id_manager_->GetServiceId(c.program, &program)) {
2095 SetGLError(GL_INVALID_VALUE); 2095 SetGLError(GL_INVALID_VALUE);
2096 return parse_error::kParseNoError; 2096 return parse_error::kParseNoError;
2097 } 2097 }
2098 DoUseProgram(program); 2098 DoUseProgram(program);
2099 return parse_error::kParseNoError; 2099 return parse_error::kParseNoError;
2100 } 2100 }
2101 2101
2102 parse_error::ParseError GLES2DecoderImpl::HandleValidateProgram( 2102 parse_error::ParseError GLES2DecoderImpl::HandleValidateProgram(
2103 uint32 immediate_data_size, const gles2::ValidateProgram& c) { 2103 uint32 immediate_data_size, const gles2::ValidateProgram& c) {
2104 GLuint program; 2104 GLuint program;
2105 if (!id_map_.GetServiceId(c.program, &program)) { 2105 if (!id_manager_->GetServiceId(c.program, &program)) {
2106 SetGLError(GL_INVALID_VALUE); 2106 SetGLError(GL_INVALID_VALUE);
2107 return parse_error::kParseNoError; 2107 return parse_error::kParseNoError;
2108 } 2108 }
2109 glValidateProgram(program); 2109 glValidateProgram(program);
2110 return parse_error::kParseNoError; 2110 return parse_error::kParseNoError;
2111 } 2111 }
2112 2112
2113 parse_error::ParseError GLES2DecoderImpl::HandleVertexAttrib1f( 2113 parse_error::ParseError GLES2DecoderImpl::HandleVertexAttrib1f(
2114 uint32 immediate_data_size, const gles2::VertexAttrib1f& c) { 2114 uint32 immediate_data_size, const gles2::VertexAttrib1f& c) {
2115 GLuint indx = static_cast<GLuint>(c.indx); 2115 GLuint indx = static_cast<GLuint>(c.indx);
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
2271 } 2271 }
2272 2272
2273 parse_error::ParseError GLES2DecoderImpl::HandleSwapBuffers( 2273 parse_error::ParseError GLES2DecoderImpl::HandleSwapBuffers(
2274 uint32 immediate_data_size, const gles2::SwapBuffers& c) { 2274 uint32 immediate_data_size, const gles2::SwapBuffers& c) {
2275 DoSwapBuffers(); 2275 DoSwapBuffers();
2276 return parse_error::kParseNoError; 2276 return parse_error::kParseNoError;
2277 } 2277 }
2278 2278
2279 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 2279 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
2280 2280
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698