CommonLibSSE NG
Loading...
Searching...
No Matches
BSPointerHandleManager.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace RE
7{
8 template <class T>
10 {
11 public:
12 struct Entry
13 {
14 public:
15 enum EntryBitfieldConstants : std::uint32_t
16 {
17 //kAgeInc = (1 << T::kFreeListBits), // 0x100000
18 //kFreeListMask = kAgeInc - 1, // 0xFFFFF
19 //kInUseBit = kAgeInc << kAgeShift // 0x4000000
20 };
21
22 // members
23 std::uint32_t handleEntryBits; // 00
24 std::uint32_t pad04; // 04
26 };
27
28 [[nodiscard]] static auto GetHandleEntries()
29 {
30 REL::Relocation<Entry(*)[0x100000]> entries{ RELOCATION_ID(514478, 400622) };
31 return std::span<Entry, 0x100000>{ *entries };
32 }
33 };
34}
#define RELOCATION_ID(a_se, a_ae)
Definition PCH.h:794
Definition BSPointerHandleManager.h:10
static auto GetHandleEntries()
Definition BSPointerHandleManager.h:28
Definition NiSmartPointer.h:9
Definition Relocation.h:1638
Definition AbsorbEffect.h:6
Definition BSPointerHandleManager.h:13
EntryBitfieldConstants
Definition BSPointerHandleManager.h:16
NiPointer< BSHandleRefObject > pointer
Definition BSPointerHandleManager.h:25
std::uint32_t pad04
Definition BSPointerHandleManager.h:24
std::uint32_t handleEntryBits
Definition BSPointerHandleManager.h:23