示例#1
0
 public IRowCursor[] GetRowCursorSet(out IRowCursorConsolidator consolidator, Func <int, bool> needCol, int n, IRandom rand = null)
 {
     FillCacheIfNotFilled();
     _host.Check(_canShuffle || rand == null, "Random access is not allowed on sorted data (2).");
     _host.AssertValue(_autoView, "_autoView");
     return(_autoView.GetRowCursorSet(out consolidator, needCol, n, rand));
 }
示例#2
0
 public override IRowCursor[] GetRowCursorSet(out IRowCursorConsolidator consolidator, Func <int, bool> needCol, int n, IRandom rand = null)
 {
     Host.Check(string.IsNullOrEmpty(_sortColumn) || rand == null, "Random access is not allowed on sorted data. (6)");
     Host.AssertValue(_transform, "_transform");
     if (string.IsNullOrEmpty(_sortColumn))
     {
         return(_transform.GetRowCursorSet(out consolidator, needCol, n, rand));
     }
     else
     {
         int sortColumn;
         Source.Schema.TryGetColumnIndex(_sortColumn, out sortColumn);
         return(_transform.GetRowCursorSet(out consolidator, i => i == sortColumn || needCol(i), n, rand));
     }
 }
示例#3
0
 public override IRowCursor[] GetRowCursorSet(out IRowCursorConsolidator consolidator, Func <int, bool> needCol, int n, IRandom rand = null)
 {
     Host.AssertValue(_pipedTransform, "_pipedTransform");
     return(_pipedTransform.GetRowCursorSet(out consolidator, needCol, n, rand));
 }