Class D3D12ComputePool

Inheritance Relationships

Base Type

Class Documentation

class D3D12ComputePool : public Azura::ComputePool

Public Functions

D3D12ComputePool(const Microsoft::WRL::ComPtr<ID3D12Device> &device, const ComputePoolCreateInfo &createInfo, const DescriptorCount &descriptorCount, const Containers::Vector<DescriptorSlot> &descriptorSlots, const Containers::Vector<D3D12ScopedShader> &shaders, const Containers::Vector<D3D12ScopedComputePass> &renderPasses, Microsoft::WRL::ComPtr<ID3D12CommandQueue> commandQueue, Microsoft::WRL::ComPtr<ID3D12CommandQueue> graphicsQueue, Memory::Allocator &mainAllocator, Memory::Allocator &initAllocator, Log log)
void AddShader(U32 shaderId)
void BindTextureData(SlotID slot, const TextureDesc &desc, const U8 *buffer)
void BindSampler(SlotID slot, const SamplerDesc &desc)
void SetUniformBufferData()
void BindUniformData(SlotID slot, const U8 *buffer, U32 size)
void Submit()
void Record(U32 passId)
void BeginUpdates()
void UpdateUniformData(SlotID slot, const U8 *buffer, U32 size)
void UpdateTextureData(SlotID slot, const U8 *buffer)
void SubmitUpdates()
const Vector<ID3D12DescriptorHeap *> &GetAllDescriptorHeaps() const
ID3D12PipelineState *GetPipelineState(U32 renderPassId) const