---
title: IOUSBHostObject
framework: iousbhost
role: symbol
role_heading: Class
path: iousbhost/iousbhostobject
---

# IOUSBHostObject

This class provides basic functionality for sending device requests and retrieving descriptors.

## Declaration

```swift
class IOUSBHostObject
```

## Topics

### Managing the Object Life Cycle

- [IOUSBHostObjectInitOptions](iousbhost/iousbhostobjectinitoptions.md)
- [IOUSBHostInterestHandler](iousbhost/iousbhostinteresthandler.md)
- [ioService](iousbhost/iousbhostobject/ioservice.md)
- [queue](iousbhost/iousbhostobject/queue.md)
- [destroy()](iousbhost/iousbhostobject/destroy().md)

### Retrieving Base Class Descriptors

- [Parsing USB Descriptors](iousbhost/parsing-usb-descriptors.md)

### Creating I/O Buffers

- [ioData(withCapacity:)](iousbhost/iousbhostobject/iodata(withcapacity:).md)

### Sending Device Requests

- [IOUSBHostDeviceRequestType(_:_:_:)](iousbhost/iousbhostdevicerequesttype(_:_:_:).md)
- [IOUSBHostDefaultControlCompletionTimeout](iousbhost/iousbhostdefaultcontrolcompletiontimeout.md)

### Enqueueing Device Requests

- [IOUSBHostCompletionHandler](iousbhost/iousbhostcompletionhandler.md)

### Aborting Device Requests

- [IOUSBHostAbortOption](iousbhost/iousbhostabortoption.md)

### Getting Host Information

- [deviceAddress](iousbhost/iousbhostobject/deviceaddress.md)

### Instance Properties

- [capabilityDescriptors](iousbhost/iousbhostobject/capabilitydescriptors.md)
- [deviceDescriptor](iousbhost/iousbhostobject/devicedescriptor.md)

### Instance Methods

- [configurationDescriptor(with:)](iousbhost/iousbhostobject/configurationdescriptor(with:).md)
- [configurationDescriptor(withConfigurationValue:)](iousbhost/iousbhostobject/configurationdescriptor(withconfigurationvalue:).md)
- [data(withCapacity:options:)](iousbhost/iousbhostobject/data(withcapacity:options:).md)
- [destroy(options:)](iousbhost/iousbhostobject/destroy(options:).md)

### Related Documentation

- [IOUSBHostDevice](iousbhost/iousbhostdevice.md)
- [IOUSBHostInterface](iousbhost/iousbhostinterface.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [IOUSBHostDevice](iousbhost/iousbhostdevice.md)
- [IOUSBHostInterface](iousbhost/iousbhostinterface.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Base Classes

- [IOUSBHostIOSource](iousbhost/iousbhostiosource.md)
