CommonLibSSE NG
Loading...
Searching...
No Matches
NavMeshInfoMap.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSAtomic.h"
5#include "RE/B/BSTArray.h"
6#include "RE/B/BSTHashMap.h"
7#include "RE/F/FormTypes.h"
9#include "RE/T/TESForm.h"
10
11namespace RE
12{
13 struct NavMeshInfo;
14
16 public TESForm, // 00
17 public BSNavmeshInfoMap, // 20
19 {
20 public:
21 inline static constexpr auto RTTI = RTTI_NavMeshInfoMap;
22 inline static constexpr auto VTABLE = VTABLE_NavMeshInfoMap;
23 inline static constexpr auto FORMTYPE = FormType::Navigation;
24
26 {
27 enum RecordFlag : std::uint32_t
28 {
29 };
30 };
31
32 ~NavMeshInfoMap() override; // 00
33
34 // override (TESForm)
35 bool Load(TESFile* a_mod) override; // 06
36 void InitItemImpl() override; // 13
37 void SetAltered(bool a_set) override; // 24
38
39 // override (BSNavmeshInfoMap)
40
41 BSNavmeshInfo* GetNavMeshInfoFixID(std::uint32_t a_id) override; // 01
42 BSNavmeshInfo* GetNavmeshInfo(std::uint32_t a_id) override; // 02
43 void GetAllNavMeshInfo(BSTArray<BSNavmeshInfo*>& a_results) override; // 03
44 void BuildListOfConnectedInfos(const BSNavmeshInfo* a_info, BSTArray<BSNavmeshInfo*>& a_results) override; // 04
45 void ForEach(IVisitor* a_visitor) override; // 05
46
47 // members
48 bool updateAll; // 78
49 std::uint8_t pad79; // 79
50 std::uint16_t pad7A; // 7A
51 std::uint32_t pad7C; // 7C
54 mutable BSReadWriteLock mapLock; // E0
55 bool init; // E8
56 std::uint8_t padE9; // E9
57 std::uint16_t padEA; // EA
58 std::uint32_t padEC; // EC
59 };
60 static_assert(sizeof(NavMeshInfoMap) == 0xF0);
61}
Definition BSNavmeshInfoMap.h:11
Definition BSAtomic.h:69
Definition BSTArray.h:377
Definition BSTHashMap.h:21
Definition NavMeshInfoMap.h:19
BSNavmeshInfo * GetNavmeshInfo(std::uint32_t a_id) override
std::uint16_t padEA
Definition NavMeshInfoMap.h:57
static constexpr auto RTTI
Definition NavMeshInfoMap.h:21
std::uint8_t pad79
Definition NavMeshInfoMap.h:49
std::uint8_t padE9
Definition NavMeshInfoMap.h:56
std::uint32_t pad7C
Definition NavMeshInfoMap.h:51
BSTHashMap< std::uint64_t, BSTArray< BSNavmeshInfo * > * > ckNavMeshInfoMap
Definition NavMeshInfoMap.h:53
void BuildListOfConnectedInfos(const BSNavmeshInfo *a_info, BSTArray< BSNavmeshInfo * > &a_results) override
bool init
Definition NavMeshInfoMap.h:55
void ForEach(IVisitor *a_visitor) override
BSTHashMap< std::uint32_t, NavMeshInfo * > infoMap
Definition NavMeshInfoMap.h:52
~NavMeshInfoMap() override
std::uint16_t pad7A
Definition NavMeshInfoMap.h:50
bool Load(TESFile *a_mod) override
static constexpr auto FORMTYPE
Definition NavMeshInfoMap.h:23
static constexpr auto VTABLE
Definition NavMeshInfoMap.h:22
void InitItemImpl() override
BSNavmeshInfo * GetNavMeshInfoFixID(std::uint32_t a_id) override
void SetAltered(bool a_set) override
BSReadWriteLock mapLock
Definition NavMeshInfoMap.h:54
bool updateAll
Definition NavMeshInfoMap.h:48
void GetAllNavMeshInfo(BSTArray< BSNavmeshInfo * > &a_results) override
std::uint32_t padEC
Definition NavMeshInfoMap.h:58
Definition PrecomputedNavmeshInfoPathMap.h:8
Definition TESFile.h:15
Definition TESForm.h:35
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_NavMeshInfoMap(686069, 393878, 0x1ef5500)
constexpr std::array< REL::VariantID, 2 > VTABLE_NavMeshInfoMap
Definition Offsets_VTABLE.h:1563
Definition BSNavmeshInfoMap.h:16
Definition NavMeshInfoMap.h:26
RecordFlag
Definition NavMeshInfoMap.h:28