public Row(Table table, object[] o) { tTable = table; int index = tTable.IndexCount; nFirstIndex = new Node(this, 0); Node n = nFirstIndex; for (int i = 1; i < index; i++) { n.nNext = new Node(this, i); n = n.nNext; } oData = o; if (tTable != null && tTable.cCache != null) { LastAccess = CurrentAccess++; // todo: 32 bytes overhead for each index + iSize, iPos Size = 8 + Column.GetSize(o, tTable) + 16 * tTable.IndexCount; //((iSize + 7) / 8) * 8; // align to 8 byte blocks tTable.cCache.Add(this); } Changed = true; }