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"
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
{
26 virtual ~UiThreadGpu();
28 // Start processing gpu messages.
32 scoped_ptr
<UiThreadGpuForwardingSender
> ui_sender_
;
33 scoped_ptr
<UiThreadGpuForwardingSender
> gpu_sender_
;
35 DISALLOW_COPY_AND_ASSIGN(UiThreadGpu
);
40 #endif // UI_OZONE_PUBLIC_UI_THREAD_GPU_H_