Struct ocl_core::types::abs::Event [] [src]

#[repr(C)]
pub struct Event(_);

cl_event

Methods

impl Event
[src]

For passage directly to an 'event creation' function (such as enqueue...).

Creates and returns a new 'user' event.

User events are events which are meant to have their completion status set from the host side (that means you).

Only call this when passing the original newly created pointer directly from clCreate.... Do not use this to clone or copy.

Only use when cloning or copying from a pre-existing and valid cl_event.

Sets this user created event to CommandExecutionStatus::Complete.

Will return an error if this event is not a 'user' event (created with ::user()).

Queries the command status associated with this event and returns true if it is complete, false if incomplete or upon error.

This is the fastest possible way to determine event status.

Causes the command queue to wait until this event is complete before returning.

Returns whether or not this event is associated with a command or is a user event.

[FIXME]: ADD VALIDITY CHECK BY CALLING '_INFO' OR SOMETHING: NULL CHECK IS NOT ENOUGH

This still leads to crazy segfaults when non-event pointers (random whatever addresses) are passed. Need better check.

Sets a callback function, callback_receiver, to trigger upon completion of this event with an optional pointer to user data.

The callback function must have a signature matching: extern "C" fn (ffi::cl_event, i32, *mut libc::c_void)

Safety

user_data must be guaranteed to still exist if and when callback_receiver is ever called.

TODO: Create a safer type wrapper for callback_receiver (using an Arc?, etc.) within ocl.

Returns the Context associated with this event.

Returns an immutable reference to a pointer, do not deref and store it unless you will manage its associated reference count carefully.

Warning

DO NOT store this pointer.

DO NOT send this pointer across threads unless you are incrementing the reference count before sending and decrementing after sending.

Use ::into_raw for these purposes. Thank you.

Returns a mutable reference to a pointer, do not deref then modify or store it unless you will manage its associated reference count carefully.

Warning

DO NOT store this pointer.

DO NOT send this pointer across threads unless you are incrementing the reference count before sending and decrementing after sending.

Use ::into_raw for these purposes. Thank you.

Consumes the Event, returning the wrapped cl_event pointer.

To avoid a memory leak the pointer must be converted back to an Event using Event::from_raw.

Constructs an Event from a raw cl_event pointer.

The raw pointer must have been previously returned by a call to a Event::into_raw.

Trait Implementations

impl Debug for Event
[src]

Formats the value using the given formatter.

impl<'a> ClNullEventPtr for &'a mut Event
[src]

impl ClWaitListPtr for Event
[src]

Returns a pointer to the first pointer in this list.

Returns the number of items in this wait list.

impl<'a> ClWaitListPtr for &'a Event
[src]

Returns a pointer to the first pointer in this list.

Returns the number of items in this wait list.

impl<'e> ClEventPtrRef<'e> for Event
[src]

impl AsRef<Event> for Event
[src]

Performs the conversion.

impl Clone for Event
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Drop for Event
[src]

A method called when the value goes out of scope. Read more

impl Sync for Event
[src]

impl Send for Event
[src]