| // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef DEVICE_BLUETOOTH_BLUETOOTH_SERVICE_RECORD_WIN_H_ | 
 | #define DEVICE_BLUETOOTH_BLUETOOTH_SERVICE_RECORD_WIN_H_ | 
 |  | 
 | #include <stdint.h> | 
 |  | 
 | #include <string> | 
 | #include <vector> | 
 |  | 
 | #include "base/macros.h" | 
 | #include "device/bluetooth/bluetooth_export.h" | 
 | #include "device/bluetooth/bluetooth_init_win.h" | 
 | #include "device/bluetooth/public/cpp/bluetooth_uuid.h" | 
 |  | 
 | namespace device { | 
 |  | 
 | class DEVICE_BLUETOOTH_EXPORT BluetoothServiceRecordWin { | 
 |  public: | 
 |   BluetoothServiceRecordWin(const std::string& device_address, | 
 |                             const std::string& name, | 
 |                             const std::vector<uint8_t>& sdp_bytes, | 
 |                             const BluetoothUUID& gatt_uuid); | 
 |  | 
 |   bool IsEqual(const BluetoothServiceRecordWin& other); | 
 |  | 
 |   // The BTH_ADDR address of the BluetoothDevice providing this service. | 
 |   BTH_ADDR device_bth_addr() const { return device_bth_addr_; } | 
 |  | 
 |   // The address of the BluetoothDevice providing this service. | 
 |   const std::string& device_address() const { return device_address_; } | 
 |  | 
 |   // The human-readable name of this service. | 
 |   const std::string& name() const { return name_; } | 
 |  | 
 |   // The UUID of the service.  This field may be empty if no UUID was | 
 |   // specified in the service record. | 
 |   const BluetoothUUID& uuid() const { return uuid_; } | 
 |  | 
 |   // Indicates if this service supports RFCOMM communication. | 
 |   bool SupportsRfcomm() const { return supports_rfcomm_; } | 
 |  | 
 |   // The RFCOMM channel to use, if this service supports RFCOMM communication. | 
 |   // The return value is undefined if SupportsRfcomm() returns false. | 
 |   uint8_t rfcomm_channel() const { return rfcomm_channel_; } | 
 |  | 
 |  private: | 
 |   BTH_ADDR device_bth_addr_; | 
 |   std::string device_address_; | 
 |   std::string name_; | 
 |   BluetoothUUID uuid_; | 
 |  | 
 |   bool supports_rfcomm_; | 
 |   uint8_t rfcomm_channel_; | 
 |  | 
 |   DISALLOW_COPY_AND_ASSIGN(BluetoothServiceRecordWin); | 
 | }; | 
 |  | 
 | }  // namespace device | 
 |  | 
 | #endif  // DEVICE_BLUETOOTH_BLUETOOTH_SERVICE_RECORD_WIN_H_ |