VV::V1::Pipeline::Cache struct

Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application.

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.

Specification

Derived classes

struct VV::V2::Pipeline::Cache
Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application.
class VV::V3::Pipeline::Cache
Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application.

Public types

struct CreateInfo
Specification
using Handle = VkPipelineCache
Specification
using CreateFlags = Bitfield<EPipelineCacheCreateFlag, VkPipelineCacheCreateFlags>
Specification

Public static functions

static auto Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, const Memory::AllocationCallbacks* _allocator, Cache::Handle _pipelineCache) -> EResult
Create a pipeline cache.
static void Destroy(LogicalDevice::Handle _deviceHandle, Cache::Handle _cache, const Memory::AllocationCallbacks* _allocator)
Destroy a pipeline cache.