summaryrefslogtreecommitdiffstats
path: root/cc/CCScheduler.h
diff options
context:
space:
mode:
Diffstat (limited to 'cc/CCScheduler.h')
-rw-r--r--cc/CCScheduler.h109
1 files changed, 3 insertions, 106 deletions
diff --git a/cc/CCScheduler.h b/cc/CCScheduler.h
index 1b48307..7032779 100644
--- a/cc/CCScheduler.h
+++ b/cc/CCScheduler.h
@@ -1,109 +1,6 @@
-// Copyright 2011 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CCScheduler_h
-#define CCScheduler_h
-
-#include "base/basictypes.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/time.h"
-#include "CCFrameRateController.h"
-#include "CCSchedulerStateMachine.h"
-#include <wtf/PassOwnPtr.h>
-
-namespace cc {
-
-class CCThread;
-
-struct CCScheduledActionDrawAndSwapResult {
- CCScheduledActionDrawAndSwapResult()
- : didDraw(false)
- , didSwap(false)
- {
- }
- CCScheduledActionDrawAndSwapResult(bool didDraw, bool didSwap)
- : didDraw(didDraw)
- , didSwap(didSwap)
- {
- }
- bool didDraw;
- bool didSwap;
-};
-
-class CCSchedulerClient {
-public:
- virtual void scheduledActionBeginFrame() = 0;
- virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapIfPossible() = 0;
- virtual CCScheduledActionDrawAndSwapResult scheduledActionDrawAndSwapForced() = 0;
- virtual void scheduledActionCommit() = 0;
- virtual void scheduledActionBeginContextRecreation() = 0;
- virtual void scheduledActionAcquireLayerTexturesForMainThread() = 0;
- virtual void didAnticipatedDrawTimeChange(base::TimeTicks) = 0;
-
-protected:
- virtual ~CCSchedulerClient() { }
-};
-
-class CCScheduler : CCFrameRateControllerClient {
-public:
- static PassOwnPtr<CCScheduler> create(CCSchedulerClient* client, scoped_ptr<CCFrameRateController> frameRateController)
- {
- return adoptPtr(new CCScheduler(client, frameRateController.Pass()));
- }
-
- virtual ~CCScheduler();
-
- void setCanBeginFrame(bool);
-
- void setVisible(bool);
- void setCanDraw(bool);
-
- void setNeedsCommit();
-
- // Like setNeedsCommit(), but ensures a commit will definitely happen even if we are not visible.
- void setNeedsForcedCommit();
-
- void setNeedsRedraw();
-
- void setMainThreadNeedsLayerTextures();
-
- // Like setNeedsRedraw(), but ensures the draw will definitely happen even if we are not visible.
- void setNeedsForcedRedraw();
-
- void beginFrameComplete();
- void beginFrameAborted();
-
- void setMaxFramesPending(int);
- void setSwapBuffersCompleteSupported(bool);
- void didSwapBuffersComplete();
-
- void didLoseContext();
- void didRecreateContext();
-
- bool commitPending() const { return m_stateMachine.commitPending(); }
- bool redrawPending() const { return m_stateMachine.redrawPending(); }
-
- void setTimebaseAndInterval(base::TimeTicks timebase, base::TimeDelta interval);
-
- base::TimeTicks anticipatedDrawTime();
-
- // CCFrameRateControllerClient implementation
- virtual void vsyncTick(bool throttled) OVERRIDE;
-
-private:
- CCScheduler(CCSchedulerClient*, scoped_ptr<CCFrameRateController>);
-
- void processScheduledActions();
-
- CCSchedulerClient* m_client;
- scoped_ptr<CCFrameRateController> m_frameRateController;
- CCSchedulerStateMachine m_stateMachine;
- bool m_insideProcessScheduledActions;
-
- DISALLOW_COPY_AND_ASSIGN(CCScheduler);
-};
-
-} // namespace cc
-
-#endif // CCScheduler_h
+// Temporary forwarding header
+#include "cc/scheduler.h"