OLD | NEW |
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 CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ | 5 #ifndef CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ |
6 #define CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ | 6 #define CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
11 #include "base/memory/ref_counted.h" | 11 #include "base/memory/ref_counted.h" |
12 #include "base/threading/non_thread_safe.h" | 12 #include "base/threading/non_thread_safe.h" |
13 #include "base/time.h" | 13 #include "base/time.h" |
14 #include "third_party/WebKit/Source/Platform/chromium/public/WebCompositorOutput
Surface.h" | 14 #include "third_party/WebKit/Source/Platform/chromium/public/WebCompositorOutput
Surface.h" |
15 | 15 |
| 16 namespace WebKit { |
| 17 struct WebCompositorFrameAck; |
| 18 } |
| 19 |
16 namespace base { | 20 namespace base { |
17 class TaskRunner; | 21 class TaskRunner; |
18 } | 22 } |
19 | 23 |
20 namespace IPC { | 24 namespace IPC { |
21 class ForwardingMessageFilter; | 25 class ForwardingMessageFilter; |
22 class Message; | 26 class Message; |
23 class SyncChannel; | 27 class SyncChannel; |
24 } | 28 } |
25 | 29 |
(...skipping 15 matching lines...) Expand all Loading... |
41 WebKit::WebCompositorOutputSurfaceClient* client) OVERRIDE; | 45 WebKit::WebCompositorOutputSurfaceClient* client) OVERRIDE; |
42 virtual const Capabilities& capabilities() const OVERRIDE; | 46 virtual const Capabilities& capabilities() const OVERRIDE; |
43 virtual WebKit::WebGraphicsContext3D* context3D() const OVERRIDE; | 47 virtual WebKit::WebGraphicsContext3D* context3D() const OVERRIDE; |
44 virtual void sendFrameToParentCompositor( | 48 virtual void sendFrameToParentCompositor( |
45 const WebKit::WebCompositorFrame&) OVERRIDE; | 49 const WebKit::WebCompositorFrame&) OVERRIDE; |
46 | 50 |
47 private: | 51 private: |
48 void OnMessageReceived(const IPC::Message& message); | 52 void OnMessageReceived(const IPC::Message& message); |
49 void OnUpdateVSyncParameters( | 53 void OnUpdateVSyncParameters( |
50 base::TimeTicks timebase, base::TimeDelta interval); | 54 base::TimeTicks timebase, base::TimeDelta interval); |
| 55 void OnSwapCompositorFrameACK(const WebKit::WebCompositorFrameAck& ack); |
| 56 bool Send(IPC::Message* message); |
51 | 57 |
52 scoped_refptr<IPC::ForwardingMessageFilter> output_surface_filter_; | 58 scoped_refptr<IPC::ForwardingMessageFilter> output_surface_filter_; |
53 WebKit::WebCompositorOutputSurfaceClient* client_; | 59 WebKit::WebCompositorOutputSurfaceClient* client_; |
54 int routing_id_; | 60 int routing_id_; |
55 Capabilities capabilities_; | 61 Capabilities capabilities_; |
56 scoped_ptr<WebKit::WebGraphicsContext3D> context3D_; | 62 scoped_ptr<WebKit::WebGraphicsContext3D> context3D_; |
57 }; | 63 }; |
58 | 64 |
59 #endif // CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ | 65 #endif // CONTENT_RENDERER_GPU_COMPOSITOR_OUTPUT_SURFACE_H_ |
60 | |
OLD | NEW |