kernel
Specifies the kernel object being queried.
arg_indx
The argument index. Arguments to the kernel are referred by indices that
go from 0 for the leftmost argument to n
- 1, where
n
is the total number of arguments declared by a kernel.
param_name
Specifies the argument information to query. The list of supported
param_name
types and the information returned in
param_value
by clGetKernelArgInfo
is described in the table below.
param_value
A pointer to memory where the appropriate result being queried is returned.
If param_value
is NULL, it is ignored.
param_value_size
Used to specify the size in bytes of memory
pointed to by param_value
.
This size must be > size of return type as described in the table below.
cl_kernel_arg_info | Return Type | Info. returned in param_value |
---|---|---|
CL_KERNEL_ARG_ADDRESS_QUALIFIER
|
cl_kernel_arg_- address_qualifier |
Returns the address qualifier specified for the
argument given by
If no address qualifier is specified, the default address
qualifier which is |
CL_KERNEL_ARG_ACCESS_QUALIFIER
|
cl_kernel_arg_- access_qualifier |
Returns the access qualifier specified for the
argument given by
If argument is not an image type
and is not declared with the |
CL_KERNEL_ARG_TYPE_NAME
|
char[] |
Returns the type name specified for the argument given
by |
CL_KERNEL_ARG_TYPE_QUALIFIER
|
cl_kernel_arg- type_qualifier |
Returns the type qualifier specified for the argument
given by
NOTE:
If the argument is declared with the constant address
space qualifier, the
|
CL_KERNEL_ARG_NAME
|
char[] |
Returns the name specified for the argument given by |
param_value_size_ret
Returns the actual size in bytes of data copied to param_value
.
If param_value_size_ret
is NULL, it is ignored.
Kernel argument information is only available if the program
object associated with kernel
is created with
clCreateProgramWithSource
and the program executable is built with the -cl-kernel-arg-info
option specified in options
argument to
clBuildProgram or
clCompileProgram.
Returns CL_SUCCESS if the function is executed successfully. Otherwise, it returns one of the following errors:
arg_indx
is not a valid argument index.
param_name
is not valid, or if size in bytes specified by
param_value_size
is < size of return type as
described in the table above and param_value
is not NULL
kernel
is not a valid kernel object.
clCreateKernel, clGetKernelInfo, clCreateKernelsInProgram, clCreateProgramWithSource, clBuildProgram, clSetKernelArg, clGetKernelWorkGroupInfo