XGMemoryLayout has the following members.
| Name | Description | |
|---|---|---|
![]() |
CopyMapping | Copies a source mapping into a destination mapping, with the optional ability to replace ESRAM page mappings in the source mapping with newly allocated system memory pages in the destination mapping. |
![]() |
CreateMapping | Creates a new mapping with the given name. |
![]() |
EnsureMappingSize | Checks whether the layout has virtual address space remaining for a mapping of the given size in pages. |
![]() |
GetBaseAddress | Returns the base GPU virtual address of this layout, as a void pointer. |
![]() |
GetCurrentAddress | Returns the current virtual address of this layout as it is being constructed, as a void pointer. |
![]() |
GetCurrentPageOffset | Returns the current page offset of this layout as it is being constructed. |
![]() |
GetEsramPageRanges | Returns a set of page ranges within the mapping that are mapped to ESRAM pages. |
![]() |
GetFreeEsramPageCount | Returns the number of free ESRAM pages remaining. |
![]() |
GetFreeSystemPageCount | Returns the number of free system memory pages remaining. |
![]() |
GetGpuBaseAddress | Returns the base GPU virtual address of this layout, as a XG_GPU_VIRTUAL_ADDRESS (a UINT64). |
![]() |
GetGpuCurrentAddress | Returns the current virtual address of this layout as it is being constructed, as a XG_GPU_VIRTUAL_ADDRESS (a UINT64). |
![]() |
GetMaxUsedEsramPageCount | Returns the max number of ESRAM pages in use at the same time in this layout. |
![]() |
GetMaxUsedSystemPageCount | Returns the maximum number of system memory pages in use at the same time in this layout. |
![]() |
GetPageCount | Returns the number of pages in the layout. |
![]() |
GetPageCountRemaining | Returns the number of unmapped pages remaining in this layout. |
![]() |
GetPageSizeBytes | Returns the size of one page in this layout, in bytes. |
![]() |
IsValid | Returns true if the current layout is valid. |
![]() |
MapFromPattern | Maps pages using a predefined pattern passed as a byte array. |
![]() |
MapPagePriorityArray | Maps pages using a page priority array. |
![]() |
MapRunLengthArray | Maps pages using a run length array of tokens. |
![]() |
MapSimple | Maps pages using a simple arrangement of ESRAM pages followed by system memory pages. |
![]() |
RelinquishMapping | Relinquishes a previously defined mapping, placing its ESRAM and system pages back on the free lists. |
![]() |
Reset | Resets the layout; decommits all pages from the virtual address range, returns all ESRAM and system memory pages to the free lists, and invalidates all mappings made upon this layout. |