CommonLibSSE (powerof3)
BSSaveDataSystemUtility.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSString.h"
4 #include "RE/B/BSTEvent.h"
5 
6 namespace RE
7 {
8  class BSSaveDataEvent;
9 
11  public BSTEventSource<BSSaveDataEvent> // 008
12  {
13  public:
14  inline static constexpr auto RTTI = RTTI_BSSaveDataSystemUtility;
15 
16  class Entry
17  {
18  public:
19  inline static constexpr auto RTTI = RTTI_BSSaveDataSystemUtility__Entry;
20 
21  virtual void Unk_00(void); // 00
22 
23  // members
24  std::uint64_t unk008; // 008
25  std::uint64_t unk010; // 010
26  std::uint64_t unk018; // 018
27  std::uint64_t unk020; // 020
28  std::uint64_t unk028; // 028
29  std::uint64_t unk030; // 030
30  std::uint64_t unk038; // 038
31  std::uint64_t unk040; // 040
32  std::uint64_t unk048; // 048
33  std::uint64_t unk050; // 050
34  std::uint64_t unk058; // 058
35  std::uint64_t unk060; // 060
36  std::uint64_t unk068; // 068
37  std::uint64_t unk070; // 070
38  std::uint64_t unk078; // 078
39  std::uint64_t unk080; // 080
40  std::uint64_t unk088; // 088
41  std::uint64_t unk090; // 090
42  std::uint64_t unk098; // 098
43  std::uint64_t unk0A0; // 0A0
44  std::uint64_t unk0A8; // 0A8
45  std::uint64_t unk0B0; // 0B0
46  std::uint64_t unk0B8; // 0B8
47  std::uint64_t unk0C0; // 0C0
48  std::uint64_t unk0C8; // 0C8
49  std::uint64_t unk0D0; // 0D0
50  std::uint64_t unk0D8; // 0D8
51  std::uint64_t unk0E0; // 0E0
52  std::uint64_t unk0E8; // 0E8
53  std::uint64_t unk0F0; // 0F0
54  std::uint64_t unk0F8; // 0F8
55  std::uint64_t unk100; // 100
56  std::uint64_t unk108; // 108
57  std::uint64_t unk110; // 110
58  std::uint64_t unk118; // 118
59  std::uint64_t unk120; // 120
60  std::uint64_t unk128; // 128
61  BSString unk130; // 130
62  BSString unk140; // 140
63  BSString unk150; // 150
64  std::uint64_t unk160; // 160
65  std::uint64_t unk168; // 168
66  std::uint64_t unk170; // 170
67  std::uint64_t unk178; // 178
68  std::uint64_t unk180; // 180
69  std::uint64_t unk188; // 188
70  std::uint64_t unk190; // 190
71  };
72 
73  virtual ~BSSaveDataSystemUtility(); // 00
74 
75  // add
76  virtual bool CreateSaveDirectory(const char* a_pathName, bool a_ignoreINI) = 0; // 01
77  virtual errno_t PrepareFileSavePath(const char* a_fileName, char* a_dst, bool a_tmpSave, bool a_ignoreINI) = 0; // 02 - a_dst must be 0x104 in length
78  virtual void Unk_03(void); // 03 - { return Unk_04(); }
79  virtual void Unk_04(void); // 04 - { return; }
80  virtual void Unk_05(void); // 05
81  virtual void Unk_06(void) = 0; // 06
82  virtual void Unk_07(void); // 07
83  virtual void Unk_08(void); // 08 - { return; }
84  virtual void Unk_09(void); // 09 - { return; }
85  virtual void Unk_0A(void); // 0A
86  virtual void Unk_0B(void); // 0B - { return; }
87  virtual void Unk_0C(void); // 0C
88  virtual void Unk_0D(void); // 0D - { return; }
89  virtual void Unk_0E(void); // 0E - { return 1; }
90  virtual void Unk_0F(void); // 0F - { return 1; }
91  virtual void Unk_10(void); // 10 - { return 0; }
92  virtual void Unk_11(void); // 11 - { return; }
93 
94  // members
95  std::uint32_t unk060; // 060
96  std::uint32_t profileHash; // 064
97  std::uint64_t unk068; // 068
98  Entry entry; // 070
99  std::uint64_t unk208; // 208
100  std::uint64_t unk210; // 210
101  std::uint64_t unk218; // 218
102  std::uint64_t unk220; // 220
103  };
104  static_assert(sizeof(BSSaveDataSystemUtility) == 0x228);
105 }
Definition: BSSaveDataSystemUtility.h:17
std::uint64_t unk020
Definition: BSSaveDataSystemUtility.h:27
BSString unk130
Definition: BSSaveDataSystemUtility.h:61
std::uint64_t unk0B8
Definition: BSSaveDataSystemUtility.h:46
std::uint64_t unk180
Definition: BSSaveDataSystemUtility.h:68
std::uint64_t unk128
Definition: BSSaveDataSystemUtility.h:60
std::uint64_t unk188
Definition: BSSaveDataSystemUtility.h:69
std::uint64_t unk0F8
Definition: BSSaveDataSystemUtility.h:54
std::uint64_t unk0E8
Definition: BSSaveDataSystemUtility.h:52
std::uint64_t unk160
Definition: BSSaveDataSystemUtility.h:64
std::uint64_t unk008
Definition: BSSaveDataSystemUtility.h:24
std::uint64_t unk0E0
Definition: BSSaveDataSystemUtility.h:51
std::uint64_t unk060
Definition: BSSaveDataSystemUtility.h:35
std::uint64_t unk190
Definition: BSSaveDataSystemUtility.h:70
std::uint64_t unk088
Definition: BSSaveDataSystemUtility.h:40
std::uint64_t unk0A8
Definition: BSSaveDataSystemUtility.h:44
BSString unk140
Definition: BSSaveDataSystemUtility.h:62
std::uint64_t unk038
Definition: BSSaveDataSystemUtility.h:30
std::uint64_t unk070
Definition: BSSaveDataSystemUtility.h:37
std::uint64_t unk068
Definition: BSSaveDataSystemUtility.h:36
std::uint64_t unk118
Definition: BSSaveDataSystemUtility.h:58
std::uint64_t unk098
Definition: BSSaveDataSystemUtility.h:42
std::uint64_t unk0B0
Definition: BSSaveDataSystemUtility.h:45
std::uint64_t unk120
Definition: BSSaveDataSystemUtility.h:59
std::uint64_t unk108
Definition: BSSaveDataSystemUtility.h:56
std::uint64_t unk168
Definition: BSSaveDataSystemUtility.h:65
std::uint64_t unk0D8
Definition: BSSaveDataSystemUtility.h:50
std::uint64_t unk048
Definition: BSSaveDataSystemUtility.h:32
static constexpr auto RTTI
Definition: BSSaveDataSystemUtility.h:19
std::uint64_t unk090
Definition: BSSaveDataSystemUtility.h:41
std::uint64_t unk170
Definition: BSSaveDataSystemUtility.h:66
std::uint64_t unk080
Definition: BSSaveDataSystemUtility.h:39
std::uint64_t unk028
Definition: BSSaveDataSystemUtility.h:28
std::uint64_t unk010
Definition: BSSaveDataSystemUtility.h:25
std::uint64_t unk110
Definition: BSSaveDataSystemUtility.h:57
std::uint64_t unk0A0
Definition: BSSaveDataSystemUtility.h:43
std::uint64_t unk040
Definition: BSSaveDataSystemUtility.h:31
std::uint64_t unk0C0
Definition: BSSaveDataSystemUtility.h:47
std::uint64_t unk030
Definition: BSSaveDataSystemUtility.h:29
std::uint64_t unk078
Definition: BSSaveDataSystemUtility.h:38
std::uint64_t unk178
Definition: BSSaveDataSystemUtility.h:67
std::uint64_t unk100
Definition: BSSaveDataSystemUtility.h:55
BSString unk150
Definition: BSSaveDataSystemUtility.h:63
std::uint64_t unk0C8
Definition: BSSaveDataSystemUtility.h:48
std::uint64_t unk0F0
Definition: BSSaveDataSystemUtility.h:53
std::uint64_t unk018
Definition: BSSaveDataSystemUtility.h:26
std::uint64_t unk058
Definition: BSSaveDataSystemUtility.h:34
std::uint64_t unk0D0
Definition: BSSaveDataSystemUtility.h:49
std::uint64_t unk050
Definition: BSSaveDataSystemUtility.h:33
Definition: BSSaveDataSystemUtility.h:12
virtual void Unk_06(void)=0
std::uint64_t unk068
Definition: BSSaveDataSystemUtility.h:97
std::uint64_t unk208
Definition: BSSaveDataSystemUtility.h:99
virtual void Unk_11(void)
virtual void Unk_04(void)
virtual void Unk_0B(void)
virtual void Unk_0E(void)
virtual void Unk_0A(void)
virtual void Unk_0C(void)
std::uint64_t unk220
Definition: BSSaveDataSystemUtility.h:102
virtual void Unk_0F(void)
Entry entry
Definition: BSSaveDataSystemUtility.h:98
virtual bool CreateSaveDirectory(const char *a_pathName, bool a_ignoreINI)=0
virtual void Unk_03(void)
virtual void Unk_07(void)
virtual void Unk_10(void)
std::uint32_t profileHash
Definition: BSSaveDataSystemUtility.h:96
virtual void Unk_05(void)
static constexpr auto RTTI
Definition: BSSaveDataSystemUtility.h:14
std::uint64_t unk218
Definition: BSSaveDataSystemUtility.h:101
std::uint64_t unk210
Definition: BSSaveDataSystemUtility.h:100
virtual void Unk_08(void)
virtual void Unk_09(void)
std::uint32_t unk060
Definition: BSSaveDataSystemUtility.h:95
virtual errno_t PrepareFileSavePath(const char *a_fileName, char *a_dst, bool a_tmpSave, bool a_ignoreINI)=0
virtual void Unk_0D(void)
Definition: BSTEvent.h:28
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSSaveDataSystemUtility
Definition: Offsets_RTTI.h:2152
constexpr REL::ID RTTI_BSSaveDataSystemUtility__Entry
Definition: Offsets_RTTI.h:2154