CommonLibVR
BSFile.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/N/NiFile.h"
4 
5 #include "REX/W32/BASE.h"
6 
7 namespace RE
8 {
9  class BSFile : public NiFile
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_BSFile;
13  inline static constexpr auto VTABLE = VTABLE_BSFile;
14 
15  virtual ~BSFile(); // 00
16 
17  // override (NiFile)
18  virtual void seek(std::int32_t a_numBytes) override; // 02
19  virtual void set_endian_swap(bool a_doSwap) override; // 05
20  virtual void seek(std::int32_t a_offset, std::int32_t a_from) override; // 06
21  virtual std::uint32_t size() const override; // 07
22 
23  // add
24  virtual void Unk_08(void); // 08
25  virtual void Unk_09(void); // 09
26  virtual void Unk_0A(void); // 0A
27  virtual void Unk_0B(void); // 0B
28  virtual void Unk_0C(void); // 0C
29  virtual void Unk_0D(void); // 0D
30  virtual void Unk_0E(void); // 0E
31  virtual void Unk_0F(void); // 0F
32  virtual void Unk_10(void); // 10
33  virtual void Unk_11(void); // 11
34  virtual void Unk_12(void); // 12
35 
36  // members
37  bool useAuxBuffer; // 048
38  std::uint8_t pad049; // 049
39  std::uint16_t pad04A; // 04A
40  std::uint32_t pad04C; // 04C
41  char* auxBuffer; // 050
42  std::int32_t auxTrueFilePos; // 058
43  std::uint32_t auxBufferMinIndex; // 05C
44  std::uint32_t auxBufferMaxIndex; // 060
46  std::uint32_t result; // 168
47  std::uint32_t ioSize; // 16C
48  std::uint32_t trueFilePos; // 170
49  std::uint32_t fileSize; // 174
50  bool virtualAlloc; // 178
51  std::uint8_t unk179; // 179
52  std::uint16_t unk17A; // 17A
53  private:
54  KEEP_FOR_RE()
55  };
56  static_assert(sizeof(BSFile) == 0x180);
57 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BSFile.h:10
std::uint16_t unk17A
Definition: BSFile.h:52
virtual void Unk_0E(void)
virtual void Unk_0C(void)
std::uint32_t fileSize
Definition: BSFile.h:49
virtual void set_endian_swap(bool a_doSwap) override
std::uint16_t pad04A
Definition: BSFile.h:39
virtual void Unk_0B(void)
virtual void Unk_0D(void)
std::int32_t auxTrueFilePos
Definition: BSFile.h:42
bool useAuxBuffer
Definition: BSFile.h:37
std::uint32_t auxBufferMaxIndex
Definition: BSFile.h:44
char * auxBuffer
Definition: BSFile.h:41
std::uint32_t ioSize
Definition: BSFile.h:47
std::uint8_t unk179
Definition: BSFile.h:51
std::uint32_t pad04C
Definition: BSFile.h:40
bool virtualAlloc
Definition: BSFile.h:50
virtual ~BSFile()
virtual void Unk_12(void)
static constexpr auto RTTI
Definition: BSFile.h:12
std::uint8_t pad049
Definition: BSFile.h:38
virtual void seek(std::int32_t a_offset, std::int32_t a_from) override
virtual void Unk_0F(void)
virtual void seek(std::int32_t a_numBytes) override
std::uint32_t auxBufferMinIndex
Definition: BSFile.h:43
std::uint32_t result
Definition: BSFile.h:46
virtual void Unk_09(void)
char fileName[REX::W32::MAX_PATH]
Definition: BSFile.h:45
virtual void Unk_08(void)
static constexpr auto VTABLE
Definition: BSFile.h:13
virtual void Unk_11(void)
virtual void Unk_10(void)
virtual void Unk_0A(void)
virtual std::uint32_t size() const override
std::uint32_t trueFilePos
Definition: BSFile.h:48
Definition: NiFile.h:8
constexpr auto MAX_PATH
Definition: BASE.h:34
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BSFile
Definition: Offsets_VTABLE.h:9026
constexpr REL::ID RTTI_BSFile(static_cast< std::uint64_t >(690331))