1
0
mirror of https://github.com/EduApps-CDG/OpenDX synced 2024-12-30 09:45:37 +01:00
OpenDX/src/dxvk/dxvk_resource.h
Philip Rebohle 8f8340c2d1
[dxvk] Rename DxvkResourceAccessType to DxvkAccess
We'll be using this enum a lot more in the future.
2018-06-16 10:40:30 +02:00

40 lines
724 B
C++

#pragma once
#include "dxvk_include.h"
namespace dxvk {
enum class DxvkAccess {
Read = 0,
Write = 1,
};
using DxvkAccessFlags = Flags<DxvkAccess>;
/**
* \brief DXVK resource
*
* Keeps track of whether the resource is currently in use
* by the GPU. As soon as a command that uses the resource
* is recorded, it will be marked as 'in use'.
*/
class DxvkResource : public RcObject {
public:
virtual ~DxvkResource();
bool isInUse() const {
return m_useCount.load() != 0;
}
void acquire() { m_useCount += 1; }
void release() { m_useCount -= 1; }
private:
std::atomic<uint32_t> m_useCount = { 0u };
};
}