private static void ReadState( DataInput input, CountMinSketchState state) { var depth = input.ReadInt(); var width = input.ReadInt(); var rowsTable = input.ReadInt(); var table = new long[rowsTable][]; for (var i = 0; i < rowsTable; i++) { var colsRows = input.ReadInt(); table[i] = new long[colsRows]; for (var j = 0; j < colsRows; j++) { table[i][j] = input.ReadLong(); } } var rowsHash = input.ReadInt(); var hash = new long[rowsHash]; for (var i = 0; i < rowsTable; i++) { hash[i] = input.ReadLong(); } var total = input.ReadLong(); state.Hashes = new CountMinSketchStateHashes(depth, width, table, hash, total); var hasTopk = input.ReadBoolean(); state.Topk = null; if (hasTopk) { var topkMax = input.ReadInt(); var topMap = new OrderedDictionary<long, object>( Comparers.Default<long>().Inverse()); var refMap = new Dictionary<ByteBuffer, long>(); var numRows = input.ReadInt(); for (var i = 0; i < numRows; i++) { var freq = input.ReadLong(); var numEntries = input.ReadInt(); if (numEntries == 1) { var buf = ReadBytes(input); topMap.Put(freq, buf); refMap.Put(buf, freq); } else { Deque<ByteBuffer> q = new ArrayDeque<ByteBuffer>(numEntries); for (var j = 0; j < numEntries; j++) { var buf = ReadBytes(input); q.AddLast(buf); refMap.Put(buf, freq); } topMap.Put(freq, q); } } state.Topk = new CountMinSketchStateTopk(topkMax, topMap, refMap); } }
public object EvaluateEnumMethod( EventBean[] eventsLambda, ICollection<object> enumcoll, bool isNewData, ExprEvaluatorContext context) { if (enumcoll == null || enumcoll.IsEmpty()) { return enumcoll; } IList<object> list = new List<object>(enumcoll); if (_descending) { Collections.SortInPlace(list, Comparers.Inverse(Comparers.Default<object>())); } else { Collections.SortInPlace(list); } return list; }