2 instantiations of TreePage
System.Data (2)
fx\src\data\System\Data\RbTree.cs (2)
157_pageTable[freePageIndex] = new TreePage (size); 172_pageTable[freePageIndex] = new TreePage (size);
24 references to TreePage
System.Data (24)
fx\src\data\System\Data\RbTree.cs (24)
101private TreePage[] _pageTable; // initial size 4, then doubles (grows) - it never shrinks 122_pageTable = new TreePage[1 * TreePage.slotLineSize]; 123_pageTableMap = new Int32[(_pageTable.Length + TreePage.slotLineSize - 1) / TreePage.slotLineSize]; // Ceiling(size) 137private void FreePage (TreePage page) 151private TreePage AllocPage (int size) 158nextFreePageLine = freePageIndex / TreePage.slotLineSize; 163TreePage[] newPageTable = new TreePage[_pageTable.Length * 2]; 165Int32[] newPageTableMap = new Int32[(newPageTable.Length + TreePage.slotLineSize - 1) / TreePage.slotLineSize]; 182private void MarkPageFull (TreePage page) 191_pageTableMap[page.PageId / TreePage.slotLineSize] |= (1 << (page.PageId % TreePage.slotLineSize)); 197private void MarkPageFree (TreePage page) 206_pageTableMap[page.PageId / TreePage.slotLineSize] &= ~(1 << (page.PageId % TreePage.slotLineSize)); 249TreePage page = _pageTable[nodeId >> 16]; 255page.SlotMap[slotIndex / TreePage.slotLineSize] &= ~( ((Int32)1) << (int)(slotIndex % TreePage.slotLineSize)); 288pageIndex = (pageTableMapPos * TreePage.slotLineSize) + GetIntValueFromBitMap (pageWithFreeSlot); // segment + offset 340TreePage page = null; 1915freeSlotId = (segmentPos * TreePage.slotLineSize) + freeSlotId;