blob: ae21d721fa89e88b88a1f888a02428f3dda2d41d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#pragma once
#include "../nvapi_private.h"
namespace dxvk {
class Lfx {
public:
Lfx();
virtual ~Lfx();
[[nodiscard]] virtual bool IsAvailable() const;
virtual void WaitAndBeginFrame();
virtual void SetTargetFrameTime(uint64_t frame_time_ns);
private:
typedef void (*PFN_lfx_WaitAndBeginFrame)();
typedef void (*PFN_lfx_SetTargetFrameTime)(__int64);
HMODULE m_lfxModule{};
PFN_lfx_WaitAndBeginFrame m_lfx_WaitAndBeginFrame{};
PFN_lfx_SetTargetFrameTime m_lfx_SetTargetFrameTime{};
template <typename T>
T GetProcAddress(const char* name);
};
}
|