CommonLibSSE (powerof3)
SkyrimScriptStore.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSFixedString.h"
4 #include "RE/I/IStore.h"
5 
6 namespace RE
7 {
8  namespace BSResource
9  {
10  class Stream;
11  }
12 
13  namespace SkyrimScript
14  {
15  class Store : public BSScript::IStore
16  {
17  public:
18  inline static constexpr auto RTTI = RTTI_SkyrimScript__Store;
19  inline static constexpr auto VTABLE = VTABLE_SkyrimScript__Store;
20 
21  ~Store() override; // 00
22 
23  // override (BSScript::IStore)
24  std::size_t GetSize() const override; // 01
25  std::size_t GetPosition() const override; // 02
26  BSStorageDefs::ErrorCode Seek(std::size_t a_offset, BSStorageDefs::SeekMode a_seekMode) const override; // 03
27  BSStorageDefs::ErrorCode Read(std::size_t a_numBytes, std::byte* a_bytes) const override; // 04
28  bool Open(const char* a_fileName) override; // 06
29  void Close(void) override; // 07
30  const BSFixedString& GetRelPath() override; // 08 - { return relPath; }
31  bool HasOpenFile() override; // 09 - { return hasOpenFile; }
32  bool FileIsGood() override; // 0A - { return fileIsGood; }
33  void Unk_0B(void) override; // 0B
34 
35  // members
36  std::uint64_t unk20; // 20
39  bool hasOpenFile; // 38
40  bool fileIsGood; // 39
41  std::uint16_t pad3A; // 3A
42  std::uint32_t pad3C; // 3C
43  };
44  static_assert(sizeof(Store) == 0x40);
45  }
46 }
Definition: Stream.h:21
Definition: IStore.h:11
Definition: SkyrimScriptStore.h:16
static constexpr auto VTABLE
Definition: SkyrimScriptStore.h:19
bool hasOpenFile
Definition: SkyrimScriptStore.h:39
std::size_t GetSize() const override
BSStorageDefs::ErrorCode Read(std::size_t a_numBytes, std::byte *a_bytes) const override
std::uint64_t unk20
Definition: SkyrimScriptStore.h:36
BSFixedString relPath
Definition: SkyrimScriptStore.h:38
bool HasOpenFile() override
static constexpr auto RTTI
Definition: SkyrimScriptStore.h:18
std::size_t GetPosition() const override
std::uint32_t pad3C
Definition: SkyrimScriptStore.h:42
BSStorageDefs::ErrorCode Seek(std::size_t a_offset, BSStorageDefs::SeekMode a_seekMode) const override
void Close(void) override
bool fileIsGood
Definition: SkyrimScriptStore.h:40
bool FileIsGood() override
void Unk_0B(void) override
std::uint16_t pad3A
Definition: SkyrimScriptStore.h:41
bool Open(const char *a_fileName) override
const BSFixedString & GetRelPath() override
BSResource::Stream * stream
Definition: SkyrimScriptStore.h:37
ErrorCode
Definition: ErrorCodes.h:8
SeekMode
Definition: Stream.h:14
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_SkyrimScript__Store(static_cast< std::uint64_t >(689050))
constexpr std::array< REL::ID, 1 > VTABLE_SkyrimScript__Store
Definition: Offsets_VTABLE.h:12694