| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 # | 2 # |
| 3 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 """code generator for GLES2 command buffers.""" | 7 """code generator for GLES2 command buffers.""" |
| 8 | 8 |
| 9 import os | 9 import os |
| 10 import os.path | 10 import os.path |
| (...skipping 5244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5255 file.Write("}\n\n"); | 5255 file.Write("}\n\n"); |
| 5256 file.Close() | 5256 file.Close() |
| 5257 | 5257 |
| 5258 def WritePepperGLES2Interface(self, filename): | 5258 def WritePepperGLES2Interface(self, filename): |
| 5259 """Writes the Pepper OpenGLES interface definition.""" | 5259 """Writes the Pepper OpenGLES interface definition.""" |
| 5260 file = CHeaderWriter( | 5260 file = CHeaderWriter( |
| 5261 filename, | 5261 filename, |
| 5262 "// OpenGL ES interface.\n", | 5262 "// OpenGL ES interface.\n", |
| 5263 3) | 5263 3) |
| 5264 | 5264 |
| 5265 file.Write("#include \"ppapi/c/pp_resource.h\"\n\n") |
| 5266 |
| 5265 file.Write("#ifndef __gl2_h_\n") | 5267 file.Write("#ifndef __gl2_h_\n") |
| 5266 for (k, v) in _GL_TYPES.iteritems(): | 5268 for (k, v) in _GL_TYPES.iteritems(): |
| 5267 file.Write("typedef %s %s;\n" % (v, k)) | 5269 file.Write("typedef %s %s;\n" % (v, k)) |
| 5268 file.Write("#endif // __gl2_h_\n\n") | 5270 file.Write("#endif // __gl2_h_\n\n") |
| 5269 | 5271 |
| 5270 file.Write("#define PPB_OPENGLES2_DEV_INTERFACE \"PPB_OpenGLES(Dev);2.0\"\n"
) | 5272 file.Write("#define PPB_OPENGLES2_DEV_INTERFACE \"PPB_OpenGLES(Dev);2.0\"\n"
) |
| 5271 | 5273 |
| 5272 file.Write("\nstruct PPB_OpenGLES2_Dev {\n") | 5274 file.Write("\nstruct PPB_OpenGLES2_Dev {\n") |
| 5273 for func in self.original_functions: | 5275 for func in self.original_functions: |
| 5274 if not func.IsCoreGLFunction(): | 5276 if not func.IsCoreGLFunction(): |
| (...skipping 10 matching lines...) Expand all Loading... |
| 5285 | 5287 |
| 5286 file.Close() | 5288 file.Close() |
| 5287 | 5289 |
| 5288 def WritePepperGLES2Implementation(self, filename): | 5290 def WritePepperGLES2Implementation(self, filename): |
| 5289 """Writes the Pepper OpenGLES interface implementation.""" | 5291 """Writes the Pepper OpenGLES interface implementation.""" |
| 5290 | 5292 |
| 5291 file = CWriter(filename) | 5293 file = CWriter(filename) |
| 5292 file.Write(_LICENSE) | 5294 file.Write(_LICENSE) |
| 5293 file.Write("// This file is auto-generated. DO NOT EDIT!\n\n") | 5295 file.Write("// This file is auto-generated. DO NOT EDIT!\n\n") |
| 5294 | 5296 |
| 5295 file.Write("#include \"webkit/plugins/ppapi/ppb_graphics_3d_impl.h\"\n\n") | 5297 file.Write("#include \"webkit/plugins/ppapi/ppb_opengles_impl.h\"\n\n") |
| 5296 | 5298 |
| 5297 file.Write("#include \"gpu/command_buffer/client/gles2_implementation.h\"") | 5299 file.Write("#include \"gpu/command_buffer/client/gles2_implementation.h\"\n"
) |
| 5298 file.Write("\n#include \"ppapi/c/dev/ppb_opengles_dev.h\"\n\n") | 5300 file.Write("#include \"ppapi/c/dev/ppb_opengles_dev.h\"\n") |
| 5301 file.Write("#include \"webkit/plugins/ppapi/ppb_context_3d_impl.h\"\n\n") |
| 5299 | 5302 |
| 5300 file.Write("namespace webkit {\n") | 5303 file.Write("namespace webkit {\n") |
| 5301 file.Write("namespace ppapi {\n\n") | 5304 file.Write("namespace ppapi {\n\n") |
| 5302 file.Write("namespace {\n\n") | 5305 file.Write("namespace {\n\n") |
| 5303 | 5306 |
| 5304 for func in self.original_functions: | 5307 for func in self.original_functions: |
| 5305 if not func.IsCoreGLFunction(): | 5308 if not func.IsCoreGLFunction(): |
| 5306 continue | 5309 continue |
| 5307 | 5310 |
| 5308 original_arg = func.MakeTypedOriginalArgString("") | 5311 original_arg = func.MakeTypedOriginalArgString("") |
| 5309 context_arg = "PP_Resource context" | 5312 context_arg = "PP_Resource context_id" |
| 5310 if len(original_arg): | 5313 if len(original_arg): |
| 5311 arg = context_arg + ", " + original_arg | 5314 arg = context_arg + ", " + original_arg |
| 5312 else: | 5315 else: |
| 5313 arg = context_arg | 5316 arg = context_arg |
| 5314 file.Write("%s %s(%s) {\n" % (func.return_type, func.name, arg)) | 5317 file.Write("%s %s(%s) {\n" % (func.return_type, func.name, arg)) |
| 5315 | 5318 |
| 5316 file.Write(""" scoped_refptr<PPB_Graphics3D_Impl> graphics_3d = | 5319 file.Write(""" scoped_refptr<PPB_Context3D_Impl> context = |
| 5317 Resource::GetAs<PPB_Graphics3D_Impl>(context); | 5320 Resource::GetAs<PPB_Context3D_Impl>(context_id); |
| 5318 """) | 5321 """) |
| 5319 | 5322 |
| 5320 return_str = "" if func.return_type == "void" else "return " | 5323 return_str = "" if func.return_type == "void" else "return " |
| 5321 file.Write(" %sgraphics_3d->impl()->%s(%s);\n" % | 5324 file.Write(" %scontext->gles2_impl()->%s(%s);\n" % |
| 5322 (return_str, func.original_name, | 5325 (return_str, func.original_name, |
| 5323 func.MakeOriginalArgString(""))) | 5326 func.MakeOriginalArgString(""))) |
| 5324 file.Write("}\n\n") | 5327 file.Write("}\n\n") |
| 5325 | 5328 |
| 5326 file.Write("\nconst struct PPB_OpenGLES2_Dev ppb_opengles2 = {\n") | 5329 file.Write("\nconst struct PPB_OpenGLES2_Dev ppb_opengles2 = {\n") |
| 5327 file.Write(" &") | 5330 file.Write(" &") |
| 5328 file.Write(",\n &".join( | 5331 file.Write(",\n &".join( |
| 5329 f.name for f in self.original_functions if f.IsCoreGLFunction())) | 5332 f.name for f in self.original_functions if f.IsCoreGLFunction())) |
| 5330 file.Write("\n") | 5333 file.Write("\n") |
| 5331 file.Write("};\n\n") | 5334 file.Write("};\n\n") |
| 5332 | 5335 |
| 5333 file.Write("} // namespace\n") | 5336 file.Write("} // namespace\n") |
| 5334 | 5337 |
| 5335 file.Write(""" | 5338 file.Write(""" |
| 5336 const PPB_OpenGLES2_Dev* PPB_Graphics3D_Impl::GetOpenGLES2Interface() { | 5339 const PPB_OpenGLES2_Dev* PPB_OpenGLES_Impl::GetInterface() { |
| 5337 return &ppb_opengles2; | 5340 return &ppb_opengles2; |
| 5338 } | 5341 } |
| 5339 | 5342 |
| 5340 """) | 5343 """) |
| 5341 file.Write("} // namespace ppapi\n") | 5344 file.Write("} // namespace ppapi\n") |
| 5342 file.Write("} // namespace webkit\n\n") | 5345 file.Write("} // namespace webkit\n\n") |
| 5343 | 5346 |
| 5344 file.Close() | 5347 file.Close() |
| 5345 | 5348 |
| 5346 def WriteGLES2ToPPAPIBridge(self, filename): | 5349 def WriteGLES2ToPPAPIBridge(self, filename): |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5426 | 5429 |
| 5427 if options.generate_docs: | 5430 if options.generate_docs: |
| 5428 gen.WriteDocs("docs/gles2_cmd_format_docs_autogen.h") | 5431 gen.WriteDocs("docs/gles2_cmd_format_docs_autogen.h") |
| 5429 | 5432 |
| 5430 if gen.errors > 0: | 5433 if gen.errors > 0: |
| 5431 print "%d errors" % gen.errors | 5434 print "%d errors" % gen.errors |
| 5432 sys.exit(1) | 5435 sys.exit(1) |
| 5433 | 5436 |
| 5434 if __name__ == '__main__': | 5437 if __name__ == '__main__': |
| 5435 main(sys.argv[1:]) | 5438 main(sys.argv[1:]) |
| OLD | NEW |