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

Side by Side Diff: gpu/command_buffer/client/context_support.h

Issue 208213003: Plumb overlay processing into DirectRenderer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Introduced ScopedExportLock Created 6 years, 9 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
« no previous file with comments | « content/common/cc_messages.cc ('k') | gpu/command_buffer/client/gles2_implementation.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_ 5 #ifndef GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_
6 #define GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_ 6 #define GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_
7 7
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "gpu/command_buffer/common/mailbox.h"
9 #include "ui/gfx/rect.h" 10 #include "ui/gfx/rect.h"
10 11
11 namespace gpu { 12 namespace gpu {
12 struct ManagedMemoryStats; 13 struct ManagedMemoryStats;
13 14
14 class ContextSupport { 15 class ContextSupport {
15 public: 16 public:
16 // Runs |callback| when a sync point is reached. 17 // Runs |callback| when a sync point is reached.
17 virtual void SignalSyncPoint(uint32 sync_point, 18 virtual void SignalSyncPoint(uint32 sync_point,
18 const base::Closure& callback) = 0; 19 const base::Closure& callback) = 0;
19 20
20 // Runs |callback| when a query created via glCreateQueryEXT() has cleared 21 // Runs |callback| when a query created via glCreateQueryEXT() has cleared
21 // passed the glEndQueryEXT() point. 22 // passed the glEndQueryEXT() point.
22 virtual void SignalQuery(uint32 query, const base::Closure& callback) = 0; 23 virtual void SignalQuery(uint32 query, const base::Closure& callback) = 0;
23 24
24 // For onscreen contexts, indicates that the surface visibility has changed. 25 // For onscreen contexts, indicates that the surface visibility has changed.
25 // Clients aren't expected to draw to an invisible surface. 26 // Clients aren't expected to draw to an invisible surface.
26 virtual void SetSurfaceVisible(bool visible) = 0; 27 virtual void SetSurfaceVisible(bool visible) = 0;
27 28
28 virtual void SendManagedMemoryStats(const ManagedMemoryStats& stats) = 0; 29 virtual void SendManagedMemoryStats(const ManagedMemoryStats& stats) = 0;
29 30
30 virtual void Swap() = 0; 31 virtual void Swap() = 0;
31 virtual void PartialSwapBuffers(const gfx::Rect& sub_buffer) = 0; 32 virtual void PartialSwapBuffers(const gfx::Rect& sub_buffer) = 0;
32 33
33 virtual void SetSwapBuffersCompleteCallback( 34 virtual void SetSwapBuffersCompleteCallback(
34 const base::Closure& callback) = 0; 35 const base::Closure& callback) = 0;
35 36
37 // Schedule a texture to be presented as an overlay synchronously with the
38 // primary surface during the next buffer swap.
39 // This method is not stateful and needs to be re-scheduled every frame.
40 virtual void ScheduleOverlayPlane(int plane_z_order,
41 unsigned plane_transform,
alexst (slow to review) 2014/03/26 20:48:50 Is //src/gpu/command_buffer/common/constants.h a r
42 const gpu::Mailbox& overlay_texture,
43 const gfx::Rect& display_bounds,
44 const gfx::RectF& uv_rect) = 0;
45
36 protected: 46 protected:
37 ContextSupport() {} 47 ContextSupport() {}
38 virtual ~ContextSupport() {} 48 virtual ~ContextSupport() {}
39 }; 49 };
40 50
41 } 51 }
42 52
43 #endif // GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_ 53 #endif // GPU_COMMAND_BUFFER_CLIENT_CONTEXT_SUPPORT_H_
OLDNEW
« no previous file with comments | « content/common/cc_messages.cc ('k') | gpu/command_buffer/client/gles2_implementation.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698