importCfi method

void importCfi(
  1. List<String> cfies
)

Imports specified cfies to use in reader.

Implementation

void importCfi(List<String> cfies) {
  if (cfies.isEmpty) {
    return;
  }

  Pointer<BufferArray> cfiesArray = allocNewBufferArray(sizeOf<Pointer<BufferString>>(), cfies.length);
  Pointer<Pointer<BufferString>> bufferCfies = cfiesArray.ref.data.cast();

  for (int i = 0; i < cfies.length; i++) {
    String cfi = cfies[i];
    Pointer<BufferString> cfiBuffer = BufferString.fromDartString(cfi);
    bufferCfies[i] = cfiBuffer;
  }

  importCfiNative?.call(_sdk, cfiesArray);

  for (int i = 0; i < cfies.length; i++) {
    Pointer<BufferString> cfiBuffer = bufferCfies[i];
    freeBufferString(cfiBuffer);
  }

  freeBufferArray(cfiesArray);
}