java.lang.Object
api.Native
au.notzed.zcl.CLObject
au.notzed.zcl.CLProgram
public class CLProgram extends CLObject
Interface for cl_program.
-
Method Summary
Modifier and Type Method Description void
buildProgram(CLDevice[] devices, java.lang.String options)
void
buildProgram(CLDevice[] devices, java.lang.String options, CLNotify<CLProgram> notify)
Call clBuildProgram.void
compileProgram(CLDevice[] devices, java.lang.String options, CLProgram[] headers, java.lang.String[] header_names, CLNotify<CLProgram> notify)
Call clCompileProgram.static CLProgram
create(jdk.incubator.foreign.MemoryAddress p)
CLKernel
createKernel(java.lang.String name)
Call clCreateKernel.CLKernel[]
createKernelsInProgram()
Call clCreateKernelsInProgram.byte[][]
getBinaries()
int
getBinaryType(CLDevice device)
java.lang.String
getBuildLog(CLDevice device)
java.lang.String
getBuildOptions(CLDevice device)
int
getBuildStatus(CLDevice device)
CLContext
getContext()
CLDevice[]
getDevices()
java.lang.String
getKernelNames()
int
getNumDevices()
int
getNumKernels()
java.lang.String
getSource()
Methods inherited from class au.notzed.zcl.CLObject
getInfo, getInfo, getInfo, getInfoAny, getInfoAny, getInfoAny, getInfoAny, getInfoAnyV, getInfoByteV, getInfoByteV, getInfoInt, getInfoInt, getInfoInt, getInfoInt, getInfoJava, getInfoLong, getInfoLong, getInfoLong, getInfoLong, getInfoLongV, getInfoLongV, getInfoPropertyV, getInfoSizeT, getInfoSizeT, getInfoSizeT, getInfoSizeTA, getInfoString, getInfoString, getInfoString, getInfoString, release, release
Methods inherited from class api.Native
addr, addr, addr, debugDumpReachable, debugFlushAll, downcallHandle, downcallHandle, dumpSignature, freeUpcallStub, getAddr, getAddr, getByte, getByte, getDouble, getDouble, getFloat, getFloat, getInt, getInt, getLong, getLong, getShort, loadLibraries, parseStruct, parseUnion, release, release, release, resolve, setAddr, setAddr, setByte, setByte, setDouble, setDouble, setFloat, setFloat, setInt, setInt, setLong, setLong, setShort, setShort, toAddrV, toAddrV, toAddrV, toByteV, toByteV, toLongV, toLongV, toObjectV, toObjectV, toString, upcallStub
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
create
-
buildProgram
public void buildProgram(CLDevice[] devices, java.lang.String options, CLNotify<CLProgram> notify) throws CLExceptionCall clBuildProgram.- Parameters:
devices
- Target devices.options
- Build options.notify
- Notification callback.- Throws:
CLException
-
buildProgram
- Throws:
CLException
-
compileProgram
public void compileProgram(CLDevice[] devices, java.lang.String options, CLProgram[] headers, java.lang.String[] header_names, CLNotify<CLProgram> notify) throws CLException, java.lang.UnsupportedOperationExceptionCall clCompileProgram.- Parameters:
devices
-options
-headers
- List of programs defining headers.header_names
- List of names from headers. They must contain the same number of elements.notify
-- Throws:
CLException
java.lang.UnsupportedOperationException
- Since:
- OpenCL 1.2
-
createKernel
Call clCreateKernel.- Parameters:
name
- Name of kernel function.- Returns:
- A newly created kernel. Release should be called when it is no longer needed.
- Throws:
CLRuntimeException
CLException
-
createKernelsInProgram
Call clCreateKernelsInProgram.- Returns:
- kernels created
- Throws:
CLRuntimeException
-
getContext
-
getNumDevices
public int getNumDevices() -
getDevices
-
getSource
public java.lang.String getSource() -
getBinaries
public byte[][] getBinaries() -
getNumKernels
public int getNumKernels() -
getKernelNames
public java.lang.String getKernelNames() -
getBuildStatus
-
getBuildOptions
-
getBuildLog
-
getBinaryType
-