class
#include <VaultedVulkan/VV_Pipelines.hpp>
Cache Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application.
Contents
Reuse between pipelines is achieved by passing the same pipeline cache object when creating multiple related pipelines. Reuse across runs of an application is achieved by retrieving pipeline cache contents in one run of an application, saving the contents, and using them to preinitialize a pipeline cache on a subsequent run. The contents of the pipeline cache objects are managed by the implementation. Applications can manage the host memory consumed by a pipeline cache object and control the amount of data retrieved from a pipeline cache object.
Base classes
- struct VV::V1::Pipeline::Cache
- Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application.
Public types
-
using Parent = V2::
Pipeline:: Cache
Constructors, destructors, conversion operators
- Cache()
- Default constructor.
- Cache(const LogicalDevice& _device)
- Logical device specified.
-
Cache(const LogicalDevice& _device,
const Memory::
AllocationCallbacks& _allocator) - Logical device and allocator specified.
- Cache(Cache&& _other) noexcept
- Performs a move operation to transfer ownership of the device object to this host object.
- ~Cache()
- Destroys the cache if handle is null.
- operator Handle&()
- Implicit conversion to give a reference to its handle.
- operator const Handle&() const
- Implicit conversion to give a readonly reference to its handle.
- operator const Handle*() const
- Implicit conversion to give a pointer to its handle.
Public functions
- auto Create(const CreateInfo& _info) -> EResult
- Create a cache.
- auto Create(const LogicalDevice& _device, const CreateInfo& _info) -> EResult
- Create a cache (logical device specified).
-
auto Create(const LogicalDevice& _device,
CreateInfo& _info,
const Memory::
AllocationCallbacks& _allocator) -> EResult - Create a cache (logical device and allocator specified).
- void Destroy()
- Destroy a cache.
- auto operator==(const Cache& _other) const -> bool
- Checks to see if its the same object by checking to see if its the same handle.
- auto operator=(Cache&& _other) -> Cache& noexcept
- Performs a move assignment operation to transfer ownership of the device object to this host object.
Protected variables
- Handle handle
-
const Memory::
AllocationCallbacks* allocator - const LogicalDevice* device