XGMemoryLayout Members

XGMemoryLayout has the following members.

Public Methods

  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.

See also

XGMemoryLayout