Class: OpenCL::Image
- Inherits:
-
Mem
- Object
- ManagedStruct
- ExtendedStruct
- Mem
- OpenCL::Image
- Includes:
- OpenCL12
- Defined in:
- lib/opencl_ruby_ffi/Image.rb,
lib/opencl_ruby_ffi/opencl_ruby_ffi_base_gen.rb,
lib/opencl_ruby_ffi/khr/d3d10_sharing.rb,
lib/opencl_ruby_ffi/khr/d3d11_sharing.rb,
lib/opencl_ruby_ffi/khr/dx9_media_sharing.rb
Overview
Maps the cl_mem OpenCL objects of type CL_MEM_OBJECT_IMAGE*
Defined Under Namespace
Modules: OpenCL12
Constant Summary collapse
- FORMAT_MISMATCH =
-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
- D3D10_SUBRESOURCE_KHR =
0x4016
- D3D11_SUBRESOURCE_KHR =
0x401F
- DX9_MEDIA_PLANE_KHR =
0x202A
Constants inherited from Mem
Mem::ALLOC_BASE_PTR_INTEL, Mem::ALLOC_DEVICE_INTEL, Mem::ALLOC_FLAGS_INTEL, Mem::ALLOC_HOST_PTR, Mem::ALLOC_INFO_TBD1_INTEL, Mem::ALLOC_INFO_TBD2_INTEL, Mem::ALLOC_SIZE_INTEL, Mem::ALLOC_TYPE_INTEL, Mem::ALLOC_WRITE_COMBINED_INTEL, Mem::ASSOCIATED_MEMOBJECT, Mem::CONTEXT, Mem::COPY_HOST_PTR, Mem::D3D10_RESOURCE_KHR, Mem::D3D11_RESOURCE_KHR, Mem::DX9_MEDIA_ADAPTER_TYPE_KHR, Mem::DX9_MEDIA_SURFACE_INFO_KHR, 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::KERNEL_READ_AND_WRITE, Mem::MAP_COUNT, Mem::OFFSET, Mem::PIPE, Mem::PROPERTIES, Mem::READ_ONLY, Mem::READ_WRITE, Mem::REFERENCE_COUNT, Mem::SIZE, Mem::SVM_ATOMICS, Mem::SVM_FINE_GRAIN_BUFFER, Mem::TYPE, Mem::TYPE_DEVICE_INTEL, Mem::TYPE_HOST_INTEL, Mem::TYPE_SHARED_INTEL, Mem::TYPE_UNKNOWN_INTEL, Mem::USES_SVM_POINTER, Mem::USE_HOST_PTR, Mem::WRITE_ONLY
Instance Method Summary collapse
-
#depth ⇒ Object
Returns the OpenCL::Image::depth info.
-
#element_size ⇒ Object
Returns the OpenCL::Image::element_size info.
-
#format ⇒ Object
Returns the ImageFormat corresponding to the image.
-
#height ⇒ Object
Returns the OpenCL::Image::height info.
-
#inspect ⇒ Object
< Mem.
- #pixel_size ⇒ Object
-
#row_pitch ⇒ Object
Returns the OpenCL::Image::row_pitch info.
-
#slice_pitch ⇒ Object
Returns the OpenCL::Image::slice_pitch info.
-
#width ⇒ Object
Returns the OpenCL::Image::width info.
Methods included from OpenCL12
#array_size, #buffer, #desc, #num_mip_levels, #num_samples
Methods inherited from Mem
#context, #flags, #gl_mimap_level, #gl_object_name, #gl_object_type, #gl_texture_target, #host_ptr, #initialize, #map_count, #platform, #reference_count, #size, #type
Methods included from Mem::OpenCL30
Methods included from Mem::OpenCL20
Methods included from Mem::OpenCL11
#associated_memobject, #offset, #set_destructor_callback
Methods inherited from ExtendedStruct
#initialize, register_extension
Constructor Details
This class inherits a constructor from OpenCL::Mem
Instance Method Details
#depth ⇒ Object
Returns the OpenCL::Image::depth info
250 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 250 get_info("Image", :size_t, "depth") |
#element_size ⇒ Object
Returns the OpenCL::Image::element_size info
245 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 245 get_info("Image", :size_t, "element_size") |
#format ⇒ Object
Returns the ImageFormat corresponding to the image
238 239 240 241 242 243 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 238 def format image_format = MemoryPointer::new( ImageFormat ) error = OpenCL.clGetImageInfo( self, FORMAT, image_format.size, image_format, nil) error_check(error) return ImageFormat::new( image_format ) end |
#height ⇒ Object
Returns the OpenCL::Image::height info
249 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 249 get_info("Image", :size_t, "height") |
#inspect ⇒ Object
< Mem
230 231 232 233 234 235 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 230 def inspect h = height d = depth f = flags return "#<#{self.class.name}: #{format.channel_order}, #{format.channel_data_type}, #{width}#{h != 0 ? "x#{h}" : ""}#{d != 0 ? "x#{d}" : ""} (#{size})#{f.to_i != 0 ? " (#{f})" : "" }>" end |
#pixel_size ⇒ Object
252 253 254 255 256 257 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 252 def pixel_size s = size / width s /= height if height != 0 s /= depth if depth != 0 return s end |
#row_pitch ⇒ Object
Returns the OpenCL::Image::row_pitch info
246 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 246 get_info("Image", :size_t, "row_pitch") |
#slice_pitch ⇒ Object
Returns the OpenCL::Image::slice_pitch info
247 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 247 get_info("Image", :size_t, "slice_pitch") |
#width ⇒ Object
Returns the OpenCL::Image::width info
248 |
# File 'lib/opencl_ruby_ffi/Image.rb', line 248 get_info("Image", :size_t, "width") |