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

Side by Side Diff: device/bluetooth/bluetooth_audio_sink_chromeos.h

Issue 876153002: device/bluetooth:Implement Register() for BluetoothAudioSinkChromeOS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed AdapterPoweredChanged(), |present_| and |powered_|. 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 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 DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_ 5 #ifndef DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_
6 #define DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_ 6 #define DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
13 #include "base/memory/weak_ptr.h" 13 #include "base/memory/weak_ptr.h"
14 #include "base/observer_list.h" 14 #include "base/observer_list.h"
15 #include "chromeos/dbus/bluetooth_media_client.h" 15 #include "chromeos/dbus/bluetooth_media_client.h"
16 #include "chromeos/dbus/bluetooth_media_endpoint_service_provider.h" 16 #include "chromeos/dbus/bluetooth_media_endpoint_service_provider.h"
17 #include "chromeos/dbus/bluetooth_media_transport_client.h" 17 #include "chromeos/dbus/bluetooth_media_transport_client.h"
18 #include "dbus/file_descriptor.h" 18 #include "dbus/file_descriptor.h"
19 #include "dbus/object_path.h" 19 #include "dbus/object_path.h"
20 #include "device/bluetooth/bluetooth_adapter.h" 20 #include "device/bluetooth/bluetooth_adapter.h"
21 #include "device/bluetooth/bluetooth_adapter_chromeos.h"
22 #include "device/bluetooth/bluetooth_audio_sink.h" 21 #include "device/bluetooth/bluetooth_audio_sink.h"
23 #include "device/bluetooth/bluetooth_export.h" 22 #include "device/bluetooth/bluetooth_export.h"
24 23
25 namespace chromeos { 24 namespace chromeos {
26 25
26 class BluetoothAdapterChromeOS;
27
27 class DEVICE_BLUETOOTH_EXPORT BluetoothAudioSinkChromeOS 28 class DEVICE_BLUETOOTH_EXPORT BluetoothAudioSinkChromeOS
28 : public device::BluetoothAudioSink, 29 : public device::BluetoothAudioSink,
29 public device::BluetoothAdapter::Observer, 30 public device::BluetoothAdapter::Observer,
30 public BluetoothMediaClient::Observer, 31 public BluetoothMediaClient::Observer,
31 public BluetoothMediaTransportClient::Observer, 32 public BluetoothMediaTransportClient::Observer,
32 public BluetoothMediaEndpointServiceProvider::Delegate { 33 public BluetoothMediaEndpointServiceProvider::Delegate {
33 public: 34 public:
34 explicit BluetoothAudioSinkChromeOS(BluetoothAdapterChromeOS* adapter); 35 explicit BluetoothAudioSinkChromeOS(BluetoothAdapterChromeOS* adapter);
35 36
36 // device::BluetoothAudioSink overrides. 37 // device::BluetoothAudioSink overrides.
37 void AddObserver(BluetoothAudioSink::Observer* observer) override; 38 void AddObserver(BluetoothAudioSink::Observer* observer) override;
38 void RemoveObserver(BluetoothAudioSink::Observer* observer) override; 39 void RemoveObserver(BluetoothAudioSink::Observer* observer) override;
39 device::BluetoothAudioSink::State GetState() const override; 40 device::BluetoothAudioSink::State GetState() const override;
40 uint16_t GetVolume() const override; 41 uint16_t GetVolume() const override;
41 42
42 // device::BluetoothAdapter::Observer overrides. 43 // device::BluetoothAdapter::Observer override.
Ben Chan 2015/01/28 15:54:27 this change is probably not necessary. see // Blue
Miao 2015/01/28 22:34:20 Done.
43 void AdapterPresentChanged(device::BluetoothAdapter* adapter, 44 void AdapterPresentChanged(device::BluetoothAdapter* adapter,
44 bool present) override; 45 bool present) override;
45 void AdapterPoweredChanged(device::BluetoothAdapter* adapter,
46 bool powered) override;
47 46
48 // BluetoothMediaClient::Observer overrides. 47 // BluetoothMediaClient::Observer overrides.
49 void MediaRemoved(const dbus::ObjectPath& object_path) override; 48 void MediaRemoved(const dbus::ObjectPath& object_path) override;
50 49
51 // BluetoothMediaTransportClient::Observer overrides. 50 // BluetoothMediaTransportClient::Observer overrides.
52 void MediaTransportRemoved(const dbus::ObjectPath& object_path) override; 51 void MediaTransportRemoved(const dbus::ObjectPath& object_path) override;
53 void MediaTransportPropertyChanged(const dbus::ObjectPath& object_path, 52 void MediaTransportPropertyChanged(const dbus::ObjectPath& object_path,
54 const std::string& property_name) override; 53 const std::string& property_name) override;
55 54
56 // BluetoothMediaEndpointServiceProvider::Delegate overrides. 55 // BluetoothMediaEndpointServiceProvider::Delegate overrides.
(...skipping 24 matching lines...) Expand all
81 private: 80 private:
82 ~BluetoothAudioSinkChromeOS() override; 81 ~BluetoothAudioSinkChromeOS() override;
83 82
84 // Called when the state property of BluetoothMediaTransport has been updated. 83 // Called when the state property of BluetoothMediaTransport has been updated.
85 void StateChanged(device::BluetoothAudioSink::State state); 84 void StateChanged(device::BluetoothAudioSink::State state);
86 85
87 // Called when the volume property of BluetoothMediaTransport has been 86 // Called when the volume property of BluetoothMediaTransport has been
88 // updated. 87 // updated.
89 void VolumeChanged(uint16_t volume); 88 void VolumeChanged(uint16_t volume);
90 89
90 // Called when the registration of Media Endpoint has succeeded.
91 void OnRegisterSucceeded(const base::Closure& callback);
92
93 // Called when the registration of Media Endpoint failed.
94 void OnRegisterFailed(const BluetoothAudioSink::ErrorCallback& error_back,
Ben Chan 2015/01/28 15:54:27 error_back?
Miao 2015/01/28 22:34:21 s/error_back/error_callback
95 const std::string& error_name,
96 const std::string& error_message);
97
91 // Reads from the file descriptor acquired via Media Transport object and 98 // Reads from the file descriptor acquired via Media Transport object and
92 // notify |observer_| while the audio data is available. 99 // notify |observer_| while the audio data is available.
93 void ReadFromFD(); 100 void ReadFromFD();
94 101
95 // The connection state between the BluetoothAudioSinkChromeOS and the remote 102 // The connection state between the BluetoothAudioSinkChromeOS and the remote
96 // device. 103 // device.
97 device::BluetoothAudioSink::State state_; 104 device::BluetoothAudioSink::State state_;
98 105
99 // Indicates whether the adapter is present.
100 bool present_;
101
102 // Indicates whether the adapter is powered.
103 bool powered_;
104
105 // The volume control by the remote device during the streaming. 106 // The volume control by the remote device during the streaming.
106 uint16_t volume_; 107 uint16_t volume_;
107 108
108 // Read MTU of the file descriptor acquired via Media Transport object. 109 // Read MTU of the file descriptor acquired via Media Transport object.
109 uint16_t read_mtu_; 110 uint16_t read_mtu_;
110 111
111 // Write MTU of the file descriptor acquired via Media Transport object. 112 // Write MTU of the file descriptor acquired via Media Transport object.
112 uint16_t write_mtu_; 113 uint16_t write_mtu_;
113 114
114 // File descriptor acquired via Media Transport object. 115 // File descriptor acquired via Media Transport object.
(...skipping 26 matching lines...) Expand all
141 // Note: This should remain the last member so it'll be destroyed and 142 // Note: This should remain the last member so it'll be destroyed and
142 // invalidate its weak pointers before any other members are destroyed. 143 // invalidate its weak pointers before any other members are destroyed.
143 base::WeakPtrFactory<BluetoothAudioSinkChromeOS> weak_ptr_factory_; 144 base::WeakPtrFactory<BluetoothAudioSinkChromeOS> weak_ptr_factory_;
144 145
145 DISALLOW_COPY_AND_ASSIGN(BluetoothAudioSinkChromeOS); 146 DISALLOW_COPY_AND_ASSIGN(BluetoothAudioSinkChromeOS);
146 }; 147 };
147 148
148 } // namespace chromeos 149 } // namespace chromeos
149 150
150 #endif // DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_ 151 #endif // DEVICE_BLUETOOTH_BLUETOOTH_AUDIO_SINK_CHROMEOS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698