Table of Contents

Class Kernel

Namespace
Emgu.CV.Ocl
Assembly
Emgu.CV.dll

An opencl kernel

public class Kernel : UnmanagedObject, IDisposable
Inheritance
Kernel
Implements
Inherited Members

Constructors

Kernel()

Create an opencl kernel

public Kernel()

Properties

Empty

Indicates if the kernel is empty

public bool Empty { get; }

Property Value

bool

NativeKernelPtr

The pointer to the native kernel

public nint NativeKernelPtr { get; }

Property Value

nint

Methods

Create(string, ProgramSource, string, CvString)

Create an opencl kernel

public bool Create(string kernelName, ProgramSource programSource, string buildOps = null, CvString errMsg = null)

Parameters

kernelName string

The name of the kernel

programSource ProgramSource

The program source code

buildOps string

The build options

errMsg CvString

Option error message container that can be passed to this function

Returns

bool

True if the kernel can be created

DisposeObject()

Release the opencl kernel

protected override void DisposeObject()

Run(nint[], nint[], bool, Queue)

Execute the kernel

public bool Run(nint[] globalsize, nint[] localsize, bool sync, Queue q = null)

Parameters

globalsize nint[]

The global size

localsize nint[]

The local size

sync bool

If true, the code is run synchronously (blocking)

q Queue

Optional Opencl queue

Returns

bool

True if the execution is sucessful

Set(int, Image2D)

Set the parameters for the kernel

public int Set(int i, Image2D image2d)

Parameters

i int

The index of the parameter

image2d Image2D

The ocl image

Returns

int

The next index value to be set

Set(int, KernelArg)

Set the parameters for the kernel

public int Set(int i, KernelArg kernelArg)

Parameters

i int

The index of the parameter

kernelArg KernelArg

The kernel arg

Returns

int

The next index value to be set

Set(int, UMat)

Set the parameters for the kernel

public int Set(int i, UMat umat)

Parameters

i int

The index of the parameter

umat UMat

The umat

Returns

int

The next index value to be set

Set(int, ref double)

Set the parameters for the kernel

public int Set(int i, ref double value)

Parameters

i int

The index of the parameter

value double

The value

Returns

int

The next index value to be set

Set(int, ref int)

Set the parameters for the kernel

public int Set(int i, ref int value)

Parameters

i int

The index of the parameter

value int

The value

Returns

int

The next index value to be set

Set(int, nint, int)

Set the parameters for the kernel

public int Set(int i, nint data, int size)

Parameters

i int

The index of the parameter

data nint

The data

size int

The size of the data in number of bytes

Returns

int

The next index value to be set

Set(int, ref float)

Set the parameters for the kernel

public int Set(int i, ref float value)

Parameters

i int

The index of the parameter

value float

The value

Returns

int

The next index value to be set