private DataKey GetNextKey(DataKey key)
{
if (key.number == -1)
Console.WriteLine("DataSeries::GetNextKey Error: key.number is not set");
var nextKey = this.cache[key.number + 1];
if (nextKey == null)
{
if (key.next == -1)
Console.WriteLine("DataSeries::GetNextKey Error: key.next is not set");
nextKey = ReadKey(key.next);
nextKey.number = key.number + 1;
this.cache[nextKey.number] = nextKey;
}
nextKey.index1 = key.index2 + 1;
nextKey.index2 = nextKey.index1 + nextKey.count - 1;
if (nextKey.index2 < 0)
nextKey.index2 = 0;
return nextKey;
}