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