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

Side by Side Diff: media/capture/video/chromeos/mock_camera_module.cc

Issue 2936373002: Revert of media: add video capture device for ARC++ camera HAL v3 (Closed)
Patch Set: Created 3 years, 6 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
(Empty)
1 // Copyright 2017 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.
4
5 #include "media/capture/video/chromeos/mock_camera_module.h"
6
7 #include <memory>
8 #include <utility>
9
10 namespace media {
11 namespace unittest_internal {
12
13 MockCameraModule::MockCameraModule()
14 : mock_module_thread_("MockModuleThread"), binding_(this) {
15 mock_module_thread_.Start();
16 }
17
18 MockCameraModule::~MockCameraModule() {
19 mock_module_thread_.task_runner()->PostTask(
20 FROM_HERE, base::Bind(&MockCameraModule::CloseBindingOnThread,
21 base::Unretained(this)));
22 mock_module_thread_.Stop();
23 }
24
25 void MockCameraModule::OpenDevice(
26 int32_t camera_id,
27 arc::mojom::Camera3DeviceOpsRequest device_ops_request,
28 OpenDeviceCallback callback) {
29 DoOpenDevice(camera_id, device_ops_request, callback);
30 }
31
32 void MockCameraModule::GetNumberOfCameras(GetNumberOfCamerasCallback callback) {
33 DoGetNumberOfCameras(callback);
34 }
35
36 void MockCameraModule::GetCameraInfo(int32_t camera_id,
37 GetCameraInfoCallback callback) {
38 DoGetCameraInfo(camera_id, callback);
39 }
40
41 void MockCameraModule::SetCallbacks(
42 arc::mojom::CameraModuleCallbacksPtr callbacks,
43 SetCallbacksCallback callback) {
44 DoSetCallbacks(callbacks, callback);
45 callbacks_ = std::move(callbacks);
46 std::move(callback).Run(0);
47 }
48
49 arc::mojom::CameraModulePtrInfo MockCameraModule::GetInterfacePtrInfo() {
50 base::WaitableEvent done(base::WaitableEvent::ResetPolicy::MANUAL,
51 base::WaitableEvent::InitialState::NOT_SIGNALED);
52 arc::mojom::CameraModulePtrInfo ptr_info;
53 mock_module_thread_.task_runner()->PostTask(
54 FROM_HERE,
55 base::Bind(&MockCameraModule::BindOnThread, base::Unretained(this),
56 base::Unretained(&done), base::Unretained(&ptr_info)));
57 done.Wait();
58 return ptr_info;
59 }
60
61 void MockCameraModule::CloseBindingOnThread() {
62 if (binding_.is_bound()) {
63 binding_.Close();
64 }
65 }
66
67 void MockCameraModule::BindOnThread(base::WaitableEvent* done,
68 arc::mojom::CameraModulePtrInfo* ptr_info) {
69 arc::mojom::CameraModulePtr camera_module_ptr;
70 arc::mojom::CameraModuleRequest camera_module_request =
71 mojo::MakeRequest(&camera_module_ptr);
72 binding_.Bind(std::move(camera_module_request));
73 *ptr_info = camera_module_ptr.PassInterface();
74 done->Signal();
75 }
76
77 } // namespace unittest_internal
78 } // namespace media
OLDNEW
« no previous file with comments | « media/capture/video/chromeos/mock_camera_module.h ('k') | media/capture/video/chromeos/mock_video_capture_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698