CommonLibVR
HUDObject.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/G/GFxValue.h"
4 #include "RE/G/GPtr.h"
5 #include "RE/M/MemoryManager.h"
6 
7 namespace RE
8 {
9  class FxDelegateArgs;
10  class GFxMovieView;
11  class UIMessage;
12 
13  class HUDObject
14  {
15  public:
16  inline static constexpr auto RTTI = RTTI_HUDObject;
17  inline static constexpr auto VTABLE = VTABLE_HUDObject;
18 
20  {
21  enum HudComponent : std::uint32_t
22  {
23  kThis = 0,
33  };
34  };
36 
38  virtual ~HUDObject(); // 00
39 
40  // add
41  virtual void Update() = 0; // 01
42  virtual bool ProcessMessage(UIMessage* a_message); // 02 - { return false; }
43  virtual void RegisterHUDComponent(FxDelegateArgs& a_params); // 03 - { root = a_params[0]; }
44  virtual void CleanUp(); // 04 - { return; }
45 
47 
48  // members
50  GFxValue root; // 10 - kDisplayObject - "_level0.HUDMovieBaseInstance"
51  private:
52  KEEP_FOR_RE()
53  };
54  static_assert(sizeof(HUDObject) == 0x28);
55 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: FxDelegateArgs.h:12
Definition: GFxMovieView.h:24
Definition: GFxValue.h:92
Definition: GPtr.h:7
Definition: HUDObject.h:14
HUDObject(GFxMovieView *a_view)
GFxValue root
Definition: HUDObject.h:50
virtual ~HUDObject()
static constexpr auto RTTI
Definition: HUDObject.h:16
virtual bool ProcessMessage(UIMessage *a_message)
virtual void CleanUp()
virtual void Update()=0
virtual void RegisterHUDComponent(FxDelegateArgs &a_params)
GPtr< GFxMovieView > view
Definition: HUDObject.h:49
static constexpr auto VTABLE
Definition: HUDObject.h:17
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_HUDObject(static_cast< std::uint64_t >(688834))
constexpr std::array< REL::ID, 1 > VTABLE_HUDObject
Definition: Offsets_VTABLE.h:11736
Definition: HUDObject.h:20
HudComponent
Definition: HUDObject.h:22
@ kSneakTextInstance
Definition: HUDObject.h:32
@ kSneakTextHolder
Definition: HUDObject.h:31
@ kBracketsInstance
Definition: HUDObject.h:29
@ kRolloverNameInstance
Definition: HUDObject.h:30
@ kStealthMeterInstance
Definition: HUDObject.h:27
@ kHudElements
Definition: HUDObject.h:24
@ kThis
Definition: HUDObject.h:23
@ kEnemyHealthMeter
Definition: HUDObject.h:26
@ kSneakAnimInstance
Definition: HUDObject.h:28
@ kQuestUpdateBaseInstance
Definition: HUDObject.h:25