CommonLibSSE NG
Loading...
Searching...
No Matches
IVMSaveLoadInterface.h
Go to the documentation of this file.
1#pragma once
2#include "RE/B/BSStorage.h"
3#include "RE/C/CodeTasklet.h"
5#include "RE/O/Object.h"
7namespace RE
8{
9 namespace BSScript
10 {
11 enum class StringIndexSize
12 {
13 kSmall,
14 kLarge
15 };
16
18 {
19 public:
21 {
22 public:
23 // members
24 const char* originalData; // 00
26 };
27 static_assert(sizeof(StringEntry) == 0x10);
28
29 // members
30 void* unk00; // 00
33 };
34 static_assert(sizeof(ReadableStringTable) == 0x18);
35
37 {
38 public:
39 // members
40 void* unk00; // 00
43 };
44 static_assert(sizeof(WritableStringTable) == 0x18);
45
47 {
48 public:
49 inline static constexpr auto RTTI = RTTI_BSScript__IVMSaveLoadInterface;
50
51 virtual ~IVMSaveLoadInterface(); // 00
52
53 // add
54 virtual void SaveGame(SaveStorageWrapper* a_wrapper, SkyrimScript::SaveFileHandleReaderWriter* a_handle, bool unk) = 0; // 01
55 virtual void LoadGame(LoadStorageWrapper* a_wrapper, SkyrimScript::SaveFileHandleReaderWriter* a_handle) = 0; // 02
56 virtual void MarkSaveInvalid(BSStorage* a_storage) = 0; // 03
57 virtual std::byte GetSaveGameVersion() = 0; // 04
58 virtual void CleanupSave() = 0; // 05
59 virtual void Unk_06(void) = 0; // 06
60 virtual void DropAllRunningData() = 0; // 07
61 virtual void Unk_08(void* unk) = 0; // 08
62 virtual void Unk_09(void) = 0; // 09
63 virtual void Unk_0A(VMHandle a_handle, Object** a_out) = 0; // 0A
64 virtual void Unk_0B(void* unk) = 0; // 0B
65 virtual void Unk_0C(void) = 0; // 0C
66 virtual void Unk_0D(VMHandle a_handle, Array** a_out) = 0; // 0D
67 virtual void Unk_0E(LoadStorageWrapper* a_storage, void* unk) = 0; // 0E
68 virtual bool GetStackByID(VMStackID a_stackID, Stack** a_out) = 0; // 0F
75 virtual bool CreateEmptyTasklet(Stack* a_stack, Internal::CodeTasklet** a_out) = 0; // 16
76 };
77 static_assert(sizeof(IVMSaveLoadInterface) == 0x8);
78 }
79}
Definition Array.h:13
Definition IVMSaveLoadInterface.h:47
static constexpr auto RTTI
Definition IVMSaveLoadInterface.h:49
virtual ReadableStringTable GetReadableStringTable()=0
virtual BSTHashMap< BSFixedString, BSTSmartPointer< ObjectTypeInfo > > * GetWritableTypeTable()=0
virtual void Unk_0D(VMHandle a_handle, Array **a_out)=0
virtual void Unk_0E(LoadStorageWrapper *a_storage, void *unk)=0
virtual std::byte GetSaveGameVersion()=0
virtual void SaveGame(SaveStorageWrapper *a_wrapper, SkyrimScript::SaveFileHandleReaderWriter *a_handle, bool unk)=0
virtual void LoadGame(LoadStorageWrapper *a_wrapper, SkyrimScript::SaveFileHandleReaderWriter *a_handle)=0
virtual const WritableStringTable GetWritableStringTable2()=0
virtual bool CreateEmptyTasklet(Stack *a_stack, Internal::CodeTasklet **a_out)=0
virtual WritableStringTable GetWritableStringTable()=0
virtual void MarkSaveInvalid(BSStorage *a_storage)=0
virtual void Unk_0B(void *unk)=0
virtual void Unk_08(void *unk)=0
virtual bool GetStackByID(VMStackID a_stackID, Stack **a_out)=0
virtual void Unk_0A(VMHandle a_handle, Object **a_out)=0
virtual BSTHashMap< BSFixedString, BSTSmartPointer< ObjectTypeInfo > > * GetReadableTypeTable()=0
virtual const BSTHashMap< BSFixedString, BSTSmartPointer< ObjectTypeInfo > > * GetWritableTypeTable2()=0
Definition CodeTasklet.h:18
Definition Object.h:15
Definition IVMSaveLoadInterface.h:21
const char * originalData
Definition IVMSaveLoadInterface.h:24
BSFixedString convertedString
Definition IVMSaveLoadInterface.h:25
Definition IVMSaveLoadInterface.h:18
void * unk00
Definition IVMSaveLoadInterface.h:30
BSScrapArray< StringEntry > * entries
Definition IVMSaveLoadInterface.h:31
stl::enumeration< StringIndexSize, std::int32_t > indexSize
Definition IVMSaveLoadInterface.h:32
Definition Stack.h:25
Definition IVMSaveLoadInterface.h:37
BSTScrapHashMap< BSFixedString, std::uint32_t > * referenceMap
Definition IVMSaveLoadInterface.h:41
void * unk00
Definition IVMSaveLoadInterface.h:40
stl::enumeration< StringIndexSize, std::int32_t > indexSize
Definition IVMSaveLoadInterface.h:42
Definition BSStorage.h:14
Definition BSTArray.h:377
Definition BSTHashMap.h:21
Definition LoadStorageWrapper.h:8
Definition SaveStorageWrapper.h:8
Definition SaveFileHandleReaderWriter.h:8
Definition PCH.h:223
StringIndexSize
Definition IVMSaveLoadInterface.h:12
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSScript__IVMSaveLoadInterface(691835, 399879, 0x1f7cc88)
std::uint32_t VMStackID
Definition BSCoreTypes.h:8
std::uint64_t VMHandle
Definition BSCoreTypes.h:7