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

Side by Side Diff: base/timer.h

Issue 6736019: Base: A few more files using BASE_API (for base.dll) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 9 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
« no previous file with comments | « base/threading/thread.h ('k') | base/tracked_objects.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 // OneShotTimer and RepeatingTimer provide a simple timer API. As the names 5 // OneShotTimer and RepeatingTimer provide a simple timer API. As the names
6 // suggest, OneShotTimer calls you back once after a time delay expires. 6 // suggest, OneShotTimer calls you back once after a time delay expires.
7 // RepeatingTimer on the other hand calls you back periodically with the 7 // RepeatingTimer on the other hand calls you back periodically with the
8 // prescribed time interval. 8 // prescribed time interval.
9 // 9 //
10 // OneShotTimer and RepeatingTimer both cancel the timer when they go out of 10 // OneShotTimer and RepeatingTimer both cancel the timer when they go out of
11 // scope, which makes it easy to ensure that you do not get called when your 11 // scope, which makes it easy to ensure that you do not get called when your
(...skipping 28 matching lines...) Expand all
40 40
41 #ifndef BASE_TIMER_H_ 41 #ifndef BASE_TIMER_H_
42 #define BASE_TIMER_H_ 42 #define BASE_TIMER_H_
43 #pragma once 43 #pragma once
44 44
45 // IMPORTANT: If you change timer code, make sure that all tests (including 45 // IMPORTANT: If you change timer code, make sure that all tests (including
46 // disabled ones) from timer_unittests.cc pass locally. Some are disabled 46 // disabled ones) from timer_unittests.cc pass locally. Some are disabled
47 // because they're flaky on the buildbot, but when you run them locally you 47 // because they're flaky on the buildbot, but when you run them locally you
48 // should be able to tell the difference. 48 // should be able to tell the difference.
49 49
50 #include "base/base_api.h"
50 #include "base/logging.h" 51 #include "base/logging.h"
51 #include "base/task.h" 52 #include "base/task.h"
52 #include "base/time.h" 53 #include "base/time.h"
53 54
54 class MessageLoop; 55 class MessageLoop;
55 56
56 namespace base { 57 namespace base {
57 58
58 //----------------------------------------------------------------------------- 59 //-----------------------------------------------------------------------------
59 // This class is an implementation detail of OneShotTimer and RepeatingTimer. 60 // This class is an implementation detail of OneShotTimer and RepeatingTimer.
60 // Please do not use this class directly. 61 // Please do not use this class directly.
61 // 62 //
62 // This class exists to share code between BaseTimer<T> template instantiations. 63 // This class exists to share code between BaseTimer<T> template instantiations.
63 // 64 //
64 class BaseTimer_Helper { 65 class BASE_API BaseTimer_Helper {
65 public: 66 public:
66 // Stops the timer. 67 // Stops the timer.
67 ~BaseTimer_Helper() { 68 ~BaseTimer_Helper() {
68 OrphanDelayedTask(); 69 OrphanDelayedTask();
69 } 70 }
70 71
71 // Returns true if the timer is running (i.e., not stopped). 72 // Returns true if the timer is running (i.e., not stopped).
72 bool IsRunning() const { 73 bool IsRunning() const {
73 return delayed_task_ != NULL; 74 return delayed_task_ != NULL;
74 } 75 }
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 const ReceiverMethod method_; 263 const ReceiverMethod method_;
263 const TimeDelta delay_; 264 const TimeDelta delay_;
264 265
265 OneShotTimer<DelayTimer<Receiver> > timer_; 266 OneShotTimer<DelayTimer<Receiver> > timer_;
266 TimeTicks trigger_time_; 267 TimeTicks trigger_time_;
267 }; 268 };
268 269
269 } // namespace base 270 } // namespace base
270 271
271 #endif // BASE_TIMER_H_ 272 #endif // BASE_TIMER_H_
OLDNEW
« no previous file with comments | « base/threading/thread.h ('k') | base/tracked_objects.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698