| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| library fuchsia.bluetooth; |
| |
| /// The "Class of Device/Service" is a variable-format field that defines the category of a |
| /// Bluetooth device. The bitfield is divided into segments called "major service class", |
| /// "major device class", and "minor device class". |
| /// |
| /// No assumptions about the specific functionality or characteristics of any application should be |
| /// based solely on its inclusion within a Major or Minor device class. For more information, see |
| /// https://www.bluetooth.com/specifications/assigned-numbers/baseband. |
| type DeviceClass = struct { |
| value uint32; |
| }; |
| |
| /// Constants for the major device class field. The major device class is defined by bits 12-8. |
| const MAJOR_DEVICE_CLASS_MASK uint32 = 0x1f00; |
| |
| const MAJOR_DEVICE_CLASS_MISCELLANEOUS uint32 = 0x0000; |
| const MAJOR_DEVICE_CLASS_COMPUTER uint32 = 0x0100; |
| const MAJOR_DEVICE_CLASS_PHONE uint32 = 0x0200; |
| const MAJOR_DEVICE_CLASS_LAN uint32 = 0x0300; |
| const MAJOR_DEVICE_CLASS_AUDIO_VIDEO uint32 = 0x0400; |
| const MAJOR_DEVICE_CLASS_PERIPHERAL uint32 = 0x0500; |
| const MAJOR_DEVICE_CLASS_IMAGING uint32 = 0x0600; |
| const MAJOR_DEVICE_CLASS_WEARABLE uint32 = 0x0700; |
| const MAJOR_DEVICE_CLASS_TOY uint32 = 0x0800; |
| const MAJOR_DEVICE_CLASS_HEALTH uint32 = 0x0900; |
| const MAJOR_DEVICE_CLASS_UNCATEGORIZED uint32 = 0x1f00; |