use std::os::raw::c_void;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct OpenCLVertexBuffer_obj {
_unused: [u8; 0],
}
pub type OpenCLVertexBufferPtr = *mut OpenCLVertexBuffer_obj;
#[link(name = "osd-capi", kind = "static")]
extern "C" {
pub fn CLVertexBuffer_Create(
num_elements: i32,
num_vertices: i32,
cl_context: *const c_void,
) -> OpenCLVertexBufferPtr;
pub fn CLVertexBuffer_destroy(vb: OpenCLVertexBufferPtr);
pub fn CLVertexBuffer_UpdateData(
vb: OpenCLVertexBufferPtr,
src: *const f32,
start_vertex: i32,
num_vertices: i32,
cl_command_queue: *const c_void,
);
pub fn CLVertexBuffer_GetNumElements(vb: OpenCLVertexBufferPtr) -> i32;
pub fn CLVertexBuffer_GetNumVertices(vb: OpenCLVertexBufferPtr) -> i32;
pub fn CLVertexBuffer_BindCLBuffer(
vb: OpenCLVertexBufferPtr,
cl_command_queue: *const c_void,
) -> *const c_void;
}