|
| DirectX12Device (const DirectX12Backend &backend, const DirectX12GraphicsAdapter &adapter, UniquePtr< DirectX12Surface > &&surface) |
| Creates a new device instance. More...
|
|
| DirectX12Device (const DirectX12Backend &backend, const DirectX12GraphicsAdapter &adapter, UniquePtr< DirectX12Surface > &&surface, const Format &format, const Size2d &frameBufferSize, const UInt32 &frameBuffers, const UInt32 &globalBufferHeapSize=524287, const UInt32 &globalSamplerHeapSize=2048) |
| Creates a new device instance. More...
|
|
| DirectX12Device (const DirectX12Device &)=delete |
|
| DirectX12Device (DirectX12Device &&)=delete |
|
virtual | ~DirectX12Device () noexcept |
|
virtual const DirectX12Backend & | backend () const noexcept |
| Returns the backend from which the device got created. More...
|
|
virtual const ID3D12DescriptorHeap * | globalBufferHeap () const noexcept |
| Returns the global descriptor heap. More...
|
|
virtual const ID3D12DescriptorHeap * | globalSamplerHeap () const noexcept |
| Returns the global sampler heap. More...
|
|
virtual void | allocateGlobalDescriptors (const DirectX12DescriptorSet &descriptorSet, UInt32 &bufferOffset, UInt32 &samplerOffset) const |
| Allocates a range of descriptors in the global descriptor heaps for the provided descriptorSet . More...
|
|
virtual void | releaseGlobalDescriptors (const DirectX12DescriptorSet &descriptorSet) const noexcept |
| Releases a range of descriptors from the global descriptor heaps. More...
|
|
virtual void | updateBufferDescriptors (const DirectX12DescriptorSet &descriptorSet, const UInt32 &firstDescriptor, const UInt32 &descriptors) const noexcept |
| Updates a range of descriptors in the global buffer descriptor heap with the descriptors from descriptorSet . More...
|
|
virtual void | updateSamplerDescriptors (const DirectX12DescriptorSet &descriptorSet, const UInt32 &firstDescriptor, const UInt32 &descriptors) const noexcept |
| Updates a sampler descriptors in the global buffer descriptor heap with a descriptor from descriptorSet . More...
|
|
virtual void | bindDescriptorSet (const DirectX12CommandBuffer &commandBuffer, const DirectX12DescriptorSet &descriptorSet, const DirectX12PipelineState &pipeline) const noexcept |
| Binds the descriptors of the descriptor set to the global descriptor heaps. More...
|
|
virtual void | bindGlobalDescriptorHeaps (const DirectX12CommandBuffer &commandBuffer) const noexcept |
| Binds the global descriptor heap. More...
|
|
virtual DirectX12ComputePipeline & | blitPipeline () const noexcept |
| Returns the compute pipeline that can be invoked to blit an image resource. More...
|
|
virtual DeviceState & | state () const noexcept override |
| Returns the device state that can be used to manage resources. More...
|
|
virtual const DirectX12SwapChain & | swapChain () const noexcept override |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual DirectX12SwapChain & | swapChain () noexcept override |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual const DirectX12Surface & | surface () const noexcept override |
| Returns the surface, the device draws to. More...
|
|
virtual const DirectX12GraphicsAdapter & | adapter () const noexcept override |
| Returns the graphics adapter, the device uses for drawing. More...
|
|
virtual const DirectX12GraphicsFactory & | factory () const noexcept override |
| Returns the factory instance, used to create instances from the device. More...
|
|
virtual const DirectX12Queue & | graphicsQueue () const noexcept override |
| Returns the instance of the queue, used to process draw calls. More...
|
|
virtual const DirectX12Queue & | transferQueue () const noexcept override |
| Returns the instance of the queue used for device-device transfers (e.g. between render-passes). More...
|
|
virtual const DirectX12Queue & | bufferQueue () const noexcept override |
| Returns the instance of the queue used for host-device transfers. More...
|
|
virtual const DirectX12Queue & | computeQueue () const noexcept override |
| Returns the instance of the queue used for compute calls. More...
|
|
virtual UniquePtr< DirectX12Barrier > | makeBarrier () const noexcept override |
|
virtual MultiSamplingLevel | maximumMultiSamplingLevel (const Format &format) const noexcept override |
|
virtual void | wait () const override |
| Waits until the device is idle. More...
|
|
virtual | ~GraphicsDevice () noexcept=default |
|
virtual const surface_type & | surface () const noexcept=0 |
| Returns the surface, the device draws to. More...
|
|
virtual const adapter_type & | adapter () const noexcept=0 |
| Returns the graphics adapter, the device uses for drawing. More...
|
|
virtual const swap_chain_type & | swapChain () const noexcept=0 |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual swap_chain_type & | swapChain () noexcept=0 |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual const factory_type & | factory () const noexcept=0 |
| Returns the factory instance, used to create instances from the device. More...
|
|
virtual const command_queue_type & | graphicsQueue () const noexcept=0 |
| Returns the instance of the queue, used to process draw calls. More...
|
|
virtual const command_queue_type & | transferQueue () const noexcept=0 |
| Returns the instance of the queue used for device-device transfers (e.g. between render-passes). More...
|
|
virtual const command_queue_type & | bufferQueue () const noexcept=0 |
| Returns the instance of the queue used for host-device transfers. More...
|
|
virtual const command_queue_type & | computeQueue () const noexcept=0 |
| Returns the instance of the queue used for compute calls. More...
|
|
virtual UniquePtr< barrier_type > | makeBarrier () const noexcept=0 |
|
virtual | ~IGraphicsDevice () noexcept=default |
|
virtual DeviceState & | state () const noexcept=0 |
| Returns the device state that can be used to manage resources. More...
|
|
virtual const ISurface & | surface () const noexcept=0 |
| Returns the surface, the device draws to. More...
|
|
virtual const IGraphicsAdapter & | adapter () const noexcept=0 |
| Returns the graphics adapter, the device uses for drawing. More...
|
|
virtual const ISwapChain & | swapChain () const noexcept=0 |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual ISwapChain & | swapChain () noexcept=0 |
| Returns the swap chain, that contains the back and front buffers used for presentation. More...
|
|
virtual const IGraphicsFactory & | factory () const noexcept=0 |
| Returns the factory instance, used to create instances from the device. More...
|
|
virtual const ICommandQueue & | graphicsQueue () const noexcept=0 |
| Returns the instance of the queue, used to process draw calls. More...
|
|
virtual const ICommandQueue & | transferQueue () const noexcept=0 |
| Returns the instance of the queue used for device-device transfers (e.g. between render-passes). More...
|
|
virtual const ICommandQueue & | bufferQueue () const noexcept=0 |
| Returns the instance of the queue used for host-device transfers. More...
|
|
virtual const ICommandQueue & | computeQueue () const noexcept=0 |
| Returns the instance of the queue used for compute calls. More...
|
|
UniquePtr< IBarrier > | makeBarrier () const noexcept |
| Creates a memory barrier instance. More...
|
|
virtual MultiSamplingLevel | maximumMultiSamplingLevel (const Format &format) const noexcept=0 |
| Queries the device for the maximum supported number of multi-sampling levels. More...
|
|
virtual void | wait () const =0 |
| Waits until the device is idle. More...
|
|
| Resource (const Resource &)=delete |
|
| Resource (Resource &&)=delete |
|
virtual | ~Resource () noexcept=default |
|
const THandle & | handle () const noexcept override |
| Returns the resource managed by the class. More...
|
|
virtual | ~IResource () noexcept=default |
|
virtual const THandle & | handle () const noexcept=0 |
| Returns the resource managed by the class. More...
|
|
Implements a DirectX 12 graphics device.