---
title: IONaturalMemoryCursor
framework: kernel
role: symbol
role_heading: Class
path: kernel/ionaturalmemorycursor
---

# IONaturalMemoryCursor

An IOMemoryCursor subclass that outputs a vector of PhysicalSegments in the natural byte orientation for the CPU.

## Declaration

```occ
class IONaturalMemoryCursor : IOMemoryCursor
```

## Overview

Overview The IONaturalMemoryCursor would be used when it is too difficult to safely describe a SegmentFunction that is more appropriate for your hardware. This cursor just outputs an array of PhysicalSegments.

## Topics

### Miscellaneous

- [getPhysicalSegments](kernel/ionaturalmemorycursor/1813076-getphysicalsegments.md)
- [initWithSpecification](kernel/ionaturalmemorycursor/1813089-initwithspecification.md)
- [outputSegment](kernel/ionaturalmemorycursor/1813100-outputsegment.md)
- [withSpecification](kernel/ionaturalmemorycursor/1813112-withspecification.md)

### Constants

- [Miscellaneous Defines](kernel/ionaturalmemorycursor/miscellaneous_defines.md)

### Instance Methods

- [getMetaClass](kernel/ionaturalmemorycursor/1401014-getmetaclass.md)
- [getPhysicalSegments](kernel/ionaturalmemorycursor/1400988-getphysicalsegments.md)
- [initWithSpecification](kernel/ionaturalmemorycursor/1401018-initwithspecification.md)

### Type Methods

- [outputSegment](kernel/ionaturalmemorycursor/1400992-outputsegment.md)
- [withSpecification](kernel/ionaturalmemorycursor/1400990-withspecification.md)

## Relationships

### Inherits From

- [IOMemoryCursor](kernel/iomemorycursor.md)

## See Also

### Cursors

- [IOBigMemoryCursor](kernel/iobigmemorycursor.md)
- [IOLittleMemoryCursor](kernel/iolittlememorycursor.md)
- [IOMemoryCursor](kernel/iomemorycursor.md)
