LiteFX::Rendering::Backends::VulkanImage¶
Implements a Vulkan IImage.
Synopsis¶
Declared in <image.h>
class VulkanImage
: public virtual IVulkanImage
, public Resource<VkImage>
, public virtual StateResourceBase Classes¶
| Name | Description |
|---|---|
IVulkanImage | Represents a Vulkan sampled image or the base interface for a texture. |
Resource<VkImage> | Implements the IResource interface. |
StateResource | Base class for a resource that can be identified by a name string within a DeviceState. |
Types¶
| Name | Description |
|---|---|
PrepareMoveEventArgs | Stores a reference to a barrier that can be used to synchronize accesses to the resource with a move operation. |
ResourceMovingEventArgs | Stores the fence and the command queue to wait on for the fence before a moved resource can be used. |
Type Aliases¶
| Name |
|---|
_Esft_type |
handle_type |
Member Functions¶
| Name | Description |
|---|---|
alignedElementSize [virtual] | Returns the actual size of the element in device memory. |
aspectMask | aspectMask overloads |
dimensions [virtual] | Gets the images dimensionality. |
elementAlignment [virtual] | Returns the alignment of a single element. |
elementSize [virtual] | Returns the size of a single element within the buffer. If there is only one element, this is equal to size. |
elements [virtual] | Gets the number of sub-resources inside the memory chunk. |
extent [virtual] | Gets the extent of the image at a certain mip-map level. |
format [virtual] | Gets the internal format of the image. |
handle [virtual] | Returns the resource managed by the class. |
heap [virtual] | Returns the heap that stores the resource. |
layers [virtual] | Gets the number of layers (slices) of the image. |
levels [virtual] | Gets the number of mip-map levels of the image. |
name [virtual] | Returns the name of the resource. |
planes [virtual] | Returns the number of planes of the image resource. |
resolveSubresource [virtual] | Returns the plane, layer and level for the provided subresource. |
samples [virtual] | Gets the number of samples of the texture. |
shared_from_this | Returns a shared pointer to the current object instance. |
size | size overloads |
subresourceId [virtual] | Returns the sub-resource ID for a combination of mip-map level, array layer and plane. |
usage [virtual] | Returns the usage flags for the resource. |
virtualAddress [virtual] | Gets the address of the resource in GPU memory. |
volatileMove [virtual] | Returns true, if the contents of the resource should not be copied during a move. |
weak_from_this | Returns a weak pointer to the current object instance. |
writable [virtual] | Returns true, if the resource can be bound to a read/write descriptor. |
Data Members¶
| Name | Description |
|---|---|
moved | An event that gets invoked, after the resource has been moved to a different location, but before the old resource gets destroyed. |
moving | An event that gets invoked before a resource is copied during a move. |
prepareMove | An event that gets invoked to prepare a resource for a move operation. |
Using Declarations¶
| Name |
|---|
size |
Protected Types¶
| Name | Description |
|---|---|
Allocator | An allocator used to allocate the shared object. |
Protected Member Functions¶
| Name | Description |
|---|---|
operator= | Assignment operators |
handle [virtual] | Returns the resource managed by the class. |
name | Returns the name of the resource. |
Protected Static Member Functions¶
| Name | Description |
|---|---|
create | Generic factory method used to create instances of the shared object. |
Friends¶
| Name | Description |
|---|---|
LiteFX::Rendering::Backends::VulkanGraphicsFactory | A graphics factory that produces objects for a VulkanDevice. |
LiteFX::SharedObject::Allocator | An allocator used to allocate the shared object. |
LiteFX::Rendering::Backends::VulkanSwapChain::VulkanSwapChainImpl | |
LiteFX::Rendering::Backends::VulkanImage::VulkanImageImpl | |
LiteFX::PimplPtr | A smart pointer that manages an implementation instance for a public interface class. |