Module: NDAV::FFI::MemoryPointer::MemoryViewable
- Defined in:
- lib/ndav/ffi.rb
Instance Method Summary collapse
Instance Method Details
#ndav_descriptor ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/ndav/ffi.rb', line 30 def ndav_descriptor(**) shape = [size / type_size] format = TYPE_SIZE_TO_FORMAT[type_size] item_size = ITEM_SIZES[format] byte_size = shape.reduce(item_size, :*) ptr = ::Fiddle::Pointer.new(address, byte_size) { data: Fiddle::MemoryView.new(ptr).to_s, shape:, strides: ::NDAV.default_strides(shape:, item_size:), format:, byte_size:, readonly?: true } end |