CommonLibVR
TESObjectANIO.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSString.h"
4 #include "RE/F/FormTypes.h"
5 #include "RE/T/TESForm.h"
7 
8 namespace RE
9 {
10  class TESObjectANIO :
11  public TESForm, // 00
12  public TESModelTextureSwap // 20
13  {
14  public:
15  inline static constexpr auto RTTI = RTTI_TESObjectANIO;
16  inline static constexpr auto VTABLE = VTABLE_TESObjectANIO;
17  inline static constexpr auto FORMTYPE = FormType::AnimatedObject;
18 
19  struct RecordFlags
20  {
21  enum RecordFlag : std::uint32_t
22  {
23  kDeleted = 1 << 5,
24  kIgnored = 1 << 12
25  };
26  };
27 
28  ~TESObjectANIO() override; // 00
29 
30  // override (TESForm)
31  bool Load(TESFile* a_mod) override; // 06
32  void InitItemImpl() override; // 13
33  const char* GetFormEditorID() const override; // 32 - { return formEditorID.c_str(); }
34  bool SetFormEditorID(const char* a_str) override; // 33 - { if (formEditorID == a_str) return false; formEditorID = a_str; return true; }
35 
36  // members
39  private:
40  KEEP_FOR_RE()
41  };
42  static_assert(sizeof(TESObjectANIO) == 0x68);
43 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: TESFile.h:17
Definition: TESForm.h:40
Definition: TESModelTextureSwap.h:10
Definition: TESObjectANIO.h:13
bool SetFormEditorID(const char *a_str) override
BSFixedString unloadEventName
Definition: TESObjectANIO.h:38
~TESObjectANIO() override
const char * GetFormEditorID() const override
static constexpr auto VTABLE
Definition: TESObjectANIO.h:16
BSFixedString formEditorID
Definition: TESObjectANIO.h:37
bool Load(TESFile *a_mod) override
void InitItemImpl() override
static constexpr auto FORMTYPE
Definition: TESObjectANIO.h:17
static constexpr auto RTTI
Definition: TESObjectANIO.h:15
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 2 > VTABLE_TESObjectANIO
Definition: Offsets_VTABLE.h:12857
constexpr REL::ID RTTI_TESObjectANIO(static_cast< std::uint64_t >(513975))
Definition: TESObjectANIO.h:20
RecordFlag
Definition: TESObjectANIO.h:22
@ kDeleted
Definition: TESObjectANIO.h:23
@ kIgnored
Definition: TESObjectANIO.h:24