Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
ImportScopeTableReader.cs
Go to the documentation of this file.
2
4
5internal readonly struct ImportScopeTableReader
6{
7 internal readonly int NumberOfRows;
8
9 private readonly bool _isImportScopeRefSizeSmall;
10
11 private readonly bool _isBlobHeapRefSizeSmall;
12
13 private readonly int _importsOffset;
14
15 internal readonly int RowSize;
16
17 internal readonly MemoryBlock Block;
18
19 internal ImportScopeTableReader(int numberOfRows, int importScopeRefSize, int blobHeapRefSize, MemoryBlock containingBlock, int containingBlockOffset)
20 {
21 NumberOfRows = numberOfRows;
22 _isImportScopeRefSizeSmall = importScopeRefSize == 2;
23 _isBlobHeapRefSizeSmall = blobHeapRefSize == 2;
24 _importsOffset = importScopeRefSize;
25 RowSize = _importsOffset + blobHeapRefSize;
26 Block = containingBlock.GetMemoryBlockAt(containingBlockOffset, RowSize * numberOfRows);
27 }
28
34
40}
int PeekReference(int offset, bool smallRefSize)
unsafe MemoryBlock GetMemoryBlockAt(int offset, int length)
int PeekHeapReference(int offset, bool smallRefSize)
static BlobHandle FromOffset(int heapOffset)
Definition BlobHandle.cs:34
ImportScopeTableReader(int numberOfRows, int importScopeRefSize, int blobHeapRefSize, MemoryBlock containingBlock, int containingBlockOffset)
ImportScopeHandle GetParent(ImportScopeHandle handle)
static ImportScopeHandle FromRowId(int rowId)