replaceWriteLogMessage function
Implementation
void replaceWriteLogMessage({LogCallbackFunction? callback}) {
if (callback == null) {
cvRun(() => ccore.replaceWriteLogMessage(ffi.nullptr));
_logCallback?.close();
_logCallback = null;
} else {
void cCallback(int logLevel, ffi.Pointer<ffi.Char> message, int msgLen) {
final messageStr = message.cast<Utf8>().toDartString(length: msgLen);
callback(LogLevel.fromValue(logLevel), messageStr);
}
final fp = ffi.NativeCallable<cvg.LogCallbackFunction>.listener(cCallback);
cvRun(() => ccore.replaceWriteLogMessage(fp.nativeFunction));
_logCallback = fp;
}
}