1
0
mirror of https://github.com/EduApps-CDG/OpenDX synced 2024-12-30 09:45:37 +01:00
OpenDX/src/dxvk/dxvk_pipecache.h
Jacek Caban 6d16bb4c87 Don't use std::thread.
Wine needs to setup each thread that has an access to Windows APIs. It means that in winelib builds, we can't let standard C++ library create threads and need to use Wine for that instead. I wrote a thin wrapper around Windows thread functions so that the rest of code just has to use new dxvk::thread class instead of std::thread.
2018-07-19 08:55:34 +02:00

44 lines
757 B
C++

#pragma once
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <fstream>
#include "dxvk_include.h"
#include "../util/sha1/sha1_util.h"
#include "../util/util_env.h"
namespace dxvk {
/**
* \brief Pipeline cache
*
* Allows the Vulkan implementation to
* re-use previously compiled pipelines.
*/
class DxvkPipelineCache : public RcObject {
public:
DxvkPipelineCache(const Rc<vk::DeviceFn>& vkd);
~DxvkPipelineCache();
/**
* \brief Pipeline cache handle
* \returns Pipeline cache handle
*/
VkPipelineCache handle() const {
return m_handle;
}
private:
Rc<vk::DeviceFn> m_vkd;
VkPipelineCache m_handle;
};
}