CommonLibSSE NG
CompiledScriptLoader.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTSmartPointer.h"
4 #include "RE/I/ILoader.h"
6 
7 namespace RE
8 {
9  namespace BSScript
10  {
11  class ErrorLogger;
12  class IStore;
13 
15  {
16  public:
17  inline static constexpr auto RTTI = RTTI_BSScript__CompiledScriptLoader;
18  inline static constexpr auto VTABLE = VTABLE_BSScript__CompiledScriptLoader;
19 
20  ~CompiledScriptLoader() override; // 00
21 
22  // override (ILoader)
23  ILoader* Clone() override; // 01
24  void SetScriptStore(const BSTSmartPointer<IStore>& a_store) override; // 02
25  bool GetClass(const char* a_name, BSScript::UnlinkedTypes::Object& a_object) override; // 03
26 
27  // members
30  ReadableStringTable readableStringTable; // 18 - This gets filled and cleared each time reading from a script
31  std::byte majorVersion; // 30 - Set each time reading from a script
32  std::byte minorVersion; // 31 - Set each time reading from a script
33  std::byte loadDebugInfo: 1; // 32 - Set to INI setting `Papyrus::bLoadDebugInformation` in the constructor
34  std::byte loadDocStrings: 1; // 32 - Never set true in vanilla, requires loadDebugInfo = 1 to work
35  };
36  static_assert(sizeof(CompiledScriptLoader) == 0x38);
37  }
38 }
Definition: CompiledScriptLoader.h:15
bool GetClass(const char *a_name, BSScript::UnlinkedTypes::Object &a_object) override
std::byte minorVersion
Definition: CompiledScriptLoader.h:32
static constexpr auto RTTI
Definition: CompiledScriptLoader.h:17
BSTSmartPointer< IStore > scriptStore
Definition: CompiledScriptLoader.h:29
ReadableStringTable readableStringTable
Definition: CompiledScriptLoader.h:30
std::byte loadDebugInfo
Definition: CompiledScriptLoader.h:33
std::byte loadDocStrings
Definition: CompiledScriptLoader.h:34
void SetScriptStore(const BSTSmartPointer< IStore > &a_store) override
static constexpr auto VTABLE
Definition: CompiledScriptLoader.h:18
std::byte majorVersion
Definition: CompiledScriptLoader.h:31
ErrorLogger * errorHandler
Definition: CompiledScriptLoader.h:28
Definition: ErrorLogger.h:13
Definition: IVMSaveLoadInterface.h:18
Definition: UnlinkedTypes.h:179
Definition: BSTSmartPointer.h:36
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSScript__CompiledScriptLoader(691843, 399887, 0x1f7d330)
constexpr std::array< REL::VariantID, 1 > VTABLE_BSScript__CompiledScriptLoader
Definition: Offsets_VTABLE.h:7053
Definition: ILoader.h:13