ocl-macros
Documentation
Macros for easier/faster working with the ocl crate. ocl-macros currently supports rust macros for easy ocl::Kernel and ocl::Buffer creation.
This crate is still in early development.
Features
- Simple Kernel creation in one line.
- Easy specifying of multiple kernel arguments, named or unnamed
- Buffer creation in one line
Usage
If you want to use ocl-macros with ocl, add the following to your Cargo.toml:
[]
= "0.0.1"
Import the macros into your project by adding the following to your project's root:
use *;
Example
Example use of ocl-macros:
use ;
use *;
// Initialize OpenCL context/queue
let platform = default;
let devices = list_all.expect;
if devices.is_empty
let context = builder
.platform
.devices
.build
.unwrap;
let queue = new.unwrap;
// Construct new ocl float buffer with 100 elements of starting value 0.0
let buffer = buffer!;
License
This crate is licensed under the MIT license or the Apache-2.0 license.
Contribution
Contributions are welcome! Any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.