Class: OpenCL::Image
- Defined in:
- lib/opencl_ruby_ffi/Image.rb,
lib/opencl_ruby_ffi/opencl_ruby_ffi_base_gen.rb
Overview
Maps the cl_mem OpenCL objects of type CL_MEM_OBJECT_IMAGE*
Constant Summary collapse
- FORMAT_MISMATCH =
:stopdoc:
-9
- FORMAT_NOT_SUPPORTED =
-10
- FORMAT =
0x1110
- ELEMENT_SIZE =
0x1111
- ROW_PITCH =
0x1112
- SLICE_PITCH =
0x1113
- WIDTH =
0x1114
- HEIGHT =
0x1115
- DEPTH =
0x1116
- ARRAY_SIZE =
0x1117
- BUFFER =
0x1118
- NUM_MIP_LEVELS =
0x1119
- NUM_SAMPLES =
0x111A
- ROW_ALIGNMENT_QCOM =
0x40A2
- SLICE_ALIGNMENT_QCOM =
0x40A3
Constants inherited from Mem
Mem::ALLOC_HOST_PTR, Mem::ASSOCIATED_MEMOBJECT, Mem::CONTEXT, Mem::COPY_HOST_PTR, Mem::FLAGS, Mem::HOST_NO_ACCESS, Mem::HOST_PTR, Mem::HOST_READ_ONLY, Mem::HOST_UNCACHED_QCOM, Mem::HOST_WRITEBACK_QCOM, Mem::HOST_WRITETHROUGH_QCOM, Mem::HOST_WRITE_COMBINING_QCOM, Mem::HOST_WRITE_ONLY, Mem::IMAGE1D, Mem::IMAGE1D_ARRAY, Mem::IMAGE1D_BUFFER, Mem::IMAGE2D, Mem::IMAGE2D_ARRAY, Mem::IMAGE3D, Mem::ION_HOST_PTR_QCOM, Mem::MAP_COUNT, Mem::OFFSET, Mem::PIPE, Mem::READ_ONLY, Mem::READ_WRITE, Mem::REFERENCE_COUNT, Mem::SIZE, Mem::SVM_ATOMICS, Mem::SVM_FINE_GRAIN_BUFFER, Mem::TYPE, Mem::USES_SVM_POINTER, Mem::USE_HOST_PTR, Mem::WRITE_ONLY
Instance Method Summary collapse
-
#buffer ⇒ Object
Returns the associated Buffer if any, nil otherwise.
-
#desc ⇒ Object
Returns the ImageDesc corresponding to the Image.
-
#format ⇒ Object
Returns the ImageFormat corresponding to the image.
-
#prop ⇒ Object
:method: num_samples Returns the num_samples of the Image.
Methods inherited from Mem
#GL_mimap_level, #GL_object_name, #GL_object_type, #GL_texture_target, #associated_memobject, #context, #get_info, #initialize, #platform, release, #set_destructor_callback, #to_s
Constructor Details
This class inherits a constructor from OpenCL::Mem
Instance Method Details
#buffer ⇒ Object
Returns the associated Buffer if any, nil otherwise
259 260 261 262 263 264 265 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 259 def buffer ptr = FFI::MemoryPointer::new( OpenCL::Buffer ) error = OpenCL.clGetImageInfo(self, OpenCL::Image::BUFFER, OpenCL::Buffer.size, ptr, nil) OpenCL.error_check(error) return nil if ptr.null? return OpenCL::Buffer::new(ptr.read_pointer) end |
#desc ⇒ Object
Returns the ImageDesc corresponding to the Image
246 247 248 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 246 def desc return OpenCL::ImageDesc::new( self.type, self.width, self.height, self.depth, self.array_size, self.row_pitch, self.slice_pitch, self.num_mip_levels, self.num_samples, self.buffer ) end |
#format ⇒ Object
Returns the ImageFormat corresponding to the image
251 252 253 254 255 256 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 251 def format image_format = FFI::MemoryPointer::new( OpenCL::ImageFormat ) error = OpenCL.clGetImageInfo( self, OpenCL::Image::FORMAT, image_format.size, image_format, nil) OpenCL.error_check(error) return OpenCL::ImageFormat::from_pointer( image_format ) end |