---
title: IOUSBCompletionAction
framework: IOKit
role: symbol
role_heading: Type Alias
platforms: [Mac Catalyst 18.4+, macOS 10.0+]
path: iokit/iousbcompletionaction
---

# IOUSBCompletionAction

## Declaration

```occ
typedef void (*IOUSBCompletionAction)(void *target, void *parameter, IOReturn status, UInt32 bufferSizeRemaining);
```

## Parameters

- `target`: The target specified in the IOUSBCompletion struct.
- `parameter`: The parameter specified in the IOUSBCompletion struct.
- `status`: Completion status.
- `bufferSizeRemaining`: Bytes left to be transferred.

## Discussion

Discussion Function called when USB I/O completes.

## See Also

### Callbacks

- [IOUSBCompletionActionWithTimeStamp](iokit/iousbcompletionactionwithtimestamp.md)
- [IOUSBIsocCompletionAction](iokit/iousbisoccompletionaction.md)
- [IOUSBLowLatencyIsocCompletionAction](iokit/iousblowlatencyisoccompletionaction.md)
