public static unsafe R <FindUniqueItemsResult, LocalStr> FindUniqueItems(IntPtr instance, char[] pattern, int[] output, uint offset) { var result = new FindUniqueItemsResult(); var timings = new FindUniqueItemsTimings(); fixed(char *patternPtr = pattern) fixed(int *outputPtr = output) { var res = FindUniqueItems(instance, patternPtr, (ulong)pattern.LongLength, outputPtr, (ulong)output.LongLength, ref result, offset, ref timings); if (res != Result.Ok) { return(FormatError(res)); } Log.Info($"Find unique items timings: find: {timings.Find}ns, unique: {timings.Unique}ns"); return(result); } }
private static extern unsafe Result FindUniqueItems(IntPtr instance, char *patternBegin, ulong count, int *output, ulong outputCount, ref FindUniqueItemsResult itemsResult, uint offset, ref FindUniqueItemsTimings timing);