---
title: "IOUSBGetEndpointMaxStreams(_:_:_:)"
framework: iousbhost
role: symbol
role_heading: Function
path: "iousbhost/iousbgetendpointmaxstreams(_:_:_:)"
---

# IOUSBGetEndpointMaxStreams(_:_:_:)

Obtains the number of supported streams.

## Declaration

```swift
func IOUSBGetEndpointMaxStreams(_ usbDeviceSpeed: UInt32, _ descriptor: UnsafePointer<IOUSBEndpointDescriptor>!, _ companionDescriptor: UnsafePointer<IOUSBSuperSpeedEndpointCompanionDescriptor>!) -> UInt32
```

## Parameters

- `usbDeviceSpeed`: The operational speed of the device.
- `descriptor`: The endpoint descriptor of the device.
- `companionDescriptor`: The companion descriptor to parse.

## Return Value

Return Value The number of streams.

## Discussion

Discussion This method parses endpoint descriptors and returns the number of supported streams.

## See Also

### Endpoint Descriptor Parsing

- [IOUSBGetNextEndpointDescriptor(_:_:_:)](iousbhost/iousbgetnextendpointdescriptor(_:_:_:).md)
- [IOUSBGetEndpointDirection(_:)](iousbhost/iousbgetendpointdirection(_:).md)
- [IOUSBGetEndpointAddress(_:)](iousbhost/iousbgetendpointaddress(_:).md)
- [IOUSBGetEndpointNumber(_:)](iousbhost/iousbgetendpointnumber(_:).md)
- [IOUSBGetEndpointType(_:)](iousbhost/iousbgetendpointtype(_:).md)
- [IOUSBGetEndpointMaxPacketSize(_:_:)](iousbhost/iousbgetendpointmaxpacketsize(_:_:).md)
- [IOUSBGetEndpointIntervalEncodedMicroframes(_:_:)](iousbhost/iousbgetendpointintervalencodedmicroframes(_:_:).md)
- [IOUSBGetEndpointIntervalMicroframes(_:_:)](iousbhost/iousbgetendpointintervalmicroframes(_:_:).md)
- [IOUSBGetEndpointIntervalFrames(_:_:)](iousbhost/iousbgetendpointintervalframes(_:_:).md)
- [IOUSBGetEndpointMaxStreamsEncoded(_:_:_:)](iousbhost/iousbgetendpointmaxstreamsencoded(_:_:_:).md)
