mitiru::render::dx12

Namespace catalog extracted from docs/API_CATALOG.md (9 types, 84 items).

Namespace catalog extracted from docs/API_CATALOG.md (9 types, 84 items).

NameKindItems
Dx12ComputeContextclass18
FreeBlockstruct2
DescriptorFreeListclass6
DescriptorSlotstruct3
Dx12DescriptorPoolclass11
Dx12ShadowMapclass14
Dx12Texture2Dclass12
UploadAllocationstruct6
Dx12UploadRingclass12
class Dx12ComputeContext 18
template <typename T> using ComPtr = Microsoft::WRL::ComPtr<T>
Dx12ComputeContext() = default
~Dx12ComputeContext()
Dx12ComputeContext(const Dx12ComputeContext&) = delete
Dx12ComputeContext& operator=(const Dx12ComputeContext&) = delete
Dx12ComputeContext(Dx12ComputeContext&&) = default
Dx12ComputeContext& operator=(Dx12ComputeContext&&) = default
bool initialize(ID3D12Device* device)
bool setShader(const char* hlsl, const char* entryPoint = "CSMain")
void setCommandList(ID3D12GraphicsCommandList* cmdList)
void setRootCBV(UINT slot, D3D12_GPU_VIRTUAL_ADDRESS gpuAddr)
void setRootSRVTable(D3D12_GPU_DESCRIPTOR_HANDLE baseHandle)
void setRootUAVTable(D3D12_GPU_DESCRIPTOR_HANDLE baseHandle)
bool dispatch(UINT groupsX, UINT groupsY, UINT groupsZ)
void destroy()
[[nodiscard]] bool isInitialized() const noexcept
[[nodiscard]] bool hasPso() const noexcept
[[nodiscard]] std::size_t shaderHash() const noexcept
struct FreeBlock 2
UINT offset = 0
UINT count = 0
class DescriptorFreeList 6
explicit DescriptorFreeList(UINT capacity = 0)
[[nodiscard]] UINT allocate(UINT count)
void free(UINT offset, UINT count)
[[nodiscard]] UINT capacity() const noexcept
[[nodiscard]] std::size_t blockCount() const noexcept
[[nodiscard]] bool fullyFree() const noexcept
struct DescriptorSlot 3
UINT offset = 0
UINT count = 0
[[nodiscard]] bool valid() const noexcept
class Dx12DescriptorPool 11
Dx12DescriptorPool() = default
~Dx12DescriptorPool()
Dx12DescriptorPool(const Dx12DescriptorPool&) = delete
Dx12DescriptorPool& operator=(const Dx12DescriptorPool&) = delete
bool initialize(ID3D12Device* device, D3D12_DESCRIPTOR_HEAP_TYPE type, UINT capacity, bool shaderVisible)
void destroy()
[[nodiscard]] DescriptorSlot allocate(UINT count = 1)
void free(const DescriptorSlot& slot)
[[nodiscard]] ID3D12DescriptorHeap* heap() const noexcept
[[nodiscard]] UINT incrementSize() const noexcept
[[nodiscard]] bool ready() const noexcept
class Dx12ShadowMap 14
Dx12ShadowMap() noexcept = default
~Dx12ShadowMap() noexcept
Dx12ShadowMap(const Dx12ShadowMap&) = delete
Dx12ShadowMap& operator=(const Dx12ShadowMap&) = delete
Dx12ShadowMap(Dx12ShadowMap&&) noexcept = default
Dx12ShadowMap& operator=(Dx12ShadowMap&&) noexcept = default
bool initialize(ID3D12Device* device, int mapSize)
void destroy() noexcept
void beginShadowPass(ID3D12GraphicsCommandList* cmd)
void endShadowPass(ID3D12GraphicsCommandList* cmd)
[[nodiscard]] D3D12_GPU_DESCRIPTOR_HANDLE srvHandle() const noexcept
[[nodiscard]] ID3D12Resource* nativeResource() const noexcept
[[nodiscard]] int mapSize() const noexcept
[[nodiscard]] bool isInitialized() const noexcept
class Dx12Texture2D 12
Dx12Texture2D() = default
~Dx12Texture2D() = default
Dx12Texture2D(const Dx12Texture2D&) = delete
Dx12Texture2D& operator=(const Dx12Texture2D&) = delete
Dx12Texture2D(Dx12Texture2D&&) noexcept = default
Dx12Texture2D& operator=(Dx12Texture2D&&) noexcept = default
bool uploadFrom(ID3D12Device* device, ID3D12GraphicsCommandList* cmdList, const Texture& src, std::vector<ComPtr<ID3D12Resource>>& uploadOwner)
void createSRV(ID3D12Device* device, D3D12_CPU_DESCRIPTOR_HANDLE dst) const
[[nodiscard]] ID3D12Resource* nativeResource() const noexcept
[[nodiscard]] int width() const noexcept
[[nodiscard]] int height() const noexcept
[[nodiscard]] bool isReady() const noexcept
struct UploadAllocation 6
ID3D12Resource* resource = nullptr
UINT64 offset = 0
UINT64 size = 0
void* cpuPtr = nullptr
D3D12_GPU_VIRTUAL_ADDRESS gpuAddr = 0
[[nodiscard]] bool valid() const noexcept
class Dx12UploadRing 12
Dx12UploadRing() = default
~Dx12UploadRing()
Dx12UploadRing(const Dx12UploadRing&) = delete
Dx12UploadRing& operator=(const Dx12UploadRing&) = delete
bool initialize(ID3D12Device* device, UINT frameCount, UINT64 perFrameBytes)
void destroy()
void beginFrame(UINT frameIndex) noexcept
[[nodiscard]] UploadAllocation allocate(UINT64 sizeBytes, UINT64 alignment = 256)
[[nodiscard]] UploadAllocation upload(const void* src, UINT64 sizeBytes, UINT64 alignment = 256)
[[nodiscard]] UINT64 bytesRemaining() const noexcept
[[nodiscard]] UINT64 capacityPerFrame() const noexcept
[[nodiscard]] bool hadOverflowThisFrame() const noexcept

Sourced from docs/API_CATALOG.md, auto-generated by tools/generate_api_catalog.py.