Module: OpenCL::Kernel::Arg::OpenCL12

Defined in:
lib/opencl_ruby_ffi/Kernel.rb

Instance Method Summary collapse

Instance Method Details

#access_qualifierObject

Returns an AccessQualifier corresponding to the Arg



118
119
120
121
122
123
124
# File 'lib/opencl_ruby_ffi/Kernel.rb', line 118

def access_qualifier
  error_check(INVALID_OPERATION) if @kernel.context.platform.version_number < 1.2
  ptr = MemoryPointer::new( :cl_kernel_arg_access_qualifier )
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, ACCESS_QUALIFIER, ptr.size, ptr, nil)
  error_check(error)
  return AccessQualifier::new( ptr.read_cl_kernel_arg_access_qualifier )
end

#address_qualifierObject

Returns an AddressQualifier corresponding to the Arg



109
110
111
112
113
114
115
# File 'lib/opencl_ruby_ffi/Kernel.rb', line 109

def address_qualifier
  error_check(INVALID_OPERATION) if @kernel.context.platform.version_number < 1.2
  ptr = MemoryPointer::new( :cl_kernel_arg_address_qualifier )
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, ADDRESS_QUALIFIER, ptr.size, ptr, nil)
  error_check(error)
  return AddressQualifier::new( ptr.read_cl_kernel_arg_address_qualifier )
end

#nameObject Also known as: to_s

Returns a String corresponding to the Arg name



148
149
150
151
152
153
154
155
156
157
# File 'lib/opencl_ruby_ffi/Kernel.rb', line 148

def name
  error_check(INVALID_OPERATION) if @kernel.context.platform.version_number < 1.2
  ptr1 = MemoryPointer::new( :size_t, 1)
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, NAME, 0, nil, ptr1)
  error_check(error)
  ptr2 = MemoryPointer::new( ptr1.read_size_t )
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, NAME, ptr1.read_size_t, ptr2, nil)
  error_check(error)
  return ptr2.read_string
end

#type_nameObject

Returns a String corresponding to the Arg type name



127
128
129
130
131
132
133
134
135
136
# File 'lib/opencl_ruby_ffi/Kernel.rb', line 127

def type_name
  error_check(INVALID_OPERATION) if @kernel.context.platform.version_number < 1.2
  ptr1 = MemoryPointer::new( :size_t, 1)
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, TYPE_NAME, 0, nil, ptr1)
  error_check(error)
  ptr2 = MemoryPointer::new( ptr1.read_size_t )
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, TYPE_NAME, ptr1.read_size_t, ptr2, nil)
  error_check(error)
  return ptr2.read_string
end

#type_qualifierObject

Returns a TypeQualifier corresponding to the Arg



139
140
141
142
143
144
145
# File 'lib/opencl_ruby_ffi/Kernel.rb', line 139

def type_qualifier
  error_check(INVALID_OPERATION) if @kernel.context.platform.version_number < 1.2
  ptr = MemoryPointer::new( :cl_kernel_arg_type_qualifier )
  error = OpenCL.clGetKernelArgInfo(@kernel, @index, TYPE_QUALIFIER, ptr.size, ptr, nil)
  error_check(error)
  return TypeQualifier::new( ptr.read_cl_kernel_arg_type_qualifier )
end