getName method

String getName()

Gets the the extension name.

return The extension name. throws BiosealException An error has occurred during Bioseal Library execution.

Implementation

String getName() {
  Pointer<Char> pName = nullptr;
  Pointer<Int> pNameSize = calloc.allocate(1);
  pNameSize[0] = -1;
  try {
    var err = biosealSDK.id3BiosealExtension_GetName(_pHandle.value, pName, pNameSize);
    if (err == BiosealError.insufficientBuffer.value) {
      pName = calloc.allocate(pNameSize.value);
      err = biosealSDK.id3BiosealExtension_GetName(_pHandle.value, pName, pNameSize);
      if (err != BiosealError.success.value) {
        throw BiosealException(err);
      }
    }
    final vName = utf8.decode(Uint8List.fromList(pName.cast<Uint8>().asTypedList(pNameSize.value)));
    return vName;
  } finally {
    calloc.free(pName);
    calloc.free(pNameSize);
  }
}