Non-SFI mode: Clean up macros of base/ and ipc/ libraries for nacl_helper_nonsfi.
[chromium-blink-merge.git] / ui / ozone / public / ui_thread_gpu.h
blob8e2358a6b9644db04afc2631eb9c0cf5d2228675
1 // Copyright 2014 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 UI_OZONE_PUBLIC_UI_THREAD_GPU_H_
6 #define UI_OZONE_PUBLIC_UI_THREAD_GPU_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "ui/ozone/ozone_export.h"
11 namespace IPC {
12 class Sender;
15 namespace ui {
17 class UiThreadGpuForwardingSender;
19 // Helper class for applications that do GL on the UI thead.
21 // This sets up message forwarding between the "gpu" and "ui" threads,
22 // for applications in which they are both the same thread.
23 class OZONE_EXPORT UiThreadGpu {
24 public:
25 UiThreadGpu();
26 virtual ~UiThreadGpu();
28 // Start processing gpu messages.
29 bool Initialize();
31 private:
32 scoped_ptr<UiThreadGpuForwardingSender> ui_sender_;
33 scoped_ptr<UiThreadGpuForwardingSender> gpu_sender_;
35 DISALLOW_COPY_AND_ASSIGN(UiThreadGpu);
38 } // namespace ui
40 #endif // UI_OZONE_PUBLIC_UI_THREAD_GPU_H_