CommonLibSSE NG
Loading...
Searching...
No Matches
hkBaseTypes.h
Go to the documentation of this file.
1#pragma once
2
3namespace RE
4{
5 using hkObjectIndex = std::uint16_t;
6 using hkTime = float;
7
8 enum class hkResult
9 {
10 kSuccess = 0,
11 kFailure = 1
12 };
13
14 // 16-bit float with 7-bit precision
15 class hkHalf
16 {
17 public:
19 explicit hkHalf(const float& a_val);
20
21 hkHalf& operator=(const float& a_val);
22 operator float() const;
23
24 protected:
25 void SetFloat(const float& a_val);
26 [[nodiscard]] float GetFloat() const;
27
28 // members
29 std::int16_t _value; // 0
30 };
31 static_assert(sizeof(hkHalf) == 0x2);
32
33 // 8-bit float ranging [0.01, 1000000.0]
34 // value is an index in a lookup table
36 {
37 public:
38 // members
39 std::uint8_t value; // 0
40 };
41 static_assert(sizeof(hkUFloat8) == 0x1);
42}
Definition hkBaseTypes.h:16
void SetFloat(const float &a_val)
std::int16_t _value
Definition hkBaseTypes.h:29
hkHalf & operator=(const float &a_val)
float GetFloat() const
hkHalf(const float &a_val)
Definition hkBaseTypes.h:36
std::uint8_t value
Definition hkBaseTypes.h:39
Definition AbsorbEffect.h:6
std::uint16_t hkObjectIndex
Definition hkBaseTypes.h:5
hkResult
Definition hkBaseTypes.h:9
float hkTime
Definition hkBaseTypes.h:6