<!--
{
  "availability" : [
    "macOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AccessoryAccess",
  "identifier" : "/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Accessory Access",
      "AccessoryAccess"
    ],
    "preciseIdentifier" : "s:So30AAUSBAccessoryMatchingCriteriaC15AccessoryAccessE09InterfacebC0V"
  },
  "title" : "AAUSBAccessoryMatchingCriteria.InterfaceMatchingCriteria"
}
-->

# AAUSBAccessoryMatchingCriteria.InterfaceMatchingCriteria

A structure you provide that enumerates which device interface characteristics to search for.

```
struct InterfaceMatchingCriteria
```

## Topics

### Creating an interface characteristics structure

[`init(vendorID:productID:bcdDevice:interfaceNumber:configurationValue:interfaceClass:interfaceSubClass:interfaceProtocol:speed:)`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/init(vendorID:productID:bcdDevice:interfaceNumber:configurationValue:interfaceClass:interfaceSubClass:interfaceProtocol:speed:))

Initializes a new matching criteria structure with the provided values.

### Interface characteristics

[`bcdDevice`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/bcdDevice)

The 2-byte Binary-Coded Decimal (BCD) value defined by the manufacturer to indicate the device revision or version number.

[`configurationValue`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/configurationValue)

The value that represents the configuration.

[`interfaceClass`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/interfaceClass)

The value that represents the interface class.

[`interfaceNumber`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/interfaceNumber)

The value that represents the interface number.

[`interfaceProtocol`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/interfaceProtocol)

The value that represents the interface protocol.

[`interfaceSubClass`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/interfaceSubClass)

The value that represents the interface subclass.

[`productID`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/productID)

The value that represents the product ID.

[`speed`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/speed)

The value that represents the interface speed.

[`vendorID`](/documentation/AccessoryAccess/AAUSBAccessoryMatchingCriteria/InterfaceMatchingCriteria/vendorID)

The value that represents the vendor ID.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)