openjtalkInitialize function

Pointer<OpenJTalk> openjtalkInitialize(
  1. String? voice,
  2. String? dic,
  3. String? voiceDir
)
OPENJTALK_DLL_API OpenJTalk *OPENJTALK_CONVENTION openjtalk_initialize(const char *voice, const char *dic, const char *voiceDir)

Implementation

Pointer<OpenJTalk> openjtalkInitialize(
    String? voice, String? dic, String? voiceDir) {
  final openjtalkInitializeLookupFunction = libjtalk.lookupFunction<
      Pointer<OpenJTalk> Function(
          Pointer<Utf8> voice, Pointer<Utf8> dic, Pointer<Utf8> voiceDir),
      Pointer<OpenJTalk> Function(Pointer<Utf8> voice, Pointer<Utf8> dic,
          Pointer<Utf8> voiceDir)>('openjtalk_initialize');
  final voicePointer = voice != null ? voice.toNativeUtf8() : nullptr;
  final dicPointer = dic != null ? dic.toNativeUtf8() : nullptr;
  final voiceDirPointer = voiceDir != null ? voiceDir.toNativeUtf8() : nullptr;
  final result = openjtalkInitializeLookupFunction(
      voicePointer, dicPointer, voiceDirPointer);
  calloc.free(voicePointer);
  calloc.free(dicPointer);
  calloc.free(voiceDirPointer);
  return result;
}