CommonLibVR
LoadWaitSpinner.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTEvent.h"
4 #include "RE/G/GFxValue.h"
5 #include "RE/I/IMenu.h"
6 
7 namespace RE
8 {
9  class BSSystemEvent;
10  struct BGSSaveLoadManagerEvent;
11  struct BSGamerProfileEvent;
12 
13  // menuDepth = 10
14  // flags = kAlwaysOpen | kAllowSaving
15  // context = kNone
17  public IMenu, // 00
18  public BSTEventSink<BSSystemEvent>, // 30
19  public BSTEventSink<BSGamerProfileEvent>, // 38
20  public BSTEventSink<BGSSaveLoadManagerEvent> // 40
21  {
22  public:
23  inline static constexpr auto RTTI = RTTI_LoadWaitSpinner;
24  constexpr static std::string_view MENU_NAME = "LoadWaitSpinner";
25 
26  ~LoadWaitSpinner() override; // 00
27 
28  // override (IMenu)
29  void Accept(CallbackProcessor* a_processor) override; // 01 - { return; }
30  UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
31 
32  // override (BSTEventSink<BSSystemEvent>)
33  BSEventNotifyControl ProcessEvent(const BSSystemEvent* a_event, BSTEventSource<BSSystemEvent>* a_eventSource) override; // 01
34 
35  // override (BSTEventSink<BSGamerProfileEvent>)
36  BSEventNotifyControl ProcessEvent(const BSGamerProfileEvent* a_event, BSTEventSource<BSGamerProfileEvent>* a_eventSource) override; // 01
37 
38  // override (BSTEventSink<BGSSaveLoadManagerEvent>)
39  BSEventNotifyControl ProcessEvent(const BGSSaveLoadManagerEvent* a_event, BSTEventSource<BGSSaveLoadManagerEvent>* a_eventSource) override; // 01
40 
41  // members
42  GFxValue root; // 48 - "Menu_mc"
43  volatile std::int32_t unk60; // 60
44  bool fadeIn; // 64
45  std::uint8_t pad65; // 65
46  std::uint16_t pad66; // 66
47  private:
48  KEEP_FOR_RE()
49  };
50 #ifndef SKYRIMVR
51  static_assert(sizeof(LoadWaitSpinner) == 0x68);
52 #else
53  static_assert(sizeof(LoadWaitSpinner) == 0x78);
54 #endif
55 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BSTEvent.h:143
Definition: BSTEvent.h:19
Definition: FxDelegateHandler.h:20
Definition: GFxValue.h:92
Definition: IMenu.h:64
Definition: LoadWaitSpinner.h:21
constexpr static std::string_view MENU_NAME
Definition: LoadWaitSpinner.h:24
~LoadWaitSpinner() override
BSEventNotifyControl ProcessEvent(const BSSystemEvent *a_event, BSTEventSource< BSSystemEvent > *a_eventSource) override
void Accept(CallbackProcessor *a_processor) override
GFxValue root
Definition: LoadWaitSpinner.h:42
std::uint16_t pad66
Definition: LoadWaitSpinner.h:46
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
bool fadeIn
Definition: LoadWaitSpinner.h:44
BSEventNotifyControl ProcessEvent(const BSGamerProfileEvent *a_event, BSTEventSource< BSGamerProfileEvent > *a_eventSource) override
volatile std::int32_t unk60
Definition: LoadWaitSpinner.h:43
std::uint8_t pad65
Definition: LoadWaitSpinner.h:45
BSEventNotifyControl ProcessEvent(const BGSSaveLoadManagerEvent *a_event, BSTEventSource< BGSSaveLoadManagerEvent > *a_eventSource) override
static constexpr auto RTTI
Definition: LoadWaitSpinner.h:23
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_LoadWaitSpinner(static_cast< std::uint64_t >(686468))
UI_MESSAGE_RESULTS
Definition: IMenu.h:49
BSEventNotifyControl
Definition: BSTEvent.h:12