---
title: MTL4PipelineOptions
framework: metal
role: symbol
role_heading: Class
path: metal/mtl4pipelineoptions
---

# MTL4PipelineOptions

Provides options controlling how to compile a pipeline state.

## Declaration

```swift
class MTL4PipelineOptions
```

## Overview

Overview You provide these options through the MTL4PipelineDescriptor class at compilation time.

## Topics

### Instance Properties

- [shaderReflection](metal/mtl4pipelineoptions/shaderreflection.md)
- [shaderValidation](metal/mtl4pipelineoptions/shadervalidation.md)

## Relationships

### Inherits From

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

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Pipeline harvesting

- [MTL4PipelineDataSetSerializer](metal/mtl4pipelinedatasetserializer.md)
- [MTL4PipelineDataSetSerializerConfiguration](metal/mtl4pipelinedatasetserializerconfiguration.md)
- [MTL4PipelineDataSetSerializerDescriptor](metal/mtl4pipelinedatasetserializerdescriptor.md)
- [MTL4PipelineDescriptor](metal/mtl4pipelinedescriptor.md)
