---
title: "CVOpenGLBufferPoolCreate(_:_:_:_:)"
framework: Core Video
role: symbol
role_heading: Function
platforms: [macOS 10.4+]
path: "corevideo/cvopenglbufferpoolcreate(_:_:_:_:)"
---

# CVOpenGLBufferPoolCreate(_:_:_:_:)

Creates a new OpenGL buffer pool.

## Declaration

```swift
func CVOpenGLBufferPoolCreate(_ allocator: CFAllocator?, _ poolAttributes: CFDictionary?, _ openGLBufferAttributes: CFDictionary?, _ poolOut: UnsafeMutablePointer<CVOpenGLBufferPool?>) -> CVReturn
```

## Parameters

- `allocator`: The allocator to use for allocating this buffer pool. Pass NULL to specify the default allocator.
- `poolAttributes`: A Core Foundation dictionary containing the attributes to be used for the pool itself.
- `openGLBufferAttributes`: A Core Foundation dictionary containing the attributes to be used for creating new OpenGL buffers within the pool.
- `poolOut`: On output, poolOut points to the new OpenGL buffer pool.

## Return Value

Return Value A Core Video result code. SeeCore Video Constants for possible values.

## See Also

### Functions

- [CVOpenGLBufferPoolCreateOpenGLBuffer(_:_:_:)](corevideo/cvopenglbufferpoolcreateopenglbuffer(_:_:_:).md)
- [CVOpenGLBufferPoolGetAttributes(_:)](corevideo/cvopenglbufferpoolgetattributes(_:).md)
- [CVOpenGLBufferPoolGetOpenGLBufferAttributes(_:)](corevideo/cvopenglbufferpoolgetopenglbufferattributes(_:).md)
- [CVOpenGLBufferPoolGetTypeID()](corevideo/cvopenglbufferpoolgettypeid().md)
