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

Side by Side Diff: components/arc/arc_service_manager.cc

Issue 1451353002: Implement GpuArcVideoService for arc video accelerator (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addressed Pawel's comments Created 4 years, 12 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 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 #include "components/arc/arc_service_manager.h" 5 #include "components/arc/arc_service_manager.h"
6 6
7 #include "base/sequenced_task_runner.h" 7 #include "base/sequenced_task_runner.h"
8 #include "base/thread_task_runner_handle.h" 8 #include "base/thread_task_runner_handle.h"
9 #include "components/arc/arc_bridge_bootstrap.h" 9 #include "components/arc/arc_bridge_bootstrap.h"
10 #include "components/arc/arc_bridge_service_impl.h" 10 #include "components/arc/arc_bridge_service_impl.h"
11 #include "components/arc/input/arc_input_bridge.h" 11 #include "components/arc/input/arc_input_bridge.h"
12 #include "components/arc/power/arc_power_bridge.h" 12 #include "components/arc/power/arc_power_bridge.h"
13 #include "components/arc/settings/arc_settings_bridge.h" 13 #include "components/arc/settings/arc_settings_bridge.h"
14 #include "components/arc/video/arc_video_service.h"
14 15
15 namespace arc { 16 namespace arc {
16 17
17 namespace { 18 namespace {
18 19
19 // Weak pointer. This class is owned by ChromeBrowserMainPartsChromeos. 20 // Weak pointer. This class is owned by ChromeBrowserMainPartsChromeos.
20 ArcServiceManager* g_arc_service_manager = nullptr; 21 ArcServiceManager* g_arc_service_manager = nullptr;
21 22
22 } // namespace 23 } // namespace
23 24
24 ArcServiceManager::ArcServiceManager( 25 ArcServiceManager::ArcServiceManager(
25 scoped_ptr<ArcSettingsBridge> settings_bridge) 26 scoped_ptr<ArcSettingsBridge> settings_bridge,
27 scoped_ptr<ArcVideoService> arc_video_service)
26 : arc_bridge_service_( 28 : arc_bridge_service_(
27 new ArcBridgeServiceImpl(ArcBridgeBootstrap::Create())), 29 new ArcBridgeServiceImpl(ArcBridgeBootstrap::Create())),
28 arc_settings_bridge_(std::move(settings_bridge)) { 30 arc_settings_bridge_(std::move(settings_bridge)),
31 arc_video_service_(std::move(arc_video_service)) {
dcheng 2015/12/29 00:43:23 #include <utility> please.
kcwu 2015/12/29 03:36:32 Done.
29 DCHECK(!g_arc_service_manager); 32 DCHECK(!g_arc_service_manager);
30 arc_input_bridge_ = ArcInputBridge::Create(arc_bridge_service_.get()); 33 arc_input_bridge_ = ArcInputBridge::Create(arc_bridge_service_.get());
31 arc_power_bridge_.reset(new ArcPowerBridge(arc_bridge_service_.get())); 34 arc_power_bridge_.reset(new ArcPowerBridge(arc_bridge_service_.get()));
32 g_arc_service_manager = this; 35 g_arc_service_manager = this;
33 36
34 arc_settings_bridge_->StartObservingBridgeServiceChanges(); 37 arc_settings_bridge_->StartObservingBridgeServiceChanges();
38 arc_video_service_->Initialize();
35 } 39 }
36 40
37 ArcServiceManager::~ArcServiceManager() { 41 ArcServiceManager::~ArcServiceManager() {
38 DCHECK(thread_checker_.CalledOnValidThread()); 42 DCHECK(thread_checker_.CalledOnValidThread());
39 DCHECK(g_arc_service_manager == this); 43 DCHECK(g_arc_service_manager == this);
40 g_arc_service_manager = nullptr; 44 g_arc_service_manager = nullptr;
41 } 45 }
42 46
43 // static 47 // static
44 ArcServiceManager* ArcServiceManager::Get() { 48 ArcServiceManager* ArcServiceManager::Get() {
45 DCHECK(g_arc_service_manager); 49 DCHECK(g_arc_service_manager);
46 DCHECK(g_arc_service_manager->thread_checker_.CalledOnValidThread()); 50 DCHECK(g_arc_service_manager->thread_checker_.CalledOnValidThread());
47 return g_arc_service_manager; 51 return g_arc_service_manager;
48 } 52 }
49 53
50 ArcBridgeService* ArcServiceManager::arc_bridge_service() { 54 ArcBridgeService* ArcServiceManager::arc_bridge_service() {
51 DCHECK(thread_checker_.CalledOnValidThread()); 55 DCHECK(thread_checker_.CalledOnValidThread());
52 return arc_bridge_service_.get(); 56 return arc_bridge_service_.get();
53 } 57 }
54 58
55 } // namespace arc 59 } // namespace arc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698