Crate ocl [] [src]

| GitHub

Rust implementation of OpenCL™.

This documentation is generally built from the dev branch and may be newer than what is on crates.io and the master branch.

Documentation is very much a work in progress, as is the library itself. Please help by filing an issue about unclear and/or incomplete documentation and it will be addressed.

An explanation of how dimensions and sizes of buffers and work queues are intended to be used will be coming as soon as a few more things are ironed out.

Low Level Interfaces

For lower level interfaces and to use OpenCL features that have not yet been implemented, see the core and cl_h modules.

Library Wide Panics

Many operations will panic upon any OpenCL error [UPDATE: Error handling is in a state of transition, some things panic, some return results].

Help Wanted

Please help complete any functionality you may need by filing an issue or creating a pull request.


“OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.”

Reexports

pub use core::OclNum;

Modules

cl_h

Rust bindings for the OpenCL ABI

core

Thin wrappers for the OpenCL FFI functions and types.

util

Utility and debugging functions.

Structs

Buffer

A buffer with an optional built-in vector.

Context

A context for a particular platform and set of device types.

Device

A device identifier.

Event

An event representing a command or user created event.

EventList

A list of events for coordinating enqueued commands.

Image

[WORK IN PROGRESS][UNTESTED] An Image.

Kernel

A kernel.

Platform

A platform identifier.

ProQue

An all-in-one chimera of the Program, Queue, and (optionally) Context types.

ProQueBuilder

A builder for ProQue.

Program

A program, sometimes referred to as a build.

ProgramBuilder

A builder for Program.

Queue

A command queue.

Enums

BuildOpt

A build option.

Error

An enum containing either a String or one of several other standard error types.

SimpleDims

A simple implementation of a type specifying the sizes of up to three dimensions.

WorkDims

Defines the amount of work to be done by a kernel for each of up to three dimensions.

Traits

BufferDims

A type which has dimensional properties allowing it to be used to define the size of buffers and work sizes.

BufferTest

Type Definitions

Result

ocl::Error result type.