CharacteristicPnPID

@available(swift 3.1)
@available(iOS 10.0, tvOS 10.0, watchOS 3.0, macOS 10.12, *)
final public class CharacteristicPnPID : Characteristic
extension CharacteristicPnPID: Hashable
extension CharacteristicPnPID: Equatable

BLE PnP ID Characteristic

The PnP_ID characteristic is a set of values that used to create a device ID value that is unique for this device. Included in the characteristic is a Vendor ID Source field, a Vendor ID field, a Product ID field and a Product Version field. These values are used to identify all devices of a given type/model/version using numbers

  • Characteristic Name

    Declaration

    Swift

    public static var name: String { get }
  • Characteristic UUID

    Declaration

    Swift

    public static var uuidString: String { get }
  • Vendor Source Types

    See more

    Declaration

    Swift

    public enum VendorSource : UInt8
  • Name of the Characteristic

    Declaration

    Swift

    public var name: String { get }
  • Characteristic UUID String

    Declaration

    Swift

    public var uuidString: String { get }
  • Vendor ID Source

    Identifies the source of the Vendor ID field

    Declaration

    Swift

    private(set) public var vendorIdSource: VendorSource { get }
  • Vendor ID

    Identifies the product vendor from the namespace in the Vendor ID Source

    Declaration

    Swift

    private(set) public var vendorId: UInt16 { get }
  • Product ID

    Manufacturer managed identifier for this product

    Declaration

    Swift

    private(set) public var productId: UInt16 { get }
  • Product Version

    Manufacturer managed version for this product

    Declaration

    Swift

    private(set) public var productVersion: UInt16 { get }
  • Creates PnP ID Charateristic

    Declaration

    Swift

    public init(vendorIdSource: VendorSource, vendorId: UInt16, productId: UInt16, productVersion: UInt16)

    Parameters

    vendorIdSource

    Identifies the source of the Vendor ID field

    vendorId

    Identifies the product vendor from the namespace in the Vendor ID Source

    productId

    Manufacturer managed identifier for this product

    productVersion

    Manufacturer managed version for this product

  • Decodes Characteristic Data into Characteristic

    Declaration

    Swift

    public class func decode<C>(with data: Data) -> Result<C, BluetoothDecodeError> where C : Characteristic

    Parameters

    data

    Characteristic Data

    Return Value

    Characteristic Result

  • Encodes the Characteristic into Data

    Declaration

    Swift

    public func encode() -> Result<Data, BluetoothEncodeError>

    Return Value

    Characteristic Data Result

  • Hashes the essential components of this value by feeding them into the given hasher.

    Implement this method to conform to the Hashable protocol. The components used for hashing must be the same as the components compared in your type’s == operator implementation. Call hasher.combine(_:) with each of these components.

    Important

    Never call finalize() on hasher. Doing so may become a compile-time error in the future.

    Declaration

    Swift

    public func hash(into hasher: inout Hasher)

    Parameters

    hasher

    The hasher to use when combining the components of this instance.

  • Returns a Boolean value indicating whether two values are equal.

    Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

    Declaration

    Swift

    public static func == (lhs: CharacteristicPnPID, rhs: CharacteristicPnPID) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.