CommonLibSSE (powerof3)
TESGlobal.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"
6 
7 namespace RE
8 {
9  class TESGlobal : public TESForm
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_TESGlobal;
13  inline static constexpr auto FORMTYPE = FormType::Global;
14 
15  enum class Type
16  {
17  kFloat = 'f',
18  kLong = 'l',
19  kShort = 's'
20  };
21 
22  struct RecordFlags
23  {
24  enum RecordFlag : std::uint32_t
25  {
26  kDeleted = 1 << 5,
27  kConstant = 1 << 6,
28  kIgnored = 1 << 12
29  };
30  };
31 
32  ~TESGlobal() override; // 00
33 
34  // override (TESform)
35  bool Load(TESFile* a_mod) override; // 06
36  const char* GetFormEditorID() const override; // 32 - { return formEditorID.c_str(); }
37  bool SetFormEditorID(const char* a_str) override; // 33 - { formEditorID = a_str; return true; }
38 
39  // members
40  BSString formEditorID; // 20 - EDID
42  std::uint8_t pad31; // 31
43  std::uint16_t pad32; // 32
44  float value; // 34 - FLTV
45  };
46  static_assert(sizeof(TESGlobal) == 0x38);
47 }
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: TESGlobal.h:10
static constexpr auto RTTI
Definition: TESGlobal.h:12
static constexpr auto FORMTYPE
Definition: TESGlobal.h:13
stl::enumeration< Type, std::uint8_t > type
Definition: TESGlobal.h:41
bool Load(TESFile *a_mod) override
BSString formEditorID
Definition: TESGlobal.h:40
bool SetFormEditorID(const char *a_str) override
const char * GetFormEditorID() const override
std::uint8_t pad31
Definition: TESGlobal.h:42
std::uint16_t pad32
Definition: TESGlobal.h:43
float value
Definition: TESGlobal.h:44
Type
Definition: TESGlobal.h:16
~TESGlobal() override
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_TESGlobal
Definition: Offsets_RTTI.h:5999
Definition: TESGlobal.h:23
RecordFlag
Definition: TESGlobal.h:25
@ kDeleted
Definition: TESGlobal.h:26
@ kConstant
Definition: TESGlobal.h:27
@ kIgnored
Definition: TESGlobal.h:28