OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 CCLayerTreeHostImpl_h | 5 #ifndef CCLayerTreeHostImpl_h |
6 #define CCLayerTreeHostImpl_h | 6 #define CCLayerTreeHostImpl_h |
7 | 7 |
| 8 #include "base/basictypes.h" |
| 9 #include "base/time.h" |
8 #include "CCAnimationEvents.h" | 10 #include "CCAnimationEvents.h" |
9 #include "CCInputHandler.h" | 11 #include "CCInputHandler.h" |
10 #include "CCLayerSorter.h" | 12 #include "CCLayerSorter.h" |
11 #include "CCRenderPass.h" | 13 #include "CCRenderPass.h" |
12 #include "CCRenderPassSink.h" | 14 #include "CCRenderPassSink.h" |
13 #include "CCRenderer.h" | 15 #include "CCRenderer.h" |
14 #include "SkColor.h" | 16 #include "SkColor.h" |
15 #include "base/time.h" | |
16 #include <public/WebCompositorOutputSurfaceClient.h> | 17 #include <public/WebCompositorOutputSurfaceClient.h> |
17 #include <wtf/PassOwnPtr.h> | 18 #include <wtf/PassOwnPtr.h> |
18 #include <wtf/RefPtr.h> | 19 #include <wtf/RefPtr.h> |
19 | 20 |
20 namespace cc { | 21 namespace cc { |
21 | 22 |
22 class CCCompletionEvent; | 23 class CCCompletionEvent; |
23 class CCDebugRectHistory; | 24 class CCDebugRectHistory; |
24 class CCFrameRateCounter; | 25 class CCFrameRateCounter; |
25 class CCHeadsUpDisplayLayerImpl; | 26 class CCHeadsUpDisplayLayerImpl; |
(...skipping 15 matching lines...) Expand all Loading... |
41 virtual void setNeedsRedrawOnImplThread() = 0; | 42 virtual void setNeedsRedrawOnImplThread() = 0; |
42 virtual void setNeedsCommitOnImplThread() = 0; | 43 virtual void setNeedsCommitOnImplThread() = 0; |
43 virtual void postAnimationEventsToMainThreadOnImplThread(PassOwnPtr<CCAnimat
ionEventsVector>, double wallClockTime) = 0; | 44 virtual void postAnimationEventsToMainThreadOnImplThread(PassOwnPtr<CCAnimat
ionEventsVector>, double wallClockTime) = 0; |
44 virtual void releaseContentsTexturesOnImplThread() = 0; | 45 virtual void releaseContentsTexturesOnImplThread() = 0; |
45 }; | 46 }; |
46 | 47 |
47 // CCLayerTreeHostImpl owns the CCLayerImpl tree as well as associated rendering
state | 48 // CCLayerTreeHostImpl owns the CCLayerImpl tree as well as associated rendering
state |
48 class CCLayerTreeHostImpl : public CCInputHandlerClient, | 49 class CCLayerTreeHostImpl : public CCInputHandlerClient, |
49 public CCRendererClient, | 50 public CCRendererClient, |
50 public WebKit::WebCompositorOutputSurfaceClient { | 51 public WebKit::WebCompositorOutputSurfaceClient { |
51 WTF_MAKE_NONCOPYABLE(CCLayerTreeHostImpl); | |
52 typedef Vector<CCLayerImpl*> CCLayerList; | 52 typedef Vector<CCLayerImpl*> CCLayerList; |
53 | 53 |
54 public: | 54 public: |
55 static PassOwnPtr<CCLayerTreeHostImpl> create(const CCLayerTreeSettings&, CC
LayerTreeHostImplClient*); | 55 static PassOwnPtr<CCLayerTreeHostImpl> create(const CCLayerTreeSettings&, CC
LayerTreeHostImplClient*); |
56 virtual ~CCLayerTreeHostImpl(); | 56 virtual ~CCLayerTreeHostImpl(); |
57 | 57 |
58 // CCInputHandlerClient implementation | 58 // CCInputHandlerClient implementation |
59 virtual CCInputHandlerClient::ScrollStatus scrollBegin(const IntPoint&, CCIn
putHandlerClient::ScrollInputType) OVERRIDE; | 59 virtual CCInputHandlerClient::ScrollStatus scrollBegin(const IntPoint&, CCIn
putHandlerClient::ScrollInputType) OVERRIDE; |
60 virtual void scrollBy(const IntPoint&, const IntSize&) OVERRIDE; | 60 virtual void scrollBy(const IntPoint&, const IntSize&) OVERRIDE; |
61 virtual void scrollEnd() OVERRIDE; | 61 virtual void scrollEnd() OVERRIDE; |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 OwnPtr<CCLayerTreeHostImplTimeSourceAdapter> m_timeSourceClientAdapter; | 286 OwnPtr<CCLayerTreeHostImplTimeSourceAdapter> m_timeSourceClientAdapter; |
287 | 287 |
288 CCLayerSorter m_layerSorter; | 288 CCLayerSorter m_layerSorter; |
289 | 289 |
290 // List of visible layers for the most recently prepared frame. Used for | 290 // List of visible layers for the most recently prepared frame. Used for |
291 // rendering and input event hit testing. | 291 // rendering and input event hit testing. |
292 CCLayerList m_renderSurfaceLayerList; | 292 CCLayerList m_renderSurfaceLayerList; |
293 | 293 |
294 OwnPtr<CCFrameRateCounter> m_fpsCounter; | 294 OwnPtr<CCFrameRateCounter> m_fpsCounter; |
295 OwnPtr<CCDebugRectHistory> m_debugRectHistory; | 295 OwnPtr<CCDebugRectHistory> m_debugRectHistory; |
| 296 |
| 297 DISALLOW_COPY_AND_ASSIGN(CCLayerTreeHostImpl); |
296 }; | 298 }; |
297 | 299 |
298 }; | 300 }; |
299 | 301 |
300 #endif | 302 #endif |
OLD | NEW |