CommonLibSSE NG
Loading...
Searching...
No Matches
GFxState.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/G/GStats.h"
5
6namespace RE
7{
8 class GFxState : public GRefCountBase<GFxState, GStatGroups::kGStat_Default_Mem>
9 {
10 public:
11 inline static constexpr auto RTTI = RTTI_GFxState;
12
13 // An enumeration type defining the type of a State object, such as kRenderConfig, kFSCommandHandler, State_Log, etc. Only one State object of each type can be set on the loader or a movie.
14 enum class StateType
15 {
16 kNone, // An undefined state value
17
18 // Instance related states
21 kTranslator, // An international language translator of dynamic text fields
22 kLog, // A log object which generates log messages and is used for debugging
24 kActionControl, // An object that controls the verbosity of output generated during ActionScript execution
25 kUserEventHandler, // A user-installable interface to handle events fired from the player
26 kFSCommandHandler, // A handler gets called when Action Script executes the fscommand() statement
27 kExternalInterface, // A callback method for ActionScript to invoke
28
29 // Loading related states
30 kFileOpener, // A callback interface that is used for opening files
31 kURLBuilder, // The object responsible for building a filename path used for loading objects
32 kImageCreator, // An interface used to create Image objects applied during rendering
33 kParseControl, // An object that is used to determine which SWF/GFx file parsing messages will be generated
34 kProgressHandler, // A user-defined handler to receive SWF/GFx load progress
35 kImportVisitor, // An object which is called during loading (import binding state) of a movie after each import is resolved
37 kFontPackParams, // FontPackParams state, which enables static text cache and provides texture size and pack configuration settings
39 kFontLib, // FontLib state, which maintains a list of movies that can be used as font sources
40 kFontProvider, // FontProvider derived state, such as FontProviderWin32 that provides support for system fonts
41 kFontMap, // FontMap state, which maintains a set of font name mappings for internationalization
43 kTaskManager, // An object that executes tasks added to the task queue
44 kClipboard, // An object used for storing plain and rich texts in a text clipboard
45 kTextKeyMap, // TextKeyMap state which contains mappings of keystrokes to text field operation
47 kIMEManager, // An object which supports IME implementation on the loader
48 kXMLSupport, // XML::Support state which is responsible for providing XML support
50 kZlibSupport, // ZlibSupport state that provides ZLib support to the loader
51 kFontCompactorParams, // FontCompactorParams state, which provides configuration options for generating glyphs
52 kImagePackerParams, // ImagePackParamsBase state, which provides the texture configuration options to pack images in textures
54 kAudio, // Audio state, used to initialize the sound system for playing SWF sound files
55 kVideo, // Video state, used to initialize video playbacks
57 kSharedObject, // SharedObjectManagerBase state for handling shared objects
59 };
60
61 // State constructor, only invoked from derived classes. The constructor takes a StateType as an argument, which defines the state type; this value cannot be changed after object creation
63 ~GFxState() override = default; // 00
64
65 // GetStateType obtains the StateType of this state. The state type of a given object never changes after construction
66 [[nodiscard]] StateType GetStateType() const;
67
68 protected:
70 std::uint32_t pad14; // 14
71 };
72 static_assert(sizeof(GFxState) == 0x18);
73}
Definition GFxState.h:9
std::uint32_t pad14
Definition GFxState.h:70
StateType stateType
Definition GFxState.h:69
StateType GetStateType() const
static constexpr auto RTTI
Definition GFxState.h:11
~GFxState() override=default
GFxState(StateType a_st=StateType::kNone)
StateType
Definition GFxState.h:15
Definition GRefCountBase.h:12
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_GFxState(691031, 398890, 0x1f6b0e0)