---
title: withSpecification
framework: kernel
role: pseudoSymbol
path: kernel/iobigmemorycursor/1811699-withspecification
---

# withSpecification

Creates and initializes an IOBigMemoryCursor in one operation.

## Declaration

```occ
static IOBigMemoryCursor * withSpecification(
 IOPhysicalLength maxSegmentSize, 
 IOPhysicalLength maxTransferSize, 
 IOPhysicalLength alignment = 1); 
```

## Parameters

- `maxSegmentSize`: Maximum allowable size for one segment. Defaults to 0.
- `maxTransferSize`: Maximum size of an entire transfer. Defaults to 0 indicating no maximum.
- `alignment`: Alignment restrictions on output physical addresses. Not currently implemented. Defaults to single byte alignment.

## Return Value

Return Value Returns a new memory cursor if successfully created and initialized, 0 otherwise.

## Overview

Overview Factory function to create and initialize an IOBigMemoryCursor in one operation. See also IOBigMemoryCursor::initWithSpecification.

## See Also

### Miscellaneous

- [getPhysicalSegments](kernel/iobigmemorycursor/1811632-getphysicalsegments.md)
- [initWithSpecification](kernel/iobigmemorycursor/1811657-initwithspecification.md)
- [outputSegment](kernel/iobigmemorycursor/1811675-outputsegment.md)
