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

Unified Diff: ui/ozone/platform/dri/dri_gpu_platform_support_host.h

Issue 821133006: ozone: Dispatch GPU process IPCs to IO thread directly from GpuPlatformSupportHost (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: ui/ozone/platform/dri/dri_gpu_platform_support_host.h
diff --git a/ui/ozone/platform/dri/dri_gpu_platform_support_host.h b/ui/ozone/platform/dri/dri_gpu_platform_support_host.h
index 00d1f13c501d66bf281a018244876b5b12b90534..913e63349341f155ed75a1877bec7b2d93738f12 100644
--- a/ui/ozone/platform/dri/dri_gpu_platform_support_host.h
+++ b/ui/ozone/platform/dri/dri_gpu_platform_support_host.h
@@ -7,6 +7,7 @@
#include <vector>
+#include "base/callback.h"
#include "base/observer_list.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/ozone/public/gpu_platform_support_host.h"
@@ -33,8 +34,13 @@ class DriGpuPlatformSupportHost : public GpuPlatformSupportHost,
void AddChannelObserver(ChannelObserver* observer);
void RemoveChannelObserver(ChannelObserver* observer);
+ bool IsConnected();
+
// GpuPlatformSupportHost:
- void OnChannelEstablished(int host_id, IPC::Sender* sender) override;
+ void OnChannelEstablished(
+ int host_id,
+ scoped_refptr<base::SingleThreadTaskRunner> send_runner,
+ const base::Callback<void(IPC::Message*)>& send_callback) override;
void OnChannelDestroyed(int host_id) override;
// IPC::Listener:
@@ -53,7 +59,10 @@ class DriGpuPlatformSupportHost : public GpuPlatformSupportHost,
private:
int host_id_;
- IPC::Sender* sender_;
+
+ scoped_refptr<base::SingleThreadTaskRunner> send_runner_;
+ base::Callback<void(IPC::Message*)> send_callback_;
+
std::vector<GpuPlatformSupportHost*> handlers_;
ObserverList<ChannelObserver> channel_observers_;
};

Powered by Google App Engine
This is Rietveld 408576698