static void Stat3Init_(FuncContext fctx, int argc, Mem[][] argv) { tRowcnt rows = (tRowcnt)Vdbe.Value_Int64(argv[0]); int maxSamples = Vdbe.Value_Int(argv[1]); int n = maxSamples; Stat3Accum p = new Stat3Accum { a = new array_t <Stat3Accum.Stat3Sample>(new Stat3Accum.Stat3Sample[n]), Rows = rows, MaxSamples = maxSamples, PSamples = (uint)(rows / (maxSamples / 3 + 1) + 1), }; if (p == null) { Vdbe.Result_ErrorNoMem(fctx); return; } SysEx.Randomness(-1, p.Prn); Vdbe.Result_Blob(fctx, p, -1, C._free); }