Spec-Zone.ru › Dart 2

dart:typed_data

Конструктор Float32List.view

Float32List.view(
  1. ByteBuffer buffer,
  2. [int offsetInBytes = 0,
  3. int? length]
)

Создает Float32List вид указанного региона в buffer.

Изменения в Float32List будут видны в буфере байтов и наоборот. Если offsetInBytes индекс региона не указан, он по умолчанию равен нулю (первый байт в буфере байтов). Если длина не указана, вид простирается до конца буфера байтов.

offsetInBytes и length должны быть неотрицательными, и offsetInBytes + (length * bytesPerElement) должно быть меньше или равно длине buffer.

offsetInBytes должен быть кратным bytesPerElement.

Обратите внимание, что при создании вида из списка TypedData или данных байтов, этот список или данные байтов могут сами являться видом на более крупный буфер с TypedData.offsetInBytes больше нуля. Просто выполнение Float32List.view(other.buffer, 0, count) может не указывать на те байты, которые вы имели в виду. Вместо этого вам может потребоваться выполнить:

Float32List.view(other.buffer, other.offsetInBytes, count)

В качестве альтернативы, используйте Float32List.sublistView, который включает это вычисление:

Float32List.sublistView(other, 0, count);

(Третий аргумент — конечный индекс, а не длина, поэтому если вы начинаете с позиции больше нуля, вам не нужно соответственно уменьшать счётчик).

Реализация

factory Float32List.view(ByteBuffer buffer,
    [int offsetInBytes = 0, int? length]) {
  return buffer.asFloat32List(offsetInBytes, length);
}

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-typed_data/Float32List/Float32List.view.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API