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

Side by Side Diff: webkit/gpu/webgraphicscontext3d_in_process_impl.h

Issue 10829209: Add GL_CHROMIUM_texture_mailbox entrypoints to wgc3d implementations (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ 5 #ifndef WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_
6 #define WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ 6 #define WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_
7 7
8 #include <list> 8 #include <list>
9 #include <set> 9 #include <set>
10 10
11 #include "base/hash_tables.h" 11 #include "base/hash_tables.h"
12 #include "base/memory/ref_counted.h" 12 #include "base/memory/ref_counted.h"
13 #include "third_party/angle/include/GLSLANG/ShaderLang.h" 13 #include "third_party/angle/include/GLSLANG/ShaderLang.h"
14 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC ontext3D.h" 14 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC ontext3D.h"
15 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h" 15 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h"
16 #include "ui/gfx/native_widget_types.h" 16 #include "ui/gfx/native_widget_types.h"
17 17
18 #if !defined(OS_MACOSX) 18 #if !defined(OS_MACOSX)
19 #define FLIP_FRAMEBUFFER_VERTICALLY 19 #define FLIP_FRAMEBUFFER_VERTICALLY
20 #endif 20 #endif
21 namespace gfx { 21 namespace gfx {
22 class GLContext; 22 class GLContext;
23 class GLSurface; 23 class GLSurface;
24 class GLShareGroup; 24 class GLShareGroup;
25 } 25 }
26 26
27 using WebKit::WGC3Dbyte;
27 using WebKit::WGC3Dchar; 28 using WebKit::WGC3Dchar;
28 using WebKit::WGC3Denum; 29 using WebKit::WGC3Denum;
29 using WebKit::WGC3Dboolean; 30 using WebKit::WGC3Dboolean;
30 using WebKit::WGC3Dbitfield; 31 using WebKit::WGC3Dbitfield;
31 using WebKit::WGC3Dint; 32 using WebKit::WGC3Dint;
32 using WebKit::WGC3Dsizei; 33 using WebKit::WGC3Dsizei;
33 using WebKit::WGC3Duint; 34 using WebKit::WGC3Duint;
34 using WebKit::WGC3Dfloat; 35 using WebKit::WGC3Dfloat;
35 using WebKit::WGC3Dclampf; 36 using WebKit::WGC3Dclampf;
36 using WebKit::WGC3Dintptr; 37 using WebKit::WGC3Dintptr;
(...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 virtual void copyTextureCHROMIUM(WGC3Denum target, WGC3Duint source_id, 476 virtual void copyTextureCHROMIUM(WGC3Denum target, WGC3Duint source_id,
476 WGC3Duint dest_id, WGC3Dint level, 477 WGC3Duint dest_id, WGC3Dint level,
477 WGC3Denum internal_format); 478 WGC3Denum internal_format);
478 virtual void bindUniformLocationCHROMIUM(WebGLId program, WGC3Dint location, 479 virtual void bindUniformLocationCHROMIUM(WebGLId program, WGC3Dint location,
479 const WGC3Dchar* uniform); 480 const WGC3Dchar* uniform);
480 481
481 // CHROMIUM_shallow_flush 482 // CHROMIUM_shallow_flush
482 // Only applies to contexts that use the command buffer. 483 // Only applies to contexts that use the command buffer.
483 virtual void shallowFlushCHROMIUM() { } 484 virtual void shallowFlushCHROMIUM() { }
484 485
486 virtual void genMailboxCHROMIUM(WGC3Dbyte* mailbox);
487 virtual void produceTextureCHROMIUM(WGC3Denum target,
488 const WGC3Dbyte* mailbox);
489 virtual void consumeTextureCHROMIUM(WGC3Denum target,
490 const WGC3Dbyte* mailbox);
491
485 protected: 492 protected:
486 virtual GrGLInterface* onCreateGrGLInterface(); 493 virtual GrGLInterface* onCreateGrGLInterface();
487 494
488 private: 495 private:
489 bool Initialize(Attributes attributes); 496 bool Initialize(Attributes attributes);
490 497
491 // ANGLE related. 498 // ANGLE related.
492 struct ShaderSourceEntry; 499 struct ShaderSourceEntry;
493 500
494 typedef base::hash_map<WebGLId, ShaderSourceEntry*> ShaderSourceMap; 501 typedef base::hash_map<WebGLId, ShaderSourceEntry*> ShaderSourceMap;
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
553 ShaderSourceMap shader_source_map_; 560 ShaderSourceMap shader_source_map_;
554 561
555 ShHandle fragment_compiler_; 562 ShHandle fragment_compiler_;
556 ShHandle vertex_compiler_; 563 ShHandle vertex_compiler_;
557 }; 564 };
558 565
559 } // namespace gpu 566 } // namespace gpu
560 } // namespace webkit 567 } // namespace webkit
561 568
562 #endif // WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_ 569 #endif // WEBKIT_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_IMPL_H_
OLDNEW
« no previous file with comments | « webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc ('k') | webkit/gpu/webgraphicscontext3d_in_process_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698