Class D3D12ResourcePlacementManager

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

  • public NonCopyable

Class Documentation

class D3D12ResourcePlacementManager : public NonCopyable

Public Functions

D3D12ResourcePlacementManager() = default
~D3D12ResourcePlacementManager() = default
void OnDeviceCreateResource(TObjectKey resourceKey, const D3D12_RESOURCE_DESC &desc, TObjectKey heapKey = NULL_OBJECT_KEY, uint64_t heapOffset = INVALID_OFFSET)
void OnDeviceCreateHeap(TObjectKey heapKey, const D3D12_HEAP_DESC &desc)
void OnCommandQueueUpdateTileMappings(TObjectKey resourceKey, TObjectKey heapKey, UINT NumRanges, const D3D12_TILE_RANGE_FLAGS *pRangeFlags, const UINT *pHeapRangeStartOffsets)
void OnDeviceGetResourceAllocationInfo(const D3D12_RESOURCE_DESC &desc, const D3D12_RESOURCE_ALLOCATION_INFO &returnedInfo)
void SetResourcePlacementInfo(TObjectKey resourceKey, const D3D12_RESOURCE_ALLOCATION_INFO &allocationInfo)
void CreateResourceSubPlacement(TObjectKey resourceKey, const D3D12_RESOURCE_ALLOCATION_INFO1 &originalSubResourcePlacementInfo, const D3D12_RESOURCE_ALLOCATION_INFO &calculatedSubAllocationInfo)
D3D12_HEAP_ALLOCATION_INFO GetHeapAllocationInfo(ID3D12Device *pDevice, TObjectKey heapKey)
D3D12_RESOURCE_ALLOCATION_INFO1 GetResourcePlacementInfo(ID3D12Device *pDevice, TObjectKey resourceKey, uint64_t resourceStartOffset = INVALID_OFFSET, TObjectKey heapKey = NULL_OBJECT_KEY, uint64_t heapOffset = INVALID_OFFSET)
D3D12_HEAP_ALLOCATION_INFO GetResourcePlacementInfo1(ID3D12Device *pDevice, TObjectKey resourceKey, TObjectKey heapKey, uint32_t numRanges, const UINT *pHeapRangeStartOffsets, D3D12_RESOURCE_ALLOCATION_INFO1 *pResourcePlacementInfo)
uint64_t GetHeapOffset(TObjectKey resourceKey) const