CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
MainMenu.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSTEvent.h"
5#include "RE/I/IMenu.h"
6#include "RE/I/ImageData.h"
7
8namespace RE
9{
10 class BSSaveDataEvent;
11 class BSSystemEvent;
12
13 // menuDepth = 0
14 // flags = kPausesGame | kDisablePauseMenu | kRequiresUpdate | kUpdateUsesCursor | kApplicationMenu
15 // context = kMenuMode
16 class MainMenu :
17 public IMenu, // 00
18 public BSTEventSink<BSSystemEvent>, // 30
19 public BSTEventSink<BSSaveDataEvent>, // 38
20 public GFxFunctionHandler // 40
21 {
22 public:
23 inline static constexpr auto RTTI = RTTI_MainMenu;
24 constexpr static std::string_view MENU_NAME = "Main Menu";
25
26 ~MainMenu() override; // 00
27
28 // override (IMenu)
29 void Accept(CallbackProcessor* a_processor) override; // 01
30 UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
31 void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override; // 05
32
33 // override (BSTEventSink<BSSystemEvent>)
34 BSEventNotifyControl ProcessEvent(const BSSystemEvent* a_event, BSTEventSource<BSSystemEvent>* a_eventSource) override; // 01
35
36 // override (BSTEventSink<BSSaveDataEvent>)
37 BSEventNotifyControl ProcessEvent(const BSSaveDataEvent* a_event, BSTEventSource<BSSaveDataEvent>* a_eventSource) override; // 01
38
39 // override (GFxFunctionHandler)
40 void Call(Params& a_params) override; // 01
41
42 // members
44 std::uint32_t unk68; // 68
45 std::uint8_t unk6C; // 6C
46 std::uint8_t unk6D; // 6D
47 std::uint8_t unk6E; // 6E
48 std::uint8_t pad6F; // 6F
49 };
50#ifndef SKYRIMVR
51 static_assert(sizeof(MainMenu) == 0x70);
52#else
53 //static_assert(sizeof(MainMenu) == 0x88);
54#endif
55}
Definition: BSTEvent.h:146
Definition: BSTEvent.h:28
Definition: FxDelegateHandler.h:19
Definition: GFxFunctionHandler.h:12
Definition: IMenu.h:55
Definition: MainMenu.h:21
BSEventNotifyControl ProcessEvent(const BSSaveDataEvent *a_event, BSTEventSource< BSSaveDataEvent > *a_eventSource) override
std::uint8_t pad6F
Definition: MainMenu.h:48
std::uint8_t unk6D
Definition: MainMenu.h:46
static constexpr auto RTTI
Definition: MainMenu.h:23
void Accept(CallbackProcessor *a_processor) override
BSEventNotifyControl ProcessEvent(const BSSystemEvent *a_event, BSTEventSource< BSSystemEvent > *a_eventSource) override
~MainMenu() override
ImageData unk50
Definition: MainMenu.h:43
std::uint8_t unk6C
Definition: MainMenu.h:45
void Call(Params &a_params) override
void AdvanceMovie(float a_interval, std::uint32_t a_currentTime) override
std::uint32_t unk68
Definition: MainMenu.h:44
static constexpr std::string_view MENU_NAME
Definition: MainMenu.h:24
std::uint8_t unk6E
Definition: MainMenu.h:47
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
UI_MESSAGE_RESULTS
Definition: IMenu.h:48
constexpr REL::ID RTTI_MainMenu
Definition: Offsets_RTTI.h:5141
BSEventNotifyControl
Definition: BSTEvent.h:12
Definition: GFxFunctionHandler.h:17
Definition: ImageData.h:8