| Index: device/bluetooth/bluetooth_task_manager_win.h
|
| diff --git a/device/bluetooth/bluetooth_task_manager_win.h b/device/bluetooth/bluetooth_task_manager_win.h
|
| index 35d22cdcebffc0dfb7c011cbfa4783f840304747..c8356a8a025ae234872b030dff8f759b65ba4fe5 100644
|
| --- a/device/bluetooth/bluetooth_task_manager_win.h
|
| +++ b/device/bluetooth/bluetooth_task_manager_win.h
|
| @@ -99,6 +99,8 @@ class DEVICE_BLUETOOTH_EXPORT BluetoothTaskManagerWin
|
| // discovery session, the "friendly" name may initially be "unknown" before
|
| // the actual name is retrieved in subsequent poll events.
|
| virtual void DevicesPolled(const ScopedVector<DeviceState>& devices) {}
|
| + virtual void OnAttemptReadGattCharacteristic() {}
|
| + virtual void OnAttemptWriteGattCharacteristic() {}
|
| };
|
|
|
| explicit BluetoothTaskManagerWin(
|
| @@ -123,12 +125,16 @@ class DEVICE_BLUETOOTH_EXPORT BluetoothTaskManagerWin
|
| void PostStopDiscoveryTask();
|
|
|
| // Callbacks of asynchronous operations of GATT service.
|
| + typedef base::Callback<void(HRESULT)> HResultCallback;
|
| typedef base::Callback<
|
| void(scoped_ptr<BTH_LE_GATT_CHARACTERISTIC>, uint16_t, HRESULT)>
|
| GetGattIncludedCharacteristicsCallback;
|
| typedef base::Callback<
|
| void(scoped_ptr<BTH_LE_GATT_DESCRIPTOR>, uint16_t, HRESULT)>
|
| GetGattIncludedDescriptorsCallback;
|
| + typedef base::Callback<void(scoped_ptr<BTH_LE_GATT_CHARACTERISTIC_VALUE>,
|
| + HRESULT)>
|
| + ReadGattCharacteristicValueCallback;
|
|
|
| // Get all included characteristics of a given service. The service is
|
| // uniquely identified by its |uuid| and |attribute_handle| with service
|
| @@ -148,6 +154,22 @@ class DEVICE_BLUETOOTH_EXPORT BluetoothTaskManagerWin
|
| const PBTH_LE_GATT_CHARACTERISTIC characteristic,
|
| const GetGattIncludedDescriptorsCallback& callback);
|
|
|
| + // Post read the value of a given |characteristic| in service with
|
| + // |service_path|. The result is returned asynchronously through |callback|.
|
| + void PostReadGattCharacteristicValue(
|
| + const base::FilePath& device_path,
|
| + const PBTH_LE_GATT_CHARACTERISTIC characteristic,
|
| + const ReadGattCharacteristicValueCallback& callback);
|
| +
|
| + // Post write the value of a given |characteristic| in service with
|
| + // |service_path| to |new_value|. The operation result is returned
|
| + // asynchronously through |callback|.
|
| + void PostWriteGattCharacteristicValue(
|
| + const base::FilePath& service_path,
|
| + const PBTH_LE_GATT_CHARACTERISTIC characteristic,
|
| + const std::vector<uint8_t>& new_value,
|
| + const HResultCallback& callback);
|
| +
|
| private:
|
| friend class base::RefCountedThreadSafe<BluetoothTaskManagerWin>;
|
| friend class BluetoothTaskManagerWinTest;
|
| @@ -248,6 +270,14 @@ class DEVICE_BLUETOOTH_EXPORT BluetoothTaskManagerWin
|
| base::FilePath service_path,
|
| BTH_LE_GATT_CHARACTERISTIC characteristic,
|
| const GetGattIncludedDescriptorsCallback& callback);
|
| + void ReadGattCharacteristicValue(
|
| + base::FilePath device_path,
|
| + BTH_LE_GATT_CHARACTERISTIC characteristic,
|
| + const ReadGattCharacteristicValueCallback& callback);
|
| + void WriteGattCharacteristicValue(base::FilePath service_path,
|
| + BTH_LE_GATT_CHARACTERISTIC characteristic,
|
| + std::vector<uint8_t> new_value,
|
| + const HResultCallback& callback);
|
|
|
| // UI task runner reference.
|
| scoped_refptr<base::SequencedTaskRunner> ui_task_runner_;
|
|
|