CommonLibVR
Loading...
Searching...
No Matches
BSTimer.h
Go to the documentation of this file.
1#pragma once
2
3namespace RE
4{
5 class BSTimer
6 {
7 public:
8 [[nodiscard]] static BSTimer* GetSingleton() noexcept
9 {
10 static REL::Relocation<BSTimer*> singleton{ RELOCATION_ID(523657, 410196) };
11 return singleton.get();
12 }
13
14 static float QGlobalTimeMultiplier()
15 {
16 static REL::Relocation<float*> value{ RELOCATION_ID(511882, 388442) };
17 return *value;
18 }
19
21 {
22 static REL::Relocation<float*> value{ RELOCATION_ID(511883, 388443) };
23 return *value;
24 }
25
26 void SetGlobalTimeMultiplier(float a_multiplier, bool a_arg2)
27 {
28 using func_t = decltype(&BSTimer::SetGlobalTimeMultiplier);
29 static REL::Relocation<func_t> func{ RELOCATION_ID(66988, 68245) };
30 return func(this, a_multiplier, a_arg2);
31 }
32
33 // members
34 std::uint64_t unk00; // 00
35 std::uint32_t lastPerformanceCount; // 08
36#ifndef SKYRIMVR
37 std::uint32_t pad0C; // 0C
38#endif
39 float clamp; // 10
40 float clampRemainder; // 14
41 float delta; // 18
42 float realTimeDelta; // 1C
43 std::uint32_t unk20; // 20
44 std::uint32_t unk24; // 24
45 float unk28; // 28
46 std::uint32_t unk2C; // 2C
47 std::uint32_t unk30; // 30
48 std::uint32_t unk34; // 34
49 std::uint8_t unk38; // 38
50 std::uint8_t unk39; // 39
52 std::uint8_t pad3B; // 3B
53 std::uint32_t pad3C; // 3C
54 private:
56 };
57 static_assert(sizeof(BSTimer) == 0x40);
58}
#define KEEP_FOR_RE()
Definition PCH.h:517
#define RELOCATION_ID(SE, AE)
Definition PCH.h:506
Definition Relocation.h:210
value_type get() const noexcept(std::is_nothrow_copy_constructible_v< value_type >)
Definition Relocation.h:278
Definition BSTimer.h:6
std::uint8_t unk38
Definition BSTimer.h:49
float realTimeDelta
Definition BSTimer.h:42
void SetGlobalTimeMultiplier(float a_multiplier, bool a_arg2)
Definition BSTimer.h:26
std::uint32_t lastPerformanceCount
Definition BSTimer.h:35
std::uint32_t unk34
Definition BSTimer.h:48
std::uint32_t pad0C
Definition BSTimer.h:37
static float QGlobalTimeMultiplier()
Definition BSTimer.h:14
float clampRemainder
Definition BSTimer.h:40
bool useGlobalTimeMultiplierTarget
Definition BSTimer.h:51
static BSTimer * GetSingleton() noexcept
Definition BSTimer.h:8
float unk28
Definition BSTimer.h:45
float delta
Definition BSTimer.h:41
float clamp
Definition BSTimer.h:39
std::uint8_t unk39
Definition BSTimer.h:50
std::uint32_t unk2C
Definition BSTimer.h:46
std::uint32_t unk30
Definition BSTimer.h:47
static float QGlobalTimeMultiplierTarget()
Definition BSTimer.h:20
std::uint32_t unk24
Definition BSTimer.h:44
std::uint64_t unk00
Definition BSTimer.h:34
std::uint32_t unk20
Definition BSTimer.h:43
std::uint32_t pad3C
Definition BSTimer.h:53
std::uint8_t pad3B
Definition BSTimer.h:52
Definition AbsorbEffect.h:6