---
title: ICScannerFeature
framework: imagecapturecore
role: symbol
role_heading: Class
path: imagecapturecore/icscannerfeature
---

# ICScannerFeature

An abstract class that describes a scanner feature.

## Declaration

```swift
class ICScannerFeature
```

## Overview

Overview The ImageCaptureCore framework defines three concrete subclasses of scanner features: ICScannerFeatureEnumeration, ICScannerFeatureRange, and ICScannerFeatureBoolean. Scanner functional units may have one or more instances of these classes to allow users to choose scanner-specific settings or operations before performing a scan.

## Topics

### Instance Properties

- [humanReadableName](imagecapturecore/icscannerfeature/humanreadablename.md)
- [internalName](imagecapturecore/icscannerfeature/internalname.md)
- [tooltip](imagecapturecore/icscannerfeature/tooltip.md)
- [type](imagecapturecore/icscannerfeature/type.md)

## Relationships

### Inherits From

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

### Inherited By

- [ICScannerFeatureBoolean](imagecapturecore/icscannerfeatureboolean.md)
- [ICScannerFeatureEnumeration](imagecapturecore/icscannerfeatureenumeration.md)
- [ICScannerFeatureRange](imagecapturecore/icscannerfeaturerange.md)
- [ICScannerFeatureTemplate](imagecapturecore/icscannerfeaturetemplate.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

### Features

- [ICScannerFeatureBoolean](imagecapturecore/icscannerfeatureboolean.md)
- [ICScannerFeatureEnumeration](imagecapturecore/icscannerfeatureenumeration.md)
- [ICScannerFeatureRange](imagecapturecore/icscannerfeaturerange.md)
- [ICScannerFeatureTemplate](imagecapturecore/icscannerfeaturetemplate.md)
- [ICScannerFeatureType](imagecapturecore/icscannerfeaturetype.md)
