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

Side by Side Diff: cc/CCThreadProxy.h

Issue 10919320: Integrate r128344 and r128253 from WebKit (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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 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 CCThreadProxy_h 5 #ifndef CCThreadProxy_h
6 #define CCThreadProxy_h 6 #define CCThreadProxy_h
7 7
8 #include "CCAnimationEvents.h" 8 #include "CCAnimationEvents.h"
9 #include "CCCompletionEvent.h" 9 #include "CCCompletionEvent.h"
10 #include "CCLayerTreeHostImpl.h" 10 #include "CCLayerTreeHostImpl.h"
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 virtual void forceSerializeOnSwapBuffers() OVERRIDE; 54 virtual void forceSerializeOnSwapBuffers() OVERRIDE;
55 55
56 // CCLayerTreeHostImplClient implementation 56 // CCLayerTreeHostImplClient implementation
57 virtual void didLoseContextOnImplThread() OVERRIDE; 57 virtual void didLoseContextOnImplThread() OVERRIDE;
58 virtual void onSwapBuffersCompleteOnImplThread() OVERRIDE; 58 virtual void onSwapBuffersCompleteOnImplThread() OVERRIDE;
59 virtual void onVSyncParametersChanged(double monotonicTimebase, double inter valInSeconds) OVERRIDE; 59 virtual void onVSyncParametersChanged(double monotonicTimebase, double inter valInSeconds) OVERRIDE;
60 virtual void onCanDrawStateChanged(bool canDraw) OVERRIDE; 60 virtual void onCanDrawStateChanged(bool canDraw) OVERRIDE;
61 virtual void setNeedsRedrawOnImplThread() OVERRIDE; 61 virtual void setNeedsRedrawOnImplThread() OVERRIDE;
62 virtual void setNeedsCommitOnImplThread() OVERRIDE; 62 virtual void setNeedsCommitOnImplThread() OVERRIDE;
63 virtual void postAnimationEventsToMainThreadOnImplThread(PassOwnPtr<CCAnimat ionEventsVector>, double wallClockTime) OVERRIDE; 63 virtual void postAnimationEventsToMainThreadOnImplThread(PassOwnPtr<CCAnimat ionEventsVector>, double wallClockTime) OVERRIDE;
64 virtual void releaseContentsTexturesOnImplThread() OVERRIDE;
64 65
65 // CCSchedulerClient implementation 66 // CCSchedulerClient implementation
66 virtual void scheduledActionBeginFrame() OVERRIDE; 67 virtual void scheduledActionBeginFrame() OVERRIDE;
67 virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapIfPossi ble() OVERRIDE; 68 virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapIfPossi ble() OVERRIDE;
68 virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapForced( ) OVERRIDE; 69 virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapForced( ) OVERRIDE;
69 virtual void scheduledActionUpdateMoreResources(double monotonicTimeLimit) O VERRIDE; 70 virtual void scheduledActionUpdateMoreResources(double monotonicTimeLimit) O VERRIDE;
70 virtual void scheduledActionCommit() OVERRIDE; 71 virtual void scheduledActionCommit() OVERRIDE;
71 virtual void scheduledActionBeginContextRecreation() OVERRIDE; 72 virtual void scheduledActionBeginContextRecreation() OVERRIDE;
72 virtual void scheduledActionAcquireLayerTexturesForMainThread() OVERRIDE; 73 virtual void scheduledActionAcquireLayerTexturesForMainThread() OVERRIDE;
73 74
74 // CCTextureUpdateControllerClient implementation 75 // CCTextureUpdateControllerClient implementation
75 virtual void updateTexturesCompleted() OVERRIDE; 76 virtual void updateTexturesCompleted() OVERRIDE;
76 77
77 private: 78 private:
78 explicit CCThreadProxy(CCLayerTreeHost*); 79 explicit CCThreadProxy(CCLayerTreeHost*);
79 friend class CCThreadProxyContextRecreationTimer; 80 friend class CCThreadProxyContextRecreationTimer;
80 81
81 // Set on impl thread, read on main thread. 82 // Set on impl thread, read on main thread.
82 struct BeginFrameAndCommitState { 83 struct BeginFrameAndCommitState {
83 BeginFrameAndCommitState() 84 BeginFrameAndCommitState()
84 : monotonicFrameBeginTime(0) 85 : monotonicFrameBeginTime(0)
85 { 86 {
86 } 87 }
87 88
88 double monotonicFrameBeginTime; 89 double monotonicFrameBeginTime;
89 OwnPtr<CCScrollAndScaleSet> scrollInfo; 90 OwnPtr<CCScrollAndScaleSet> scrollInfo;
90 bool contentsTexturesWereDeleted; 91 CCPrioritizedTextureManager::BackingVector evictedContentsTexturesBackin gs;
91 size_t memoryAllocationLimitBytes; 92 size_t memoryAllocationLimitBytes;
92 }; 93 };
93 OwnPtr<BeginFrameAndCommitState> m_pendingBeginFrameRequest; 94 OwnPtr<BeginFrameAndCommitState> m_pendingBeginFrameRequest;
94 95
95 // Called on main thread 96 // Called on main thread
96 void beginFrame(); 97 void beginFrame();
97 void didCommitAndDrawFrame(); 98 void didCommitAndDrawFrame();
98 void didCompleteSwapBuffers(); 99 void didCompleteSwapBuffers();
99 void setAnimationEvents(PassOwnPtr<CCAnimationEventsVector>, double wallCloc kTime); 100 void setAnimationEvents(PassOwnPtr<CCAnimationEventsVector>, double wallCloc kTime);
100 void beginContextRecreation(); 101 void beginContextRecreation();
101 void tryToRecreateContext(); 102 void tryToRecreateContext();
102 103
103 // Called on impl thread 104 // Called on impl thread
104 struct ReadbackRequest { 105 struct ReadbackRequest {
105 CCCompletionEvent completion; 106 CCCompletionEvent completion;
106 bool success; 107 bool success;
107 void* pixels; 108 void* pixels;
108 IntRect rect; 109 IntRect rect;
109 }; 110 };
110 void forceBeginFrameOnImplThread(CCCompletionEvent*); 111 void forceBeginFrameOnImplThread(CCCompletionEvent*);
111 void beginFrameCompleteOnImplThread(CCCompletionEvent*, PassOwnPtr<CCTexture UpdateQueue>, bool contentsTexturesWereDeleted); 112 void beginFrameCompleteOnImplThread(CCCompletionEvent*, PassOwnPtr<CCTexture UpdateQueue>);
112 void beginFrameAbortedOnImplThread(); 113 void beginFrameAbortedOnImplThread();
113 void requestReadbackOnImplThread(ReadbackRequest*); 114 void requestReadbackOnImplThread(ReadbackRequest*);
114 void requestStartPageScaleAnimationOnImplThread(IntSize targetPosition, bool useAnchor, float scale, double durationSec); 115 void requestStartPageScaleAnimationOnImplThread(IntSize targetPosition, bool useAnchor, float scale, double durationSec);
115 void finishAllRenderingOnImplThread(CCCompletionEvent*); 116 void finishAllRenderingOnImplThread(CCCompletionEvent*);
116 void initializeImplOnImplThread(CCCompletionEvent*, PassOwnPtr<CCInputHandle r>); 117 void initializeImplOnImplThread(CCCompletionEvent*, PassOwnPtr<CCInputHandle r>);
117 void setSurfaceReadyOnImplThread(); 118 void setSurfaceReadyOnImplThread();
118 void setVisibleOnImplThread(CCCompletionEvent*, bool); 119 void setVisibleOnImplThread(CCCompletionEvent*, bool);
119 void initializeContextOnImplThread(CCGraphicsContext*); 120 void initializeContextOnImplThread(CCGraphicsContext*);
120 void initializeRendererOnImplThread(CCCompletionEvent*, bool* initializeSucc eeded, RendererCapabilities*); 121 void initializeRendererOnImplThread(CCCompletionEvent*, bool* initializeSucc eeded, RendererCapabilities*);
121 void layerTreeHostClosedOnImplThread(CCCompletionEvent*); 122 void layerTreeHostClosedOnImplThread(CCCompletionEvent*);
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 173
173 // Set when the next draw should post didCommitAndDrawFrame to the main thre ad. 174 // Set when the next draw should post didCommitAndDrawFrame to the main thre ad.
174 bool m_nextFrameIsNewlyCommittedFrameOnImplThread; 175 bool m_nextFrameIsNewlyCommittedFrameOnImplThread;
175 176
176 bool m_renderVSyncEnabled; 177 bool m_renderVSyncEnabled;
177 }; 178 };
178 179
179 } 180 }
180 181
181 #endif 182 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698