import 'dart:ffi';

/// C API constants from native/phash/include/phash.h
const int kPhashSize = 24;
const int kPhashBits = 105;

typedef PhashFromBytesNative = Int32 Function(
  Pointer<Uint8> data,
  Int32 len,
  Pointer<Char> outHash,
  Int32 outCap,
);
typedef PhashFromBytesDart = int Function(
  Pointer<Uint8> data,
  int len,
  Pointer<Char> outHash,
  int outCap,
);

typedef PhashHammingNative = Int32 Function(
  Pointer<Char> a,
  Pointer<Char> b,
);
typedef PhashHammingDart = int Function(
  Pointer<Char> a,
  Pointer<Char> b,
);
