| Index: components/arc/arc_bridge_service.h
|
| diff --git a/components/arc/arc_bridge_service.h b/components/arc/arc_bridge_service.h
|
| index e3417bc985756c0db52044b339df84c9da3d350b..f9fc6e896533d6ccc8cb5e08447edabfbadc80e9 100644
|
| --- a/components/arc/arc_bridge_service.h
|
| +++ b/components/arc/arc_bridge_service.h
|
| @@ -8,16 +8,21 @@
|
| #include "base/macros.h"
|
| #include "base/observer_list.h"
|
| #include "base/sequenced_task_runner.h"
|
| +#include "ipc/ipc_channel_handle.h"
|
| #include "ipc/ipc_channel_proxy.h"
|
| #include "ipc/ipc_listener.h"
|
| #include "ipc/ipc_message.h"
|
|
|
| +namespace content {
|
| +class GpuArcAcceleratorHost;
|
| +}
|
| +
|
| namespace arc {
|
|
|
| // The Chrome-side service that handles ARC instances and ARC bridge creation.
|
| // This service handles the lifetime of ARC instances and sets up the
|
| // communication channel (the ARC bridge) used to send and receive messages.
|
| -class ArcBridgeService : public IPC::Listener {
|
| +class ArcBridgeService : public IPC::Listener, public IPC::Sender {
|
| public:
|
| // The possible states of the bridge. In the normal flow, the state changes
|
| // in the following sequence:
|
| @@ -80,6 +85,9 @@ class ArcBridgeService : public IPC::Listener {
|
| // called on the thread that this class was created on.
|
| static ArcBridgeService* Get();
|
|
|
| + // IPC::Sender:
|
| + bool Send(IPC::Message* message) override;
|
| +
|
| // DetectAvailability() should be called once D-Bus is available. It will
|
| // call CheckArcAvailability() on the session_manager. This can only be
|
| // called on the thread that this class was created on.
|
| @@ -148,6 +156,12 @@ class ArcBridgeService : public IPC::Listener {
|
| // interaction.
|
| void OnInstanceReady();
|
|
|
| + void OnCreateArcVideoAccelerator(uint32_t device_type,
|
| + IPC::Message* reply_msg);
|
| + void ReplyCreateArcVideoAccelerator(IPC::Message* reply,
|
| + IPC::ChannelHandle handle,
|
| + uint32_t result);
|
| +
|
| // Changes the current state and notifies all observers.
|
| void SetState(State state);
|
|
|
| @@ -159,6 +173,7 @@ class ArcBridgeService : public IPC::Listener {
|
| void OnInstanceStarted(bool success);
|
| void OnInstanceStopped(bool success);
|
|
|
| + scoped_ptr<content::GpuArcAcceleratorHost> gpu_arc_accelerator_host_;
|
| scoped_refptr<base::SequencedTaskRunner> origin_task_runner_;
|
| scoped_refptr<base::SingleThreadTaskRunner> ipc_task_runner_;
|
| scoped_refptr<base::SequencedTaskRunner> file_task_runner_;
|
|
|