|
| | ~GraphicsFactory () noexcept override=default |
| |
| virtual SharedPtr< TBuffer > | createBuffer (BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TBuffer > | createBuffer (const String &name, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TVertexBuffer > | createVertexBuffer (const vertex_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TVertexBuffer > | createVertexBuffer (const String &name, const vertex_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TIndexBuffer > | createIndexBuffer (const index_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TIndexBuffer > | createIndexBuffer (const String &name, const index_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TImage > | createTexture (Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TImage > | createTexture (const String &name, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateBuffer (SharedPtr< TBuffer > &buffer, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateBuffer (SharedPtr< TBuffer > &buffer, const String &name, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateVertexBuffer (SharedPtr< TVertexBuffer > &buffer, const vertex_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateVertexBuffer (SharedPtr< TVertexBuffer > &buffer, const String &name, const vertex_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateIndexBuffer (SharedPtr< TIndexBuffer > &buffer, const index_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateIndexBuffer (SharedPtr< TIndexBuffer > &buffer, const String &name, const index_buffer_layout_type &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateTexture (SharedPtr< TImage > &image, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual bool | tryCreateTexture (SharedPtr< TImage > &image, const String &name, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual Generator< SharedPtr< TImage > > | createTextures (Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 layers=1, UInt32 levels=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const =0 |
| |
| virtual SharedPtr< TSampler > | createSampler (FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const =0 |
| |
| virtual SharedPtr< TSampler > | createSampler (const String &name, FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const =0 |
| |
| virtual Generator< SharedPtr< TSampler > > | createSamplers (FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const =0 |
| |
| UniquePtr< TBLAS > | createBottomLevelAccelerationStructure (AccelerationStructureFlags flags) const |
| |
| virtual UniquePtr< TBLAS > | createBottomLevelAccelerationStructure (StringView name, AccelerationStructureFlags flags) const =0 |
| |
| UniquePtr< TTLAS > | createTopLevelAccelerationStructure (AccelerationStructureFlags flags) const |
| |
| virtual UniquePtr< TTLAS > | createTopLevelAccelerationStructure (StringView name, AccelerationStructureFlags flags) const =0 |
| |
| SharedPtr< IBuffer > | createBuffer (const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer of type type .
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer of type type .
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IVertexBuffer > | createVertexBuffer (const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a vertex buffer, based on the layout .
|
| |
| SharedPtr< IVertexBuffer > | createVertexBuffer (const String &name, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a vertex buffer, based on the layout .
|
| |
| bool | tryCreateVertexBuffer (SharedPtr< IVertexBuffer > &buffer, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a vertex buffer, based on the layout .
|
| |
| bool | tryCreateVertexBuffer (SharedPtr< IVertexBuffer > &buffer, const String &name, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a vertex buffer, based on the layout .
|
| |
| SharedPtr< IIndexBuffer > | createIndexBuffer (const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates an index buffer, based on the layout .
|
| |
| SharedPtr< IIndexBuffer > | createIndexBuffer (const String &name, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates an index buffer, based on the layout .
|
| |
| bool | tryCreateIndexBuffer (SharedPtr< IIndexBuffer > &buffer, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create an index buffer, based on the layout .
|
| |
| bool | tryCreateIndexBuffer (SharedPtr< IIndexBuffer > &buffer, const String &name, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create an index buffer, based on the layout .
|
| |
| bool | tryCreateTexture (SharedPtr< IImage > &image, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a texture.
|
| |
| bool | tryCreateTexture (SharedPtr< IImage > &image, const String &name, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a texture.
|
| |
| | ~IGraphicsFactory () noexcept override=default |
| |
| virtual VirtualAllocator | createAllocator (UInt64 overallMemory, AllocationAlgorithm algorithm=AllocationAlgorithm::Default) const =0 |
| | Creates a virtual allocator that can be used to manage allocation from a custom block of memory.
|
| |
| virtual void | beginDefragmentation (const ICommandQueue &queue, DefragmentationStrategy strategy=DefragmentationStrategy::Balanced, UInt64 maxBytesToMove=0u, UInt32 maxAllocationsToMove=0u) const =0 |
| | Starts a defragmentation process for the resources allocated from the factory.
|
| |
| virtual UInt64 | beginDefragmentationPass () const =0 |
| | Starts a new defragmentation pass.
|
| |
| virtual bool | endDefragmentationPass () const =0 |
| | Ends a defragmentation pass.
|
| |
| virtual ResourceAllocationResult | allocate (const ResourceAllocationInfo &allocationInfo, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Allocates a single resource as described by allocationInfo .
|
| |
| virtual Generator< ResourceAllocationResult > | allocate (Enumerable< const ResourceAllocationInfo & > allocationInfos, AllocationBehavior allocationBehavior=AllocationBehavior::Default, bool alias=false) const =0 |
| | Allocates a set of resources as described by allocationInfos .
|
| |
| virtual bool | canAlias (Enumerable< const ResourceAllocationInfo & > allocationInfos) const =0 |
| | Checks if the resources described by allocationInfos can be overlapped.
|
| |
| SharedPtr< IBuffer > | createBuffer (BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer of type type .
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer of type type .
|
| |
| SharedPtr< IBuffer > | createBuffer (const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer of type type .
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, BufferType type, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer of type type .
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a specific descriptor.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IDescriptorSetLayout &descriptorSet, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a specific descriptor.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IBuffer > | createBuffer (const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| bool | tryCreateBuffer (SharedPtr< IBuffer > &buffer, const String &name, const IPipeline &pipeline, UInt32 space, UInt32 binding, ResourceHeap heap, size_t elementSize, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a buffer that can be bound to a descriptor of a specific descriptor set.
|
| |
| SharedPtr< IVertexBuffer > | createVertexBuffer (const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a vertex buffer, based on the layout .
|
| |
| bool | tryCreateVertexBuffer (SharedPtr< IVertexBuffer > &buffer, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a vertex buffer, based on the layout .
|
| |
| SharedPtr< IVertexBuffer > | createVertexBuffer (const String &name, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a vertex buffer, based on the layout .
|
| |
| bool | tryCreateVertexBuffer (SharedPtr< IVertexBuffer > &buffer, const String &name, const IVertexBufferLayout &layout, ResourceHeap heap, UInt32 elements=1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a vertex buffer, based on the layout .
|
| |
| SharedPtr< IIndexBuffer > | createIndexBuffer (const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates an index buffer, based on the layout .
|
| |
| bool | tryCreateIndexBuffer (SharedPtr< IIndexBuffer > &buffer, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create an index buffer, based on the layout .
|
| |
| SharedPtr< IIndexBuffer > | createIndexBuffer (const String &name, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates an index buffer, based on the layout .
|
| |
| bool | tryCreateIndexBuffer (SharedPtr< IIndexBuffer > &buffer, const String &name, const IIndexBufferLayout &layout, ResourceHeap heap, UInt32 elements, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create an index buffer, based on the layout .
|
| |
| SharedPtr< IImage > | createTexture (Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a texture.
|
| |
| bool | tryCreateTexture (SharedPtr< IImage > &image, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a texture.
|
| |
| SharedPtr< IImage > | createTexture (const String &name, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a texture.
|
| |
| bool | tryCreateTexture (SharedPtr< IImage > &image, const String &name, Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 levels=1, UInt32 layers=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Tries to create a texture.
|
| |
| Generator< SharedPtr< IImage > > | createTextures (Format format, const Size3d &size, ImageDimensions dimension=ImageDimensions::DIM_2, UInt32 layers=1, UInt32 levels=1, MultiSamplingLevel samples=MultiSamplingLevel::x1, ResourceUsage usage=ResourceUsage::Default, AllocationBehavior allocationBehavior=AllocationBehavior::Default) const |
| | Creates a series of textures.
|
| |
| SharedPtr< ISampler > | createSampler (FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const |
| | Creates a texture sampler.
|
| |
| SharedPtr< ISampler > | createSampler (const String &name, FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const |
| | Creates a texture sampler.
|
| |
| Generator< SharedPtr< ISampler > > | createSamplers (FilterMode magFilter=FilterMode::Nearest, FilterMode minFilter=FilterMode::Nearest, BorderMode borderU=BorderMode::Repeat, BorderMode borderV=BorderMode::Repeat, BorderMode borderW=BorderMode::Repeat, MipMapMode mipMapMode=MipMapMode::Nearest, Float mipMapBias=0.f, Float maxLod=std::numeric_limits< Float >::max(), Float minLod=0.f, Float anisotropy=0.f) const |
| | Creates a series of texture samplers.
|
| |
| UniquePtr< IBottomLevelAccelerationStructure > | createBottomLevelAccelerationStructure (AccelerationStructureFlags flags=AccelerationStructureFlags::None) const |
| | Creates a bottom-level acceleration structure.
|
| |
| UniquePtr< IBottomLevelAccelerationStructure > | createBottomLevelAccelerationStructure (StringView name, AccelerationStructureFlags flags=AccelerationStructureFlags::None) const |
| | Creates a bottom-level acceleration structure.
|
| |
| UniquePtr< ITopLevelAccelerationStructure > | createTopLevelAccelerationStructure (AccelerationStructureFlags flags=AccelerationStructureFlags::None) const |
| | Creates a top-level acceleration structure.
|
| |
| UniquePtr< ITopLevelAccelerationStructure > | createTopLevelAccelerationStructure (StringView name, AccelerationStructureFlags flags=AccelerationStructureFlags::None) const |
| | Creates a top-level acceleration structure.
|
| |
| virtual bool | supportsResizableBaseAddressRegister () const noexcept=0 |
| | Returns true, if the GPU supports resizable base address register (ReBAR) and false otherwise.
|
| |
| virtual Array< MemoryHeapStatistics > | memoryStatistics () const =0 |
| | Returns an array of objects, that contain information about the current memory usage and available memory for a memory heap.
|
| |
| virtual DetailedMemoryStatistics | detailedMemoryStatistics () const =0 |
| | Returns detailed memory statistics.
|
| |
| virtual | ~SharedObject () noexcept=default |
| | Destroys the shared object.
|
| |
| template<typename TSelf > |
| auto | shared_from_this (this TSelf &&self) noexcept |
| | Returns a shared pointer to the current object instance.
|
| |
| template<typename TSelf > |
| auto | weak_from_this (this TSelf &&self) noexcept -> WeakPtr< std::remove_reference_t< TSelf > > |
| | Returns a weak pointer to the current object instance.
|
| |