CommonLibSSE NG
Loading...
Searching...
No Matches
GFxMovieRoot.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/G/GColor.h"
5#include "RE/G/GFxMovieView.h"
6
7namespace RE
8{
9 class GFxSprite;
10
12 {
13 public:
14 };
15 static_assert(sizeof(GFxActionPriority) == 0x1);
16
18 public GFxMovieView, // 0000
19 public GFxActionPriority // 0018
20 {
21 public:
22 enum class Flag
23 {
24 kNone = 0,
25 kDirty = 1 << 10,
26 kMovieFocused = 1 << 18,
27 kPaused = 1 << 20
28 };
29
30 ~GFxMovieRoot() override; // 00
31
32 // override (GFxMovieView)
33 GFxMovieDef* GetMovieDef() const override; // 01 - Obtains the movie definition that created this instance.
34 std::uint32_t GetCurrentFrame() const override; // 02 - Obtains the currently active frame of the movie, starting with 0.
35 bool HasLooped() const override; // 03 - Determines whether the movie clip has looped past its last frame.
36 void GotoFrame(std::uint32_t a_frameNumber) override; // 04 - Moves a playhead to a specified frame.
37 bool GotoLabeledFrame(const char* a_label, std::int32_t a_offset = 0) override; // 05 - Moves a playhead to a specified frame identified by a label.
38 void SetPlayState(PlayState a_state) override; // 06 - Changes playback state of the movie, allowing animation to be paused and resumed.
39 PlayState GetPlayState() const override; // 07 - Obtains the play state of the movie clip, currently either Playing or Stopped.
40 void SetVisible(bool a_visible) override; // 08 - Sets the visibility state of a movie clip.
41 bool GetVisible() const override; // 09 - Obtains the visibility state of a movie clip.
42 bool IsAvailable(const char* a_pathToVar) const override; // 0A - Checks for availability of a field, method, or nested clip.
43 void CreateString(GFxValue* a_value, const char* a_string) override; // 0B - Creates strings that are managed by ActionScript runtime.
44 void CreateStringW(GFxValue* a_value, const wchar_t* a_string) override; // 0C - Creates wide character strings that are managed by ActionScript runtime.
45 void CreateObject(GFxValue* a_value, const char* a_className = 0, const GFxValue* a_args = 0, std::uint32_t a_numArgs = 0) override; // 0D - Creates an instance of ActionScript Object.
46 void CreateArray(GFxValue* a_value) override; // 0E - Creates an instance of an ActionScript Array object.
47 void CreateFunction(GFxValue* a_value, GFxFunctionHandler* a_fc, void* a_userData = 0) override; // 0F - Creates a function object that wraps a C++ function.
48 bool SetVariable(const char* a_pathToVar, const GFxValue& a_value, SetVarType a_setType = SetVarType::kSticky) override; // 10 - Sets a variable identified by a path to a new value, specified in UTF-8 encoding.
49 bool GetVariable(GFxValue* a_val, const char* a_pathToVar) const override; // 11 - Obtains the value of an ActionScript variable based on its path.
50 bool SetVariableArray(SetArrayType a_type, const char* a_pathToVar, std::uint32_t a_index, const void* a_data, std::uint32_t a_count, SetVarType a_setType = SetVarType::kSticky) const override; // 12 - Sets array elements in specified range to data items of specified type.
51 bool SetVariableArraySize(const char* a_pathToVar, std::uint32_t a_count, SetVarType a_setType = SetVarType::kSticky) override; // 13 - Sets the size of the array.
52 std::uint32_t GetVariableArraySize(const char* a_pathToVar) override; // 14 - Returns the size of array buffer necessary for GetVariableArray.
53 bool GetVariableArray(SetArrayType a_type, const char* a_pathToVar, std::uint32_t a_index, void* a_data, std::uint32_t a_count) override; // 15 - Populates a buffer with results from an ActionScript array.
54 bool Invoke(const char* a_methodName, GFxValue* a_result, const GFxValue* a_args, std::uint32_t a_numArgs) override; // 16 - Calls an ActionScript method on the movie clip.
55 bool InvokeFmt(const char* a_methodName, GFxValue* a_result, const char* a_argFmt, ...) override; // 17 - Calls an ActionScript method on the movie clip.
56 bool InvokeArgs(const char* a_methodName, GFxValue* a_result, const char* a_argFmt, std::va_list a_args) override; // 18 - Invokes an ActionScript method on the movie clip using a format string followed by a variable argument list.
57 void SetViewport(const GViewport& a_viewDesc) override; // 19 - Sets the render-target surface viewport to which the movie is scaled.
58 void GetViewport(GViewport* a_viewDesc) const override; // 1A - Obtains the render-target surface viewport to which the movie is scaled.
59 void SetViewScaleMode(ScaleModeType a_type) override; // 1B - Sets the current scale mode for the movie.
60 ScaleModeType GetViewScaleMode() const override; // 1C - Obtains the current scale mode for the movie.
61 void SetViewAlignment(AlignType a_type) override; // 1D - Sets the current alignment mode for the movie.
62 AlignType GetViewAlignment() const override; // 1E - Gets the current alignment mode for the movie.
63 GRectF GetVisibleFrameRect() const override; // 1F - Obtains the currently visible rectangle.
64 void SetPerspective3D(const GMatrix3D& a_projMatIn) override; // 20
65 void SetView3D(const GMatrix3D& a_viewMatIn) override; // 21
66 GRectF GetSafeRect() const override; // 22
67 void SetSafeRect(const GRectF& a_rect) override; // 23
68 void Restart() override; // 24
69 float Advance(float a_deltaT, std::uint32_t a_frameCatchUpCount = 2) override; // 25
70 void Display() override; // 26
71 void DisplayPrePass() override; // 27
72 void SetPause(bool a_pause) override; // 28
73 bool IsPaused() const override; // 29
74 void SetBackgroundColor(const GColor a_bgColor) override; // 2A
75 void SetBackgroundAlpha(float a_alpha) override; // 2B
76 float GetBackgroundAlpha() const override; // 2C
77 HEResult HandleEvent(const GFxEvent& a_event) override; // 2D
78 void GetMouseState(std::uint32_t a_mouseIndex, float* a_x, float* a_y, std::uint32_t* a_buttons) override; // 2E
79 void NotifyMouseState(float a_x, float a_y, std::uint32_t a_buttons, std::uint32_t a_mouseIndex = 0) override; // 2F
80 bool HitTest(float a_x, float a_y, HitTestType a_testCond = HitTestType::kShapes, std::uint32_t a_controllerIdx = 0) override; // 30
81 bool HitTest3D(GPoint3F* a_ptOut, float a_x, float a_y, std::uint32_t a_controllerIdx = 0) override; // 31
82 void SetExternalInterfaceRetVal(const GFxValue& a_val) override; // 32
83 void* GetUserData() const override; // 33
84 void SetUserData(void* a_data) override; // 34
85 bool AttachDisplayCallback(const char* a_pathToObject, void (*a_callback)(void* a_user), void* a_user) override; // 35
86 bool IsMovieFocused() const override; // 36
87 bool GetDirtyFlag(bool a_doReset = true) override; // 37
88 void SetMouseCursorCount(std::uint32_t a_count) override; // 38
89 std::uint32_t GetMouseCursorCount() const override; // 39
90 void SetControllerCount(std::uint32_t a_count) override; // 3A
91 std::uint32_t GetControllerCount() const override; // 3B
92 void GetStats(GStatBag* a_bag, bool a_reset = true) override; // 3C
93 GMemoryHeap* GetHeap() const override; // 3D
94 void ForceCollectGarbage() override; // 3E
95 GPointF TranslateToScreen(const GPointF& a_p, void* a_userMatrix) override; // 3F
96 GRectF TranslateToScreen(const GRectF& a_p, void* a_userMatrix) override; // 40
97 bool TranslateLocalToScreen(const char* a_pathToCharacter, const GPointF& a_pt, GPointF* a_presPt, void* a_userMatrix) override; // 41
98 bool SetControllerFocusGroup(std::uint32_t a_controllerIdx, std::uint32_t a_focusGroupIndex) override; // 42
99 std::uint32_t GetControllerFocusGroup(std::uint32_t a_controllerIdx) const override; // 43
101 void Release() override; // 45
102
103 // add
104 virtual void Unk_46(void); // 46
105 virtual void Unk_47(void); // 47
106 virtual void Unk_48(void); // 48
107
108 // members
109 std::uint64_t unk0020; // 0020
111 std::uint64_t unk0030; // 0030
113 std::uint64_t unk0040; // 0040
114 std::uint64_t unk0048; // 0048
115 std::uint64_t unk0050; // 0050
118 std::uint64_t unk0068; // 0068
119 std::uint64_t unk0070; // 0070
121 std::uint64_t unk00B0; // 00B0
122 std::uint64_t unk00B8; // 00B8
126 std::uint64_t unk00D8; // 00D8
128 std::uint64_t unk00F0; // 00F0
129 std::uint64_t unk00F8; // 00F8
131 std::uint64_t unk0108; // 0108
132 std::uint64_t unk0110; // 0110
133 std::uint64_t unk0118[(0x09A0 - 0x0118) >> 3]; // 0118
135 std::uint32_t unk09A4; // 09A4
136 std::uint64_t unk09A8[(0x0A68 - 0x09A8) >> 3]; // 09A8
137 std::uint32_t mouseCursorCount; // 0A68
138 std::uint32_t controllerCount; // 0A6C
139 void* userData; // 0A70
140 std::uint64_t unk0A78; // 0A78
142 std::uint64_t unk1108[(0x24A0 - 0x1108) >> 3]; // 1108
144 std::uint64_t unk24A8[(0x25E0 - 0x24A8) >> 3]; // 1108
146 std::uint32_t unk25E4; // 25E4
147 std::uint64_t unk25E8[(0x2B48 - 0x25E8) >> 3]; // 25E8
148 std::uint32_t focusGroup; // 2B48
149 std::uint8_t controllerGroups[16]; // 2B4C
150 std::uint32_t unk2B54; // 2B54
151 std::uint64_t unk2B58[(0x2BE8 - 0x2B58) >> 3]; // 2B58
152 };
153#ifndef __INTELLISENSE__
154 static_assert(sizeof(GFxMovieRoot) == 0x2BF0);
155#endif
156}
Definition GASGlobalContext.h:15
Definition GColor.h:6
Definition GFxMovieRoot.h:12
Definition GFxEvent.h:11
Definition GFxFunctionHandler.h:12
Definition GFxKeyboardState.h:14
Definition GFxMovieDef.h:62
Definition GFxMovieDef.h:70
Definition GFxMovieDef.h:21
SetArrayType
Definition GFxMovie.h:32
SetVarType
Definition GFxMovie.h:24
PlayState
Definition GFxMovie.h:17
Definition GFxMovieRoot.h:20
void CreateFunction(GFxValue *a_value, GFxFunctionHandler *a_fc, void *a_userData=0) override
GFxMovieDef::MemoryContextImpl * memoryContext
Definition GFxMovieRoot.h:110
GViewport unk0078
Definition GFxMovieRoot.h:120
void SetViewport(const GViewport &a_viewDesc) override
bool Invoke(const char *a_methodName, GFxValue *a_result, const GFxValue *a_args, std::uint32_t a_numArgs) override
void DisplayPrePass() override
std::uint64_t unk00D8
Definition GFxMovieRoot.h:126
std::uint32_t mouseCursorCount
Definition GFxMovieRoot.h:137
void SetViewAlignment(AlignType a_type) override
bool GotoLabeledFrame(const char *a_label, std::int32_t a_offset=0) override
GPointF TranslateToScreen(const GPointF &a_p, void *a_userMatrix) override
void SetMouseCursorCount(std::uint32_t a_count) override
virtual void Unk_47(void)
bool TranslateLocalToScreen(const char *a_pathToCharacter, const GPointF &a_pt, GPointF *a_presPt, void *a_userMatrix) override
bool AttachDisplayCallback(const char *a_pathToObject, void(*a_callback)(void *a_user), void *a_user) override
std::uint64_t unk0068
Definition GFxMovieRoot.h:118
std::uint32_t focusGroup
Definition GFxMovieRoot.h:148
bool GetVariable(GFxValue *a_val, const char *a_pathToVar) const override
std::uint64_t unk0050
Definition GFxMovieRoot.h:115
void SetExternalInterfaceRetVal(const GFxValue &a_val) override
GFxMovieDef * GetMovieDef() const override
void SetUserData(void *a_data) override
bool GetVariableArray(SetArrayType a_type, const char *a_pathToVar, std::uint32_t a_index, void *a_data, std::uint32_t a_count) override
bool HitTest(float a_x, float a_y, HitTestType a_testCond=HitTestType::kShapes, std::uint32_t a_controllerIdx=0) override
std::uint32_t unk2B54
Definition GFxMovieRoot.h:150
void SetSafeRect(const GRectF &a_rect) override
void Release() override
std::uint64_t unk0040
Definition GFxMovieRoot.h:113
GMemoryHeap * heap
Definition GFxMovieRoot.h:112
bool SetVariableArray(SetArrayType a_type, const char *a_pathToVar, std::uint32_t a_index, const void *a_data, std::uint32_t a_count, SetVarType a_setType=SetVarType::kSticky) const override
void CreateArray(GFxValue *a_value) override
GASGlobalContext * globalContext
Definition GFxMovieRoot.h:143
bool GetVisible() const override
GMatrix3D * perspective3D
Definition GFxMovieRoot.h:130
void SetViewScaleMode(ScaleModeType a_type) override
bool HasLooped() const override
std::uint8_t controllerGroups[16]
Definition GFxMovieRoot.h:149
void * GetUserData() const override
float Advance(float a_deltaT, std::uint32_t a_frameCatchUpCount=2) override
ScaleModeType GetViewScaleMode() const override
std::uint64_t unk2B58[(0x2BE8 - 0x2B58) > > 3]
Definition GFxMovieRoot.h:151
void SetPerspective3D(const GMatrix3D &a_projMatIn) override
AlignType viewAlignment
Definition GFxMovieRoot.h:124
GRectF GetSafeRect() const override
float GetBackgroundAlpha() const override
std::uint64_t unk09A8[(0x0A68 - 0x09A8) > > 3]
Definition GFxMovieRoot.h:136
void * userData
Definition GFxMovieRoot.h:139
std::uint64_t unk0110
Definition GFxMovieRoot.h:132
std::uint32_t GetControllerFocusGroup(std::uint32_t a_controllerIdx) const override
GRectF safeRect
Definition GFxMovieRoot.h:127
void SetControllerCount(std::uint32_t a_count) override
std::uint64_t unk00B0
Definition GFxMovieRoot.h:121
std::uint64_t unk0048
Definition GFxMovieRoot.h:114
void SetView3D(const GMatrix3D &a_viewMatIn) override
void SetPlayState(PlayState a_state) override
std::uint64_t unk00F0
Definition GFxMovieRoot.h:128
GMemoryHeap * GetHeap() const override
GRectF TranslateToScreen(const GRectF &a_p, void *a_userMatrix) override
void GotoFrame(std::uint32_t a_frameNumber) override
HEResult HandleEvent(const GFxEvent &a_event) override
~GFxMovieRoot() override
GFxSprite * timeline
Definition GFxMovieRoot.h:116
std::uint32_t GetCurrentFrame() const override
GFxMovieDef::MemoryContext * GetMemoryContext() const override
std::uint32_t unk25E4
Definition GFxMovieRoot.h:146
void GetStats(GStatBag *a_bag, bool a_reset=true) override
GFxMovieDef * movieDef
Definition GFxMovieRoot.h:117
std::uint64_t unk24A8[(0x25E0 - 0x24A8) > > 3]
Definition GFxMovieRoot.h:144
std::uint64_t unk0020
Definition GFxMovieRoot.h:109
bool HitTest3D(GPoint3F *a_ptOut, float a_x, float a_y, std::uint32_t a_controllerIdx=0) override
std::uint32_t GetControllerCount() const override
GRectF GetVisibleFrameRect() const override
std::uint64_t unk1108[(0x24A0 - 0x1108) > > 3]
Definition GFxMovieRoot.h:142
std::uint64_t unk0118[(0x09A0 - 0x0118) > > 3]
Definition GFxMovieRoot.h:133
AlignType GetViewAlignment() const override
bool SetControllerFocusGroup(std::uint32_t a_controllerIdx, std::uint32_t a_focusGroupIndex) override
void GetMouseState(std::uint32_t a_mouseIndex, float *a_x, float *a_y, std::uint32_t *a_buttons) override
GFxKeyboardState keyboardState
Definition GFxMovieRoot.h:141
std::uint64_t unk0070
Definition GFxMovieRoot.h:119
void CreateString(GFxValue *a_value, const char *a_string) override
std::uint64_t unk25E8[(0x2B48 - 0x25E8) > > 3]
Definition GFxMovieRoot.h:147
void SetPause(bool a_pause) override
bool IsMovieFocused() const override
void CreateObject(GFxValue *a_value, const char *a_className=0, const GFxValue *a_args=0, std::uint32_t a_numArgs=0) override
void CreateStringW(GFxValue *a_value, const wchar_t *a_string) override
void NotifyMouseState(float a_x, float a_y, std::uint32_t a_buttons, std::uint32_t a_mouseIndex=0) override
std::uint32_t GetVariableArraySize(const char *a_pathToVar) override
bool GetDirtyFlag(bool a_doReset=true) override
std::uint32_t unk09A4
Definition GFxMovieRoot.h:135
void Restart() override
bool IsAvailable(const char *a_pathToVar) const override
stl::enumeration< Flag, std::uint32_t > flags
Definition GFxMovieRoot.h:145
bool InvokeFmt(const char *a_methodName, GFxValue *a_result, const char *a_argFmt,...) override
void GetViewport(GViewport *a_viewDesc) const override
bool SetVariable(const char *a_pathToVar, const GFxValue &a_value, SetVarType a_setType=SetVarType::kSticky) override
std::uint64_t unk0030
Definition GFxMovieRoot.h:111
std::uint64_t unk0108
Definition GFxMovieRoot.h:131
bool IsPaused() const override
void Display() override
bool InvokeArgs(const char *a_methodName, GFxValue *a_result, const char *a_argFmt, std::va_list a_args) override
GColor backgroundColor
Definition GFxMovieRoot.h:134
Flag
Definition GFxMovieRoot.h:23
virtual void Unk_48(void)
std::uint32_t controllerCount
Definition GFxMovieRoot.h:138
virtual void Unk_46(void)
std::uint64_t unk0A78
Definition GFxMovieRoot.h:140
GRectF visibleFrameRect
Definition GFxMovieRoot.h:125
void SetBackgroundAlpha(float a_alpha) override
void SetVisible(bool a_visible) override
std::uint64_t unk00B8
Definition GFxMovieRoot.h:122
std::uint64_t unk00F8
Definition GFxMovieRoot.h:129
PlayState GetPlayState() const override
void ForceCollectGarbage() override
bool SetVariableArraySize(const char *a_pathToVar, std::uint32_t a_count, SetVarType a_setType=SetVarType::kSticky) override
void SetBackgroundColor(const GColor a_bgColor) override
std::uint32_t GetMouseCursorCount() const override
ScaleModeType viewScaleMode
Definition GFxMovieRoot.h:123
Definition GFxMovieView.h:24
AlignType
Definition GFxMovieView.h:39
HitTestType
Definition GFxMovieView.h:60
HEResult
Definition GFxMovieView.h:52
ScaleModeType
Definition GFxMovieView.h:30
Definition GFxSprite.h:13
Definition GFxValue.h:92
Definition GMatrix3D.h:6
Definition GMemoryHeap.h:16
Definition GViewport.h:6
Definition PCH.h:223
Definition AbsorbEffect.h:6