CommonLibSSE NG
TESModel.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSFixedString.h"
5 
6 namespace RE
7 {
8  namespace BSResource
9  {
10  struct ID;
11  }
12 
13  class TESModelTextureSwap;
14 
15  class TESModel : public BaseFormComponent
16  {
17  public:
18  inline static constexpr auto RTTI = RTTI_TESModel;
19  inline static constexpr auto VTABLE = VTABLE_TESModel;
20 
21  ~TESModel() override; // 00
22 
23  // override (BaseFormComponent)
24  void InitializeDataComponent() override; // 01
25  void ClearDataComponent() override; // 02
26  void CopyComponent(BaseFormComponent* a_rhs) override; // 03
27 
28  // add
29  [[nodiscard]] virtual const char* GetModel() const; // 04 - { return model.c_str(); }
30  virtual void SetModel(const char* a_model); // 05 - { model = a_model; }
31  virtual TESModelTextureSwap* GetAsModelTextureSwap(); // 06 - { return 0; }
32 
33  // members
34  BSFixedString model; // 08 - MODL
35  BSResource::ID* textures; // 10 - MODT
36  std::uint32_t* addons; // 18
37  std::uint16_t numTextures; // 20
38  std::uint16_t numAddons; // 22
39  std::uint32_t pad24; // 24
40  };
41  static_assert(sizeof(TESModel) == 0x28);
42 }
Definition: BaseFormComponent.h:8
Definition: TESModelTextureSwap.h:10
Definition: TESModel.h:16
virtual TESModelTextureSwap * GetAsModelTextureSwap()
std::uint16_t numTextures
Definition: TESModel.h:37
static constexpr auto VTABLE
Definition: TESModel.h:19
BSFixedString model
Definition: TESModel.h:34
void InitializeDataComponent() override
std::uint32_t pad24
Definition: TESModel.h:39
static constexpr auto RTTI
Definition: TESModel.h:18
std::uint32_t * addons
Definition: TESModel.h:36
std::uint16_t numAddons
Definition: TESModel.h:38
virtual const char * GetModel() const
BSResource::ID * textures
Definition: TESModel.h:35
void CopyComponent(BaseFormComponent *a_rhs) override
void ClearDataComponent() override
~TESModel() override
virtual void SetModel(const char *a_model)
Definition: AbsorbEffect.h:6
constexpr std::array< REL::VariantID, 1 > VTABLE_TESModel
Definition: Offsets_VTABLE.h:324
constexpr REL::VariantID RTTI_TESModel(513857, 392225, 0x1ed6e70)
Definition: ID.h:10