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