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

Side by Side Diff: components/arc/arc_bridge_service_impl.h

Issue 1451353002: Implement GpuArcVideoService for arc video accelerator (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebased with new ArcBridgeService; addressed Owen's comments Created 5 years 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_ 5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_
6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_ 6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 48
49 // Requests to launch an app. 49 // Requests to launch an app.
50 bool LaunchApp(const std::string& package, 50 bool LaunchApp(const std::string& package,
51 const std::string& activity) override; 51 const std::string& activity) override;
52 52
53 // Requests to load an icon of specific scale_factor. 53 // Requests to load an icon of specific scale_factor.
54 bool RequestAppIcon(const std::string& package, 54 bool RequestAppIcon(const std::string& package,
55 const std::string& activity, 55 const std::string& activity,
56 ScaleFactor scale_factor) override; 56 ScaleFactor scale_factor) override;
57 57
58 bool NotifyVideoAcceleratorChannelCreated(
59 const IPC::ChannelHandle& handle) override;
60
58 private: 61 private:
59 friend class ArcBridgeTest; 62 friend class ArcBridgeTest;
60 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Basic); 63 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Basic);
61 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Prerequisites); 64 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Prerequisites);
62 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, ShutdownMidStartup); 65 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, ShutdownMidStartup);
63 66
64 // If all pre-requisites are true (ARC is available, it has been enabled, and 67 // If all pre-requisites are true (ARC is available, it has been enabled, and
65 // the session has started), and ARC is stopped, start ARC. If ARC is running 68 // the session has started), and ARC is stopped, start ARC. If ARC is running
66 // and the pre-requisites stop being true, stop ARC. 69 // and the pre-requisites stop being true, stop ARC.
67 void PrerequisitesChanged(); 70 void PrerequisitesChanged();
(...skipping 14 matching lines...) Expand all
82 // Called whenever ARC sends app icon data for specific scale factor. 85 // Called whenever ARC sends app icon data for specific scale factor.
83 void OnAppIcon(const mojo::String& package, 86 void OnAppIcon(const mojo::String& package,
84 const mojo::String& activity, 87 const mojo::String& activity,
85 ScaleFactor scale_factor, 88 ScaleFactor scale_factor,
86 mojo::Array<uint8_t> icon_png_data) override; 89 mojo::Array<uint8_t> icon_png_data) override;
87 90
88 // Called when the instance requests wake lock services 91 // Called when the instance requests wake lock services
89 void OnAcquireDisplayWakeLock(DisplayWakeLockType type) override; 92 void OnAcquireDisplayWakeLock(DisplayWakeLockType type) override;
90 void OnReleaseDisplayWakeLock(DisplayWakeLockType type) override; 93 void OnReleaseDisplayWakeLock(DisplayWakeLockType type) override;
91 94
95 // Called whenever ARC sends request for video accelerator channel.
96 void OnRequestArcVideoAcceleratorChannel() override;
97
92 // ArcBridgeBootstrap::Delegate: 98 // ArcBridgeBootstrap::Delegate:
93 void OnConnectionEstablished(ArcBridgeInstancePtr instance) override; 99 void OnConnectionEstablished(ArcBridgeInstancePtr instance) override;
94 void OnStopped() override; 100 void OnStopped() override;
95 101
96 // DBus callbacks. 102 // DBus callbacks.
97 void OnArcAvailable(bool available); 103 void OnArcAvailable(bool available);
98 104
99 scoped_ptr<ArcBridgeBootstrap> bootstrap_; 105 scoped_ptr<ArcBridgeBootstrap> bootstrap_;
100 106
101 // Mojo endpoints. 107 // Mojo endpoints.
102 mojo::Binding<ArcBridgeHost> binding_; 108 mojo::Binding<ArcBridgeHost> binding_;
103 ArcBridgeInstancePtr instance_ptr_; 109 ArcBridgeInstancePtr instance_ptr_;
104 110
105 // If the user's session has started. 111 // If the user's session has started.
106 bool session_started_; 112 bool session_started_;
107 113
108 // WeakPtrFactory to use callbacks. 114 // WeakPtrFactory to use callbacks.
109 base::WeakPtrFactory<ArcBridgeServiceImpl> weak_factory_; 115 base::WeakPtrFactory<ArcBridgeServiceImpl> weak_factory_;
110 116
111 DISALLOW_COPY_AND_ASSIGN(ArcBridgeServiceImpl); 117 DISALLOW_COPY_AND_ASSIGN(ArcBridgeServiceImpl);
112 }; 118 };
113 119
114 } // namespace arc 120 } // namespace arc
115 121
116 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_ 122 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698