ffiCreateUint8ListArray function

Pointer<Uint8ListArrayFFI> ffiCreateUint8ListArray(
  1. List<Uint8List> data
)

Implementation

Pointer<Uint8ListArrayFFI> ffiCreateUint8ListArray(List<Uint8List> data) {
  final sizeOfStruct = sizeOf<Uint8ListFFI>();
  final Pointer<Uint8ListFFI> nativeUint8ListBuffer =
  calloc.allocate(sizeOfStruct * (data.length));
  for (int i = 0; i < data.length; i++) {
    nativeUint8ListBuffer
        .elementAt(i)
        .ref
        .str =
        createUint8PointerFromUint8List(data[i]).cast<Int8>();
    nativeUint8ListBuffer
        .elementAt(i)
        .ref
        .length = data[i].length;
  }
  final Pointer<Uint8ListArrayFFI> pointer =
  calloc.allocate<Uint8ListArrayFFI>(sizeOf<Uint8ListArrayFFI>());
  pointer.ref.array = nativeUint8ListBuffer;
  pointer.ref.length = data.length;
  return pointer;
}