CommonLibSSE NG
TESEyes.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/F/FormTypes.h"
4 #include "RE/T/TESForm.h"
5 #include "RE/T/TESFullName.h"
6 #include "RE/T/TESTexture.h"
7 
8 namespace RE
9 {
10  class TESEyes :
11  public TESForm, // 00
12  public TESFullName, // 20
13  public TESTexture // 30
14  {
15  public:
16  inline static constexpr auto RTTI = RTTI_TESEyes;
17  inline static constexpr auto VTABLE = VTABLE_TESEyes;
18  inline static constexpr auto FORMTYPE = FormType::Eyes;
19 
20  enum class Flag
21  {
22  kNone = 0,
23  kPlayable = 1 << 0,
24  kNotMale = 1 << 1,
25  kNotFemale = 1 << 2
26  };
27 
28  struct RecordFlags
29  {
30  enum RecordFlag : std::uint32_t
31  {
32  kNonPlayable = 1 << 2,
33  kDeleted = 1 << 5,
34  kIgnored = 1 << 12
35  };
36  };
37 
38  ~TESEyes() override; // 00
39 
40  // override (TESForm)
41  void InitializeData() override; // 04 - { flags = 0; }
42  bool Load(TESFile* a_mod) override; // 06 - { return true; }
43 
44  // members
46  std::uint8_t pad41; // 41
47  std::uint16_t pad42; // 42
48  std::uint32_t pad44; // 44
49  };
50  static_assert(sizeof(TESEyes) == 0x48);
51 }
Definition: TESEyes.h:14
void InitializeData() override
std::uint32_t pad44
Definition: TESEyes.h:48
std::uint16_t pad42
Definition: TESEyes.h:47
static constexpr auto RTTI
Definition: TESEyes.h:16
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESEyes.h:45
static constexpr auto VTABLE
Definition: TESEyes.h:17
~TESEyes() override
static constexpr auto FORMTYPE
Definition: TESEyes.h:18
bool Load(TESFile *a_mod) override
std::uint8_t pad41
Definition: TESEyes.h:46
Flag
Definition: TESEyes.h:21
Definition: TESFile.h:17
Definition: TESForm.h:36
Definition: TESFullName.h:9
Definition: TESTexture.h:10
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_TESEyes(513917, 392540, 0x1edaaa0)
constexpr std::array< REL::VariantID, 3 > VTABLE_TESEyes
Definition: Offsets_VTABLE.h:920
Definition: TESEyes.h:29
RecordFlag
Definition: TESEyes.h:31
@ kIgnored
Definition: TESEyes.h:34
@ kDeleted
Definition: TESEyes.h:33
@ kNonPlayable
Definition: TESEyes.h:32