CommonLibSSE (powerof3)
BGSMaterialObject.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include "RE/B/BSString.h"
5 #include "RE/B/BSTArray.h"
6 #include "RE/F/FormTypes.h"
7 #include "RE/T/TESForm.h"
8 #include "RE/T/TESModel.h"
9 
10 namespace RE
11 {
13  public TESForm, // 00
14  public TESModel, // 20
15  public BSMaterialObject // 48
16  {
17  public:
18  inline static constexpr auto RTTI = RTTI_BGSMaterialObject;
19  inline static constexpr auto FORMTYPE = FormType::MaterialObject;
20 
21  struct RecordFlags
22  {
23  enum RecordFlag : std::uint32_t
24  {
25  kDeleted = 1 << 5,
26  kIgnored = 1 << 12
27  };
28  };
29 
30  struct FILE_DATA
31  {
32  char* buffer; // 00
33  std::uint32_t bufferSize; // 08
34  std::uint32_t pad0C; // 0C
35  };
36  static_assert(sizeof(FILE_DATA) == 0x10);
37 
38  ~BGSMaterialObject() override; // 00
39 
40  // override (TESForm)
41  void ClearData() override; // 05
42  bool Load(TESFile* a_mod) override; // 06
43 
44  // override (BSMaterialObject)
45  void EnsureLoaded() override; // 01
46 
47  // members
49  };
50  static_assert(sizeof(BGSMaterialObject) == 0xB8);
51 }
Definition: BGSMaterialObject.h:16
void ClearData() override
static constexpr auto FORMTYPE
Definition: BGSMaterialObject.h:19
bool Load(TESFile *a_mod) override
~BGSMaterialObject() override
void EnsureLoaded() override
BSTArray< FILE_DATA > fileData
Definition: BGSMaterialObject.h:48
static constexpr auto RTTI
Definition: BGSMaterialObject.h:18
Definition: BSMaterialObject.h:13
Definition: BSTArray.h:377
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: TESModel.h:16
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSMaterialObject
Definition: Offsets_RTTI.h:1326
Definition: BGSMaterialObject.h:31
char * buffer
Definition: BGSMaterialObject.h:32
std::uint32_t bufferSize
Definition: BGSMaterialObject.h:33
std::uint32_t pad0C
Definition: BGSMaterialObject.h:34
Definition: BGSMaterialObject.h:22
RecordFlag
Definition: BGSMaterialObject.h:24
@ kDeleted
Definition: BGSMaterialObject.h:25
@ kIgnored
Definition: BGSMaterialObject.h:26