---
title: ICScannerDeviceDelegate
framework: imagecapturecore
role: symbol
role_heading: Protocol
path: imagecapturecore/icscannerdevicedelegate
---

# ICScannerDeviceDelegate

Methods for determining availability, selecting a functional unit, and performing scans on connected scanners.

## Declaration

```swift
protocol ICScannerDeviceDelegate : ICDeviceDelegate
```

## Topics

### Determining Scanner Availability

- [scannerDeviceDidBecomeAvailable(_:)](imagecapturecore/icscannerdevicedelegate/scannerdevicedidbecomeavailable(_:).md)

### Selecting a Functional Unit

- [scannerDevice(_:didSelect:error:)](imagecapturecore/icscannerdevicedelegate/scannerdevice(_:didselect:error:).md)

### Performing a Scan

- [scannerDevice(_:didCompleteOverviewScanWithError:)](imagecapturecore/icscannerdevicedelegate/scannerdevice(_:didcompleteoverviewscanwitherror:).md)
- [scannerDevice(_:didCompleteScanWithError:)](imagecapturecore/icscannerdevicedelegate/scannerdevice(_:didcompletescanwitherror:).md)
- [scannerDevice(_:didScanTo:)](imagecapturecore/icscannerdevicedelegate/scannerdevice(_:didscanto:)-6tht3.md)
- [scannerDevice(_:didScanTo:)](imagecapturecore/icscannerdevicedelegate/scannerdevice(_:didscanto:)-10whl.md)

## Relationships

### Inherits From

- [ICDeviceDelegate](imagecapturecore/icdevicedelegate.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Scanners

- [ICScannerDevice](imagecapturecore/icscannerdevice.md)
- [Scanner Configuration](imagecapturecore/scanner-configuration.md)
