---
title: MPSDataLayout
framework: metalperformanceshaders
role: symbol
role_heading: Enumeration
path: metalperformanceshaders/mpsdatalayout
---

# MPSDataLayout

Options that define how buffer data is arranged.

## Declaration

```swift
enum MPSDataLayout
```

## Topics

### Enumeration Cases

- [MPSDataLayout.featureChannelsxHeightxWidth](metalperformanceshaders/mpsdatalayout/featurechannelsxheightxwidth.md)
- [MPSDataLayout.HeightxWidthxFeatureChannels](metalperformanceshaders/mpsdatalayout/heightxwidthxfeaturechannels.md)

### Initializers

- [init(rawValue:)](metalperformanceshaders/mpsdatalayout/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Methods to Read and Write Raw Data

- [readBytes(_:dataLayout:bytesPerRow:region:featureChannelInfo:imageIndex:)](metalperformanceshaders/mpsimage/readbytes(_:datalayout:bytesperrow:region:featurechannelinfo:imageindex:).md)
- [readBytes(_:dataLayout:imageIndex:)](metalperformanceshaders/mpsimage/readbytes(_:datalayout:imageindex:).md)
- [writeBytes(_:dataLayout:bytesPerRow:region:featureChannelInfo:imageIndex:)](metalperformanceshaders/mpsimage/writebytes(_:datalayout:bytesperrow:region:featurechannelinfo:imageindex:).md)
- [writeBytes(_:dataLayout:imageIndex:)](metalperformanceshaders/mpsimage/writebytes(_:datalayout:imageindex:).md)
- [MPSImageReadWriteParams](metalperformanceshaders/mpsimagereadwriteparams.md)
