2018-01-13 22:18:32 +01:00
|
|
|
#include "dxvk_pipecache.h"
|
|
|
|
|
|
|
|
namespace dxvk {
|
|
|
|
|
|
|
|
DxvkPipelineCache::DxvkPipelineCache(
|
|
|
|
const Rc<vk::DeviceFn>& vkd)
|
2018-04-09 19:38:32 +02:00
|
|
|
: m_vkd(vkd) {
|
2018-01-13 22:18:32 +01:00
|
|
|
VkPipelineCacheCreateInfo info;
|
|
|
|
info.sType = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO;
|
|
|
|
info.pNext = nullptr;
|
|
|
|
info.flags = 0;
|
2018-04-09 19:38:32 +02:00
|
|
|
info.initialDataSize = 0;
|
|
|
|
info.pInitialData = nullptr;
|
2018-01-13 22:18:32 +01:00
|
|
|
|
|
|
|
if (m_vkd->vkCreatePipelineCache(m_vkd->device(),
|
|
|
|
&info, nullptr, &m_handle) != VK_SUCCESS)
|
|
|
|
throw DxvkError("DxvkPipelineCache: Failed to create cache");
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
DxvkPipelineCache::~DxvkPipelineCache() {
|
|
|
|
m_vkd->vkDestroyPipelineCache(
|
|
|
|
m_vkd->device(), m_handle, nullptr);
|
|
|
|
}
|
|
|
|
|
2018-03-21 02:45:11 +01:00
|
|
|
}
|