detectAndDecodeCurvedAsync method

Future<(String, VecPoint, Mat)> detectAndDecodeCurvedAsync(
  1. InputArray img, {
  2. VecPoint? points,
  3. Mat? straightQRcode,
})

Implementation

Future<(String rval, VecPoint points, Mat straightQRcode)> detectAndDecodeCurvedAsync(
  InputArray img, {
  VecPoint? points,
  Mat? straightQRcode,
}) {
  final p = points?.ptr ?? calloc<cvg.VecPoint>();
  final s = straightQRcode?.ptr ?? calloc<cvg.Mat>();
  final v = calloc<ffi.Pointer<ffi.Char>>();
  return cvRunAsync0(
    (callback) => cobjdetect.cv_QRCodeDetector_detectAndDecodeCurved(ref, img.ref, p, s, v, callback),
    (c) {
      final ss = v.value.cast<Utf8>().toDartString();
      calloc.free(v);
      return c.complete((ss, points ?? VecPoint.fromPointer(p), Mat.fromPointer(s)));
    },
  );
}