VV::V2::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.

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 = Parent::Cache

Public static functions

static auto Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, Cache::Handle _pipelineCache) -> EResult
Create a pipeline cache (Uses the default allocator).
static void Destroy(LogicalDevice::Handle _deviceHandle, Cache::Handle _cache)
Destroy a pipeline cache.
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.

Function documentation

static EResult VV::V2::Pipeline::Cache::Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, Cache::Handle _pipelineCache)

Create a pipeline cache (Uses the default allocator).

Parameters
_deviceHandle
_createInfo
_pipelineCache

static void VV::V2::Pipeline::Cache::Destroy(LogicalDevice::Handle _deviceHandle, Cache::Handle _cache)

Destroy a pipeline cache.

Parameters
_deviceHandle
_cache

static EResult VV::V2::Pipeline::Cache::Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, const Memory::AllocationCallbacks* _allocator, Cache::Handle _pipelineCache)

Create a pipeline cache.

Parameters
_deviceHandle
_createInfo
_allocator
_pipelineCache

Specification

static void VV::V2::Pipeline::Cache::Destroy(LogicalDevice::Handle _deviceHandle, Cache::Handle _cache, const Memory::AllocationCallbacks* _allocator)

Destroy a pipeline cache.

Parameters
_deviceHandle
_cache
_allocator

Specification