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
3 // found in the LICENSE file.
5 #ifndef CC_BASE_THREAD_H_
6 #define CC_BASE_THREAD_H_
8 #include "base/basictypes.h"
9 #include "base/callback.h"
10 #include "base/time.h"
11 #include "cc/base/cc_export.h"
15 // Thread provides basic infrastructure for messaging with the compositor in a
16 // platform-neutral way.
17 class CC_EXPORT Thread
{
21 // Executes the callback on context's thread asynchronously.
22 virtual void PostTask(base::Closure cb
) = 0;
24 // Executes the task after the specified delay.
25 virtual void PostDelayedTask(base::Closure cb
, base::TimeDelta delay
) = 0;
27 virtual bool BelongsToCurrentThread() const = 0;
32 #endif // CC_BASE_THREAD_H_