diff options
author | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-30 22:59:56 +0000 |
---|---|---|
committer | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-30 22:59:56 +0000 |
commit | e5e9c02081e6b37f49febeba87863a1dac598949 (patch) | |
tree | 3e2c4fcd2926cc064fd7937e3cdee49e9ef62fd6 /cc/frame_rate_controller.h | |
parent | 760d9886b9d56182f6c91944e06f250df6677d33 (diff) | |
download | chromium_src-e5e9c02081e6b37f49febeba87863a1dac598949.zip chromium_src-e5e9c02081e6b37f49febeba87863a1dac598949.tar.gz chromium_src-e5e9c02081e6b37f49febeba87863a1dac598949.tar.bz2 |
Remove WebKit::Platform dependencies from cc
This removes all dependencies on the static WebKit::Platform pointer from cc.
The biggest change is implementing cc::Thread on top of base::MessageLoopProxy
instead of WebKit::WebThread. For the main thread cc::Thread simply binds to
the current thread's MessageLoopProxy. For the impl thread, the bindings layer
(specifically webkit/compositor_bindings/web_compositor_impl) extracts the
MessageLoopProxy out of the passed in WebThread.
BUG=144539
Review URL: https://codereview.chromium.org/11344004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165050 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/frame_rate_controller.h')
-rw-r--r-- | cc/frame_rate_controller.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/cc/frame_rate_controller.h b/cc/frame_rate_controller.h index d13936d..231ddda 100644 --- a/cc/frame_rate_controller.h +++ b/cc/frame_rate_controller.h @@ -7,8 +7,8 @@ #include "base/memory/ref_counted.h" #include "base/memory/scoped_ptr.h" +#include "base/memory/weak_ptr.h" #include "base/time.h" -#include "cc/timer.h" namespace cc { @@ -26,7 +26,7 @@ protected: class FrameRateControllerTimeSourceAdapter; -class FrameRateController : public TimerClient { +class FrameRateController { public: explicit FrameRateController(scoped_refptr<TimeSource>); // Alternate form of FrameRateController with unthrottled frame-rate. @@ -59,9 +59,7 @@ protected: void onTimerTick(); void postManualTick(); - - // TimerClient implementation (used for unthrottled frame-rate). - virtual void onTimerFired() OVERRIDE; + void manualTick(); FrameRateControllerClient* m_client; int m_numFramesPending; @@ -73,7 +71,10 @@ protected: // Members for unthrottled frame-rate. bool m_isTimeSourceThrottling; - scoped_ptr<Timer> m_manualTicker; + base::WeakPtrFactory<FrameRateController> m_weakFactory; + Thread* m_thread; + + DISALLOW_COPY_AND_ASSIGN(FrameRateController); }; } // namespace cc |