[−][src]Struct fil_ocl_core::types::abs::Kernel
cl_kernel
Thread Safety
Currently not thread safe: does not implement Send
or Sync
. It's
probably possible to implement one or both with some work but it's
potentially problematic on certain (all?) platforms due to issues while
setting arguments. If you need to transfer a kernel you're better off
creating another one in the other thread or using some other mechanism
such as channels to manipulate kernels in other threads. This issue will
be revisited in the future (please provide input by filing an issue if you
have any thoughts on the matter).
[UPDATE]: Enabling Send
for a while to test.
Methods
impl Kernel
[src]
pub unsafe fn from_raw_create_ptr(ptr: cl_kernel) -> Kernel
[src]
Only call this when passing the original newly created pointer
directly from clCreate...
. Do not use this to clone or copy.
pub unsafe fn from_raw_copied_ptr(ptr: cl_kernel) -> Kernel
[src]
Only call this when passing a copied pointer such as from an
clGet*****Info
function.
pub fn as_ptr(&self) -> cl_kernel
[src]
Returns a pointer, do not store it.
pub fn program(&self) -> OclCoreResult<Program>
[src]
Returns the program associated with this kernel.
pub fn devices(&self) -> OclCoreResult<Vec<DeviceId>>
[src]
Trait Implementations
impl ClVersions for Kernel
[src]
fn device_versions(&self) -> OclCoreResult<Vec<OpenclVersion>>
[src]
fn platform_version(&self) -> OclCoreResult<OpenclVersion>
[src]
fn verify_device_versions(
&self,
required_version: [u16; 2]
) -> OclCoreResult<()>
[src]
&self,
required_version: [u16; 2]
) -> OclCoreResult<()>
fn verify_platform_version(
&self,
required_version: [u16; 2]
) -> OclCoreResult<()>
[src]
&self,
required_version: [u16; 2]
) -> OclCoreResult<()>
impl Send for Kernel
[src]
impl Drop for Kernel
[src]
impl Clone for Kernel
[src]
impl Debug for Kernel
[src]
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,