Dalamud Class representing a plugin that has opted in to auto-updating. Initializes a new instance of the class. The unique ID representing the plugin. The kind of opt-in. Never auto-update this plugin. Always auto-update this plugin, regardless of the user's settings. Gets or sets the unique ID representing the plugin. Gets or sets the type of opt-in. Class containing Dalamud settings. Delegate for the event that occurs when the dalamud configuration is saved. The current dalamud configuration. Event that occurs when dalamud configuration is saved. Gets or sets a list of muted words. Gets or sets a value indicating whether or not the taskbar should flash once a duty is found. Gets or sets a value indicating whether or not a message should be sent in chat once a duty is found. Gets or sets the language code to load Dalamud localization with. Gets or sets the last loaded Dalamud version. Gets or sets a dictionary of seen FTUE levels. Gets or sets the last loaded Dalamud version. Gets or sets the chat type used by default for plugin messages. Gets or sets a value indicating whether or not plugin testing builds should be shown. Gets or sets a key to opt into Dalamud staging builds. Gets or sets a list of custom repos. Gets or sets a value indicating whether or not a disclaimer regarding third-party repos has been dismissed. Gets or sets a list of hidden plugins. Gets or sets a list of seen plugins. Gets or sets a list of additional settings for devPlugins. The key is the absolute path to the plugin DLL. This is automatically generated for any plugins in the devPlugins folder. However by specifiying this value manually, you can add arbitrary files outside the normal file paths. Gets or sets a list of additional locations that dev plugins should be loaded from. This can be either a DLL or folder, but should be the absolute path, or a path relative to the currently injected Dalamud instance. Gets or sets the global UI scale. Gets or sets a value indicating whether to use AXIS fonts from the game. Gets or sets the default font spec. Gets or sets the gamma value to apply for Dalamud fonts. Do not use. Gets or sets the opacity of the IME state indicator. 0 will hide the state indicator. 1 will make the state indicator fully visible. Values outside the range will be clamped to [0, 1]. See to . Gets or sets a value indicating whether or not plugin UI should be hidden. Gets or sets a value indicating whether or not plugin UI should be hidden during cutscenes. Gets or sets a value indicating whether or not plugin UI should be hidden during GPose. Gets or sets a value indicating whether or not a message containing Dalamud's current version and the number of loaded plugins should be sent at login. Gets or sets a value indicating whether or not a message containing detailed plugin information should be sent at login. Gets or sets a value indicating whether or not plugins should be auto-updated. Gets or sets a value indicating whether or not Dalamud should add buttons to the system menu. Gets or sets the default Dalamud debug log level on startup. Gets or sets a value indicating whether to write to log files synchronously. Gets or sets a value indicating whether or not the debug log should scroll automatically. Gets or sets a value indicating whether or not the debug log should open at startup. Gets or sets the number of lines to keep for the Dalamud Console window. Gets or sets a list representing the command history for the Dalamud Console. Gets or sets a value indicating whether or not the dev bar should open at startup. Gets or sets a value indicating whether or not ImGui asserts should be enabled at startup. Gets or sets a value indicating whether or not docking should be globally enabled in ImGui. Gets or sets a value indicating whether or not plugin user interfaces should trigger sound effects. This setting is effected by the in-game "System Sounds" option and volume. Gets or sets a value indicating whether or not an additional button allowing pinning and clickthrough options should be shown on plugin title bars when using the Window System. Gets or sets a value indicating whether viewports should always be disabled. Gets or sets a value indicating whether or not navigation via a gamepad should be globally enabled in ImGui. Gets or sets a value indicating whether or not focus management is enabled. Gets or sets a value indicating whether or not the anti-anti-debug check is enabled on startup. Gets or sets a value indicating whether to resume game main thread after plugins load. Gets or sets the kind of beta to download when matches the server value. Gets or sets a value indicating whether or not any plugin should be loaded when the game is started. It is reset immediately when read. Gets or sets a value indicating the wait time between plugin unload and plugin assembly unload. Uses default value that may change between versions if set to null. Gets or sets a value indicating whether or not crashes during shutdown should be reported. Gets or sets a list of saved styles. Gets or sets a list of saved styles. Gets or sets the name of the currently chosen style. Gets or sets a list of saved plugin profiles. Gets or sets the default plugin profile. Gets or sets a value indicating whether or not profiles are enabled. Gets or sets a value indicating whether or not the user has seen the profiles tutorial. Gets or sets the default UI preset. Gets or sets the order of DTR elements, by title. Gets or sets the list of ignored DTR elements, by title. Gets or sets the spacing used for DTR entries. Gets or sets a value indicating whether to swap the direction in which elements are drawn in the DTR. False indicates that elements will be drawn from the end of the left side of the Server Info bar, and continue leftwards. True indicates the opposite. Gets or sets a value indicating whether the title screen menu is shown. Gets or sets a value indicating whether to reduce motions (animations). Gets or sets a value indicating whether or not market board data should be uploaded. Gets the ISO 639-1 two-letter code for the language of the effective Dalamud display language. Gets or sets a value indicating whether or not to show info on dev bar. Gets or sets the last-used contact details for the plugin feedback form. Gets or sets a list of plugins that testing builds should be downloaded for. Gets or sets a list of plugins that have opted into or out of auto-updating. Gets or sets a value indicating whether the FFXIV window should be toggled to immersive mode. Gets or sets the mode specifying how to handle ReShade. Gets or sets the swap chain hook mode. Gets or sets hitch threshold for game network up in milliseconds. Gets or sets hitch threshold for game network down in milliseconds. Gets or sets hitch threshold for framework update in milliseconds. Gets or sets hitch threshold for ui builder in milliseconds. Gets or sets a value indicating whether to track texture allocation by plugins. Gets or sets the page of the plugin installer that is shown by default when opened. Gets or sets a value indicating how auto-updating should behave. Gets or sets a value indicating whether users should be notified regularly about pending updates. Gets or sets a value indicating whether users should be notified about updates in chat. Load a configuration from the provided path. Path to read from. File storage. The deserialized configuration file. Save the configuration at the path it was loaded from, at the next frame. Immediately save the configuration. Save the file, if needed. Only needs to be done once a frame. Settings for DevPlugins. Gets or sets a value indicating whether this plugin should automatically start when Dalamud boots up. Gets or sets a value indicating whether this plugin should automatically reload on file change. Gets or sets an ID uniquely identifying this specific instance of a devPlugin. Gets or sets a list of validation problems that have been dismissed by the user. Environmental configuration settings. Gets a value indicating whether the XL_WINEONLINUX setting has been enabled. Gets a value indicating whether the DALAMUD_NOT_HAVE_PLUGINS setting has been enabled. Gets a value indicating whether the DalamudForceReloaded setting has been enabled. Gets a value indicating whether the DalamudForceMinHook setting has been enabled. Gets a value indicating whether or not Dalamud context menus should be disabled. Represents a plugin that has opted in to testing. Initializes a new instance of the class. The internal name of the plugin. Gets the internal name of the plugin to test. Gets the testing branch to use. Additional locations to load dev plugins from. Gets or sets the dev pluign path. Gets or sets a value indicating whether the third party repo is enabled. Clone this object. A shallow copy of this object. Third party repository for dalamud plugins. Gets or sets the third party repo url. Gets or sets a value indicating whether the third party repo is enabled. Gets or sets a short name for the repo url. Clone this object. A shallow copy of this object. Configuration to store settings for a dalamud plugin. Gets or sets configuration version. Configuration to store settings for a dalamud plugin. Initializes a new instance of the class. Directory for storage of plugin configuration files. Save/Load plugin configuration. NOTE: Save/Load are still using Type information for now, despite LoadForType superseding Load and not requiring or using it. It might be worth removing the Type info from Save, to strip it from all future saved configs, and then Load() can probably be removed entirely. Plugin configuration. Plugin name. WorkingPluginId of the plugin. Load plugin configuration. Plugin name. WorkingPluginID of the plugin. Plugin configuration. Delete the configuration file and folder for the specified plugin. This will throw an if the plugin did not correctly close its handles. The name of the plugin. Get plugin directory. Plugin name. Plugin directory path. Load Plugin configuration. Parameterized deserialization. Currently this is called via reflection from DalamudPluginInterface.GetPluginConfig(). Eventually there may be an additional pluginInterface method that can call this directly without reflection - for now this is in support of the existing plugin api. Plugin Name. Configuration Type. Plugin Configuration. Get FileInfo to plugin config file. InternalName of the plugin. FileInfo of the config file. Serializes a plugin configuration object. The configuration object. A string representing the serialized configuration object. Deserializes a plugin configuration from a string. The serialized configuration. The configuration object, or null. Possible console argument types. A regular string. A signed integer. A floating point value. A boolean value. Interface representing an entry in the console. Gets the name of the entry. Gets the description of the entry. Interface representing a command in the console. Execute this command. Arguments to invoke the entry with. Whether or not execution succeeded. Interface representing a variable in the console. The type of the variable. Gets or sets the value of this variable. Class managing console commands and variables. Initializes a new instance of the class. Event that is triggered when a command is processed. Return true to stop the command from being processed any further. Gets a read-only dictionary of console entries. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The added command. Thrown if the command already exists. Add a variable to the console. The name of the variable. A description of the variable. The default value of the variable. The type of the variable. The added variable. Thrown if the variable already exists. Add an alias to a console entry. The name of the entry to add an alias for. The alias to use. The added alias. Remove an entry from the console. The entry to remove. Get the value of a variable. The name of the variable. The type of the variable. The value of the variable. Thrown if the variable could not be found. Thrown if the found console entry is not of the expected type. Set the value of a variable. The name of the variable. The value to set. The type of the value to set. Thrown if the found console entry is not of the expected type. Thrown if the variable could not be found. Process a console command. The command to process. Whether or not the command was successfully processed. Pattern:
("[^"]+"|[^\\s"]+)
Options:
RegexOptions.Compiled
Explanation:
○ 1st capture group.
○ Match with 2 alternative expressions, atomically.
○ Match a sequence of expressions.
○ Match '"'.
○ Match a character other than '"' atomically at least once.
○ Match '"'.
○ Match a character in the set [^"\s] atomically at least once.
Class representing an entry in the console. Initializes a new instance of the class. The name of the entry. A description of the entry. Gets or sets a list of valid argument types for this console entry. Execute this command. Arguments to invoke the entry with. Whether or not execution succeeded. Get an instance of for a given type. The type of the argument. The default value to use if none is specified. An instance. Thrown if the given type cannot be handled by the console system. Class representing an alias to another console entry. Initializes a new instance of the class. The name of the alias. The target entry to alias to. Class representing a console command. Initializes a new instance of the class. The name of the variable. A description of the variable. The function to invoke. Class representing a basic console variable. The name of the variable. A description of the variable. Class representing a basic console variable. The name of the variable. A description of the variable. Class representing a generic console variable. The type of the variable. Initializes a new instance of the class. The name of the variable. A description of the variable. Exception thrown when a console entry is not found. Initializes a new instance of the class. The name of the entry. Plugin-scoped version of the console service. Initializes a new instance of the class. The plugin this service belongs to. Utility functions for the console manager. Get a sanitized namespace name from a plugin's internal name. The plugin's internal name. A sanitized namespace. Pattern:
[^a-z]
Explanation:
○ Match a character in the set [^a-z].
The main Dalamud class containing all subsystems. Initializes a new instance of the class. DalamudStartInfo instance. ReliableFileStorage instance. The Dalamud configuration. Event used to signal the main thread to continue. Gets the start information for this Dalamud instance. Gets location of stored assets. Gets the in-game default exception filter. Gets the in-game debug exception filter. Signal to the crash handler process that we should restart the game. Queue an unload of Dalamud when it gets the chance. Wait for an unload request to start. Replace the current exception handler with the default one. Replace the current exception handler with a debug one. Disable the current exception handler. Helper function to set the exception handler. Specifies an asset that has been shipped as Dalamud Asset.
Any asset can cease to exist at any point, even if the enum value exists.
Either ship your own assets, or be prepared for errors.
Nothing. : A texture that is completely transparent. : A texture that is completely white. : The Dalamud logo. : The Dalamud logo, but smaller. : The default plugin icon. : The disabled plugin icon. : The outdated installable plugin icon. : The plugin trouble icon overlay. : The plugin trouble icon overlay. : The plugin update icon overlay. : The plugin installed icon overlay. : The third party plugin icon overlay. : The installed third party plugin icon overlay. : The API bump explainer icon. : The background shade for . : Noto Sans CJK JP Medium. : Noto Sans CJK KR Regular. : Inconsolata Regular. : FontAwesome Free Solid. : Game symbol fonts being used as webfonts at Lodestone. This class provides data for Dalamud-internal features, but can also be used by plugins if needed. Gets a value indicating whether Game Data is ready to be read. A helper class to easily resolve Lumina data within Dalamud. Initializes a new instance of the class using the default . The type of Lumina sheet to resolve. The id of the row to resolve. A new object. Provides functionality for resolving RSV strings. Initializes a new instance of the class. Attemps to resolve an RSV string. The main entrypoint for the Dalamud system. Log level switch for runtime log level change. A delegate used during initialization of the CLR from Dalamud.Boot. Pointer to a serialized data. Event used to signal the main thread to continue. A delegate used from VEH handler on exception which CoreCLR will fast fail by default. HGLOBAL for message. Initialize Dalamud. Pointer to a serialized data. Event used to signal the main thread to continue. Returns stack trace. HGlobal to wchar_t* stack trace c-string. Sets up logging. Base directory. Whether to log to console. Log synchronously. Name that should be appended to the log file. Initialize all Dalamud subsystems and start running on the main thread. The containing information needed to initialize Dalamud. Event used to signal the main thread to continue. Argument pool for Addon Lifecycle services. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Rents an instance of an argument. The rented instance. The returner. Returns the object to the pool on dispose. The type. Initializes a new instance of the struct. An instance of the argument. The pool to rent from and return to. Returns the item to the pool. Reimplementation of CursorType. Arrow. Boot. Search. Chat Pointer. Interact. Attack. Hand. Resizeable Left-Right. Resizeable Up-Down. Resizeable. Resizeable 4-way. Clickable. Text Input. Text Click. Grab. Chat Bubble. No Access. Hidden. This class represents a registered event that a plugin registers with a native ui node. Contains all necessary information to track and clean up events automatically. Name of an invalid addon. Gets the pointer to the addons AtkUnitBase. Gets the name of the addon this args referrers to. Gets the pointer to the event source. Gets the handler that gets called when this event is triggered. Gets the unique id for this event. Gets the event type for this event. Gets the event handle for this event. Gets the formatted log string for this AddonEventEntry. Class that represents a addon event handle. Event listener class for managing custom events. Initializes a new instance of the class. The managed handler to send events to. Delegate for receiving custom events. Pointer to the event listener. Event type. Unique Id for this event. Pointer to the AtkEvent. Pointer to the AtkEventData. Gets the address of this listener. Register an event to this event handler. Addon that triggers this event. Node to attach event to. Event type to trigger this event. Unique id for this event. Unregister an event from this event handler. Node to remove the event from. Event type that this event is for. Unique id for this event. Service provider for addon event management. PluginName for Dalamud Internal use. Registers an event handler for the specified addon, node, and type. Unique ID for this plugin. The parent addon for this event. The node that will trigger this event. The event type for this event. The handler to call when event is triggered. IAddonEventHandle used to remove the event. Unregisters an event handler with the specified event id and event type. Unique ID for this plugin. The Unique Id for this event. Force the game cursor to be the specified cursor. Which cursor to use. Un-forces the game cursor. Adds a new managed event controller if one doesn't already exist for this pluginId. Unique ID for this plugin. Removes an existing managed event controller for the specified plugin. Unique ID for this plugin. When an addon finalizes, check it for any registered events, and unregister them. Event type that triggered this call. Addon that triggered this call. Plugin-scoped version of a AddonEventManager service. Initializes a new instance of the class. Plugin info for the plugin that requested this service. AddonEventManager memory address resolver. Gets the address of the AtkModule UpdateCursor method. Scan for and setup any configured address pointers. The signature scanner to facilitate setup. Reimplementation of AtkEventType. Mouse Down. Mouse Up. Mouse Move. Mouse Over. Mouse Out. Mouse Click. Input Received. Focus Start. Focus Stop. Button Press, sent on MouseDown on Button. Button Release, sent on MouseUp and MouseOut. Button Click, sent on MouseUp and MouseClick on button. List Item RollOver. List Item Roll Out. List Item Toggle. Drag Drop Begin. Sent on MouseDown over a draggable icon (will NOT send for a locked icon). Drag Drop Insert. Sent when dropping an icon into a hotbar/inventory slot or similar. Drag Drop Roll Over. Drag Drop Roll Out. Drag Drop Discard. Sent when dropping an icon into empty screenspace, eg to remove an action from a hotBar. Drag Drop Unknown. Drag Drop Cancel. Sent on MouseUp if the cursor has not moved since DragDropBegin, OR on MouseDown over a locked icon. Drag Drop Unknown. Icon Text Roll Over. Icon Text Roll Out. Icon Text Click. Window Roll Over. Window Roll Out. Window Change Scale. Interface representing the data used for managing AddonEvents. Gets the param key associated with this event. Gets the name of the addon that this event was attached to. Gets the event type associated with this handle. Gets the unique ID for this handle. Class to manage creating and cleaning up events per-plugin. Initializes a new instance of the class. Adds a tracked event. The Parent addon for the event. The Node for the event. The Event Type. The delegate to call when invoking this event. IAddonEventHandle used to remove the event. Removes a tracked event, also attempts to un-attach the event from native. Unique ID of the event to remove. Removes all events attached to the specified addon. Addon name to remove events from. Attempts to remove a tracked event from native UI. This method performs several safety checks to only remove events from a still active addon. If any of these checks fail, it likely means the native UI already cleaned up the event, and we don't have to worry about them. Event entry to remove. Enumeration for available AddonLifecycle arg data. Contains argument data for Setup. Contains argument data for Update. Contains argument data for Draw. Contains argument data for Finalize. Contains argument data for RequestedUpdate. Contains argument data for Refresh. Contains argument data for ReceiveEvent. Base class for AddonLifecycle AddonArgTypes. Constant string representing the name of an addon that is invalid. Gets the name of the addon this args referrers to. Gets the pointer to the addons AtkUnitBase. Gets the type of these args. Gets or sets the pointer to the addons AtkUnitBase. Checks if addon name matches the given span of char. The name to check. Whether it is the case. Helper method for ensuring the name of the addon is valid. The name of the addon for this object. when invalid. Addon argument data for Draw events. Initializes a new instance of the class. Addon argument data for ReceiveEvent events. Initializes a new instance of the class. Addon argument data for ReceiveEvent events. Initializes a new instance of the class. Gets or sets the AtkEventType for this event message. Gets or sets the event id for this event message. Gets or sets the pointer to an AtkEvent for this event message. Gets or sets the pointer to a block of data for this event message. Addon argument data for Refresh events. Initializes a new instance of the class. Gets or sets the number of AtkValues. Gets or sets the address of the AtkValue array. Gets the AtkValues in the form of a span. Addon argument data for OnRequestedUpdate events. Initializes a new instance of the class. Gets or sets the NumberArrayData** for this event. Gets or sets the StringArrayData** for this event. Addon argument data for Setup events. Initializes a new instance of the class. Gets or sets the number of AtkValues. Gets or sets the address of the AtkValue array. Gets the AtkValues in the form of a span. Addon argument data for Update events. Initializes a new instance of the class. Gets the time since the last update. Gets or sets the time since the last update. Enumeration for available AddonLifecycle events. An event that is fired prior to an addon being setup with its implementation of . This event is useful for modifying the initial data contained within prior to the addon being created. An event that is fired after an addon has finished its initial setup. This event is particularly useful for developers seeking to add custom elements to now-initialized and populated node lists, as well as reading data placed in the AtkValues by the game during the setup process. See for more information. An event that is fired before an addon begins its update cycle via . This event is fired every frame that an addon is loaded, regardless of visibility. An event that is fired after an addon has finished its update. See for more information. An event that is fired before an addon begins drawing to screen via . Unlike , this event is only fired if an addon is visible or otherwise drawing to screen. An event that is fired after an addon has finished its draw to screen. See for more information. An event that is fired immediately before an addon is finalized via and destroyed. After this event, the addon will destruct its UI node data as well as free any allocated memory. This event can be used for cleanup and tracking tasks. This event is NOT fired when the addon is being hidden, but tends to be fired when it's being properly closed.
As this is part of the destruction process for an addon, this event does not have an associated Post event.
An event that is fired before a call to is made in response to a change in the subscribed or backing this addon. This generally occurs in response to receiving data from the game server, but can happen in other cases as well. This event is useful for modifying the data received before it's passed to the UI for display. Contrast to which tends to be in response to client-driven interactions. A developer would use this event to intercept free company information after it's received from the server, but before it's displayed to the user. This would allow the developer to add user-driven notes or other information to the Free Company's overview. An event that is fired after an addon has finished processing an ArrayData update. See for more information. An event that is fired before an addon calls its method. Refreshes are generally triggered in response to certain user interactions such as changing tabs, and are primarily used to update the AtkValues present in this addon. Contrast to which is called in response to ArrayData updates. An event that is fired after an addon has finished its refresh. See for more information. An event that is fired before an addon begins processing a user-driven event via , such as mousing over an element or clicking a button. This event is only valid for addons that actually override the ReceiveEvent method of the underlying AtkEventListener. An event that is fired after an addon finishes calling its method. See for more information. This class provides events for in-game addon lifecycles. Gets a list of all AddonLifecycle ReceiveEvent Listener Hooks. Gets a list of all AddonLifecycle Event Listeners. Register a listener for the target event and addon. The listener to register. Unregisters the listener from events. The listener to unregister. Invoke listeners for the specified event type. Event Type. AddonArgs. What to blame on errors. Plugin-scoped version of a AddonLifecycle service. AddonLifecycleService memory address resolver. Gets the address of the addon setup hook invoked by the AtkUnitManager. There are two callsites for this vFunc, we need to hook both of them to catch both normal UI and special UI cases like dialogue. This is called for a majority of all addon OnSetup's. Gets the address of the other addon setup hook invoked by the AtkUnitManager. There are two callsites for this vFunc, we need to hook both of them to catch both normal UI and special UI cases like dialogue. This seems to be called rarely for specific addons. Gets the address of the addon finalize hook invoked by the AtkUnitManager. Gets the address of the addon draw hook invoked by virtual function call. Gets the address of the addon update hook invoked by virtual function call. Gets the address of the addon onRequestedUpdate hook invoked by virtual function call. Scan for and setup any configured address pointers. The signature scanner to facilitate setup. This class is a helper for tracking and invoking listener delegates. Initializes a new instance of the class. Event type to listen for. Addon name to listen for. Delegate to invoke. Gets the name of the addon this listener is looking for. string.Empty if it wants to be called for any addon. Gets or sets a value indicating whether this event has been unregistered. Gets the event type this listener is looking for. Gets the delegate this listener invokes. This class is a helper for tracking and invoking listener delegates for Addon_OnReceiveEvent. Multiple addons may use the same ReceiveEvent function, this helper makes sure that those addon events are handled properly. Initializes a new instance of the class. AddonLifecycle service instance. Initial Addon Requesting this listener. Address of Addon's ReceiveEvent function. Gets the list of addons that use this receive event hook. Gets the address of the ReceiveEvent function as provided by the vtable on setup. Gets the contained hook for these addons. Gets or sets the Reference to AddonLifecycle service instance. Try to hook and enable this receive event handler. Disable the hook for this receive event handler. This class represents a callsite hook used to replace the address of the OnSetup function in r9. Delegate signature for this hook. Initializes a new instance of the class. Address of the instruction to replace. Delegate to invoke. Gets a value indicating whether or not the hook is enabled. Starts intercepting a call to the function. Stops intercepting a call to the function. Remove a hook from the current process. Base memory address resolver. Gets a list of memory addresses that were found, to list in /xldata. Gets or sets a value indicating whether the resolver has successfully run or . Setup the resolver, calling the appropriate method based on the process architecture. The SigScanner instance. Fetch vfunc N from a pointer to the vtable and return a delegate function pointer. The delegate to marshal the function pointer to. The address of the virtual table. The offset from address to the vtable pointer. The vfunc index. A delegate function pointer that can be invoked. Setup the resolver by finding any necessary memory addresses. The SigScanner instance. Setup the resolver by finding any necessary memory addresses. The SigScanner instance. Setup the resolver by finding any necessary memory addresses. The SigScanner instance. Chat events and public helper functions. Gets the last URL seen in chat. Gets a value indicating whether or not auto-updates have already completed this session. Pattern:
(http|ftp|https)://([\\w_-]+(?:(?:\\.[\\w_-]+)+))([\\w.,@?^=%&:/~+#-]*[\\w@?^=%&/~+#-])?
Options:
RegexOptions.Compiled
Explanation:
○ 1st capture group.
○ Match with 3 alternative expressions.
○ Match the string "http".
○ Match the string "ftp".
○ Match the string "https".
○ Match the string "://".
○ 2nd capture group.
○ Match a character in the set [-_\w] atomically at least once.
○ Loop greedily at least once.
○ Match '.'.
○ Match a character in the set [-_\w] greedily at least once.
○ Optional (greedy).
○ 3rd capture group.
○ Match a character in the set [#%&+-/:=?@^~\w] greedily any number of times.
○ Match a character in the set [#%&+-/=?@^~\w].
Enum describing the language the game loads in. Indicating a Japanese game client. Indicating an English game client. Indicating a German game client. Indicating a French game client. Interface representing an aetheryte entry available to the game. Gets the Aetheryte ID. Gets the Territory ID. Gets the SubIndex used when there can be multiple Aetherytes with the same ID (Private/Shared Estates etc.). Gets the Ward. Zero if not a Shared Estate. Gets the Plot. Zero if not a Shared Estate. Gets the Cost in Gil to Teleport to this location. Gets a value indicating whether the LocalPlayer has set this Aetheryte as Favorite or not. Gets a value indicating whether this Aetheryte is a Shared Estate or not. Gets a value indicating whether this Aetheryte is an Apartment or not. Gets the Aetheryte data related to this aetheryte. Class representing an aetheryte entry available to the game. Initializes a new instance of the class. Data read from the Aetheryte List. This collection represents the list of available Aetherytes in the Teleport window. This collection represents the list of available Aetherytes in the Teleport window. This collection represents the buddies present in your squadron or trust party. It does not include the local player. This collection represents the buddies present in your squadron or trust party. Interface representing represents a buddy such as the chocobo companion, summoned pets, squadron groups and trust parties. Gets the address of the buddy in memory. Gets the object ID of this buddy. Gets the actor associated with this buddy. This iterates the actor table, it should be used with care. Gets the current health of this buddy. Gets the maximum health of this buddy. Gets the data ID of this buddy. Gets the Mount data related to this buddy. It should only be used with companion buddies. Gets the Pet data related to this buddy. It should only be used with pet buddies. Gets the Trust data related to this buddy. It should only be used with battle buddies. This class represents a buddy such as the chocobo companion, summoned pets, squadron groups and trust parties. Initializes a new instance of the class. Buddy address. This class represents the state of the game client at the time of access. Gets client state address resolver. Dispose of managed and unmanaged resources. Plugin-scoped version of a GameConfig service. Initializes a new instance of the class. Client state memory address resolver. Gets the address of the keyboard state. Gets the address of the keyboard state index array which translates the VK enumeration to the key state. Gets the address of the method which sets up the player. Gets the address of the method which polls the gamepads for data. Called every frame, even when `Enable Gamepad` is off in the settings. Scan for and setup any configured address pointers. The signature scanner to facilitate setup. Provides access to conditions (generally player state). You can check whether a player is in combat, mounted, etc. Gets the current max number of conditions. You can get this just by looking at the condition sheet and how many rows it has. Finalizes an instance of the class. Plugin-scoped version of a Condition service. Initializes a new instance of the class. Possible state flags (or conditions as they're called internally) that can be set on the local client. These come from LogMessage (somewhere) and directly map to each state field managed by the client. As of 5.25, it maps to LogMessage row 7700 and onwards, which can be checked by looking at the Condition sheet and looking at what column 2 maps to. Unused. Unable to execute command under normal conditions. Unable to execute command while unconscious. Unable to execute command during an emote. Unable to execute command while mounted. Unable to execute command while crafting. Unable to execute command while gathering. Unable to execute command while melding materia. Unable to execute command while operating a siege machine. Unable to execute command while carrying an object. Unable to execute command while mounted. Unable to execute command while in that position. Unable to execute command while chocobo racing. Unable to execute command while playing a mini-game. Unable to execute command while playing Lord of Verminion. Unable to execute command while participating in a custom match. Unable to execute command while performing. Unable to execute command while occupied. Unable to execute command during combat. Unable to execute command while casting. Unable to execute command while suffering status affliction. Unable to execute command while suffering status affliction. Unable to execute command while occupied. Unable to execute command while occupied. Unable to execute command while occupied. Unable to execute command while occupied. Unable to execute command while bound by duty. Unable to execute command while occupied. Unable to execute command while in a dueling area. Unable to execute command while a trade is open. Unable to execute command while occupied. Unable to execute command while occupied. Unable to execute command while crafting. Unable to execute command while preparing to craft. Unable to execute command while gathering. Unable to execute command while fishing. Unable to execute command while between areas. Unable to execute command while stealthed. Unable to execute command while jumping. Unable to execute command while auto-run is active. Unable to execute command while occupied. Unable to execute command while between areas. Unable to execute command due to system error. Unable to execute command while logging out. Unable to execute command at this location. Unable to execute command while waiting for duty. Unable to execute command while bound by duty. Unable to execute command at this time. Unable to execute command while watching a cutscene. Unable to execute command while waiting for Duty Finder. Unable to execute command while creating a character. Unable to execute command while jumping. Unable to execute command while the PvP display is active. Unable to execute command while suffering status affliction. Unable to execute command while mounting. Unable to execute command while carrying an item. Unable to execute command while using the Party Finder. Unable to execute command while using housing functions. Unable to execute command while transformed. Unable to execute command while on the free trial. Unable to execute command while being moved. Unable to execute command while mounting. Unable to execute command while suffering status affliction. Unable to execute command while suffering status affliction. Unable to execute command while registering for a race or match. Unable to execute command while waiting for a race or match. Unable to execute command while waiting for a Triple Triad match. Unable to execute command while in flight. Unable to execute command while watching a cutscene. Unable to execute command while delving into a deep dungeon. Unable to execute command while swimming. Unable to execute command while diving. Unable to execute command while registering for a Triple Triad match. Unable to execute command while waiting for a Triple Triad match. Unable to execute command while participating in a cross-world party or alliance. Unable to execute command while playing duty record. Unable to execute command while casting. Unable to execute command in this state. Unable to execute command in this state. Unable to execute command while role-playing. Unable to execute command while bound by duty. Unable to execute command while bound by duty. Specifically triggered when you are in a queue for a duty but not inside a duty. Unable to execute command while readying to visit another World. Unable to execute command while waiting to visit another World. Unable to execute command while using a parasol. Unable to execute command while bound by duty. Cannot execute at this time. Unable to execute command while wearing a guise. Unable to execute command while recruiting for a non-cross-world party. Command unavailable in this location. Unable to execute command while editing a portrait. Interface representing an fate entry that can be seen in the current area. Gets the Fate ID of this . Gets game data linked to this Fate. Gets the time this started. Gets how long this will run. Gets the remaining time in seconds for this . Gets the displayname of this . Gets the description of this . Gets the objective of this . Gets the state of this (Running, Ended, Failed, Preparation, WaitingForEnd). Gets the hand in count of this . Gets the progress amount of this . Gets a value indicating whether or not this has a EXP bonus. Gets a value indicating whether or not this has a bonus. Gets the icon id of this . Gets the level of this . Gets the max level level of this . Gets the position of this . Gets the radius of this . Gets the map icon id of this . Gets the territory this is located in. Gets the address of this Fate in memory. This class represents an FFXIV Fate. This class represents an FFXIV Fate. Initializes a new instance of the class. The address of this fate in memory. Gets a value indicating whether this Fate is still valid in memory. The fate to check. True or false. Gets a value indicating whether this actor is still valid in memory. True or false. Gets the territory this is located in. This represents the state of a single Fate. The Fate is active. The Fate has ended. The player failed the Fate. The Fate is preparing to run. The Fate is preparing to end. This collection represents the currently available Fate events. This collection represents the currently available Fate events. Bitmask of the Button ushort used by the game. No buttons pressed. Digipad up. Digipad down. Digipad left. Digipad right. North action button. Triangle on PS, Y on Xbox. South action button. Cross on PS, A on Xbox. West action button. Square on PS, X on Xbos. East action button. Circle on PS, B on Xbox. First button on left shoulder side. Second button on left shoulder side. Analog input lost in this bitmask. Press on left analogue stick. First button on right shoulder. Second button on right shoulder. Analog input lost in this bitmask. Press on right analogue stick. Button on the right inner side of the controller. Options on PS, Start on Xbox. Button on the left inner side of the controller. ??? on PS, Back on Xbox. Struct which gets populated by polling the gamepads. Has an array of gamepads, among many other things (here not mapped). All we really care about is the final data which the game uses to determine input. The size is definitely bigger than only the following fields but I do not know how big. Left analogue stick's horizontal value, -99 for left, 99 for right. Left analogue stick's vertical value, -99 for down, 99 for up. Right analogue stick's horizontal value, -99 for left, 99 for right. Right analogue stick's vertical value, -99 for down, 99 for up. Raw input, set the whole time while a button is held. See for the mapping. This is a bitfield. Button pressed, set once when the button is pressed. See for the mapping. This is a bitfield. Button released input, set once right after the button is not hold anymore. See for the mapping. This is a bitfield. Repeatedly emits the held button input in fixed intervals. See for the mapping. This is a bitfield. Exposes the game gamepad state to dalamud. Will block game's gamepad input if is set. Gets the pointer to the current instance of the GamepadInput struct. Gets buttons pressed bitmask, set once when the button is pressed. See for the mapping. Exposed internally for Debug Data window. Gets raw button bitmask, set the whole time while a button is held. See for the mapping. Exposed internally for Debug Data window. Gets button released bitmask, set once right after the button is not hold anymore. See for the mapping. Exposed internally for Debug Data window. Gets button repeat bitmask, emits the held button input in fixed intervals. See for the mapping. Exposed internally for Debug Data window. Gets or sets a value indicating whether detour should block gamepad input for game. Ideally, we would use (ImGui.GetIO().ConfigFlags & ImGuiConfigFlags.NavEnableGamepad) > 0 but this has a race condition during load with the detour which sets up ImGui and throws if our detour gets called before the other. Disposes this instance, alongside its hooks. MNK Beast Chakra types. No chakra. The Opo-Opo chakra. The Raptor chakra. The Coeurl chakra. Represents the flags for the canvas in the job gauge. Represents the Pom flag for the canvas in the job gauge. Represents the Wing canvas flag in the job gauge. Represents the flag for the claw in the canvas of the job gauge. Represents the 'Maw' flag for the canvas in the job gauge. Represents the weapon flag for the canvas in the job gauge. Represents the Landscape flag for the canvas in the job gauge. AST Arcanum (card) types. No card. The Balance card. The Bole card. The Arrow card. The Spear card. The Ewer card. The Spire card. The Lord of Crowns card. The Lady of Crowns card. Which creature flags are present on the gauge. Pom flag present. Wings flag present. Claw flag present. Moogle portrait present. Madeen portrait present. SCH Dismissed fairy types. Dismissed fairy is Eos. Dismissed fairy is Selene. AST Draw types. Astral Draw active. Umbral Draw active. Enum representing the DreadCombo actions for the VPR job gauge. Dreadwinder action. Hunters Coil Action. Swiftskins Coil Action. PitOfDread action. HuntersDen action. Swiftskins Den action. SAM Kaeshi types. No Kaeshi is active. Kaeshi: Higanbana type. Kaeshi: Goken type. Kaeshi: Setsugekka type. Kaeshi: Namikiri type. NIN Mudra types. Ten mudra. Chi mudra. Jin mudra. MNK Nadi types. No nadi. The Lunar nadi. The Solar nadi. SMN summoned pet glam types. No pet glam. Emerald carbuncle pet glam. Topaz carbuncle pet glam. Ruby carbuncle pet glam. Normal carbuncle pet glam. Ifrit Egi pet glam. Titan Egi pet glam. Garuda Egi pet glam. Samurai Sen types. No Sen. Setsu Sen type. Getsu Sen type. Ka Sen type. Enum representing the SerpentCombo actions for the VPR job gauge. No Serpent combo is active. Death Rattle action. Last Lash action. First Legacy action. Second Legacy action. Third Legacy action. Fourth Legacy action. BRD Song types. No song is active type. Mage's Ballad type. Army's Paeon type. The Wanderer's Minuet type. SMN summoned pet types. No pet. The summoned pet Carbuncle. This class converts in-memory Job gauge data to structs. In-memory AST job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the currently drawn . Currently drawn . Gets the currently drawn crown . Currently drawn crown . Gets the currently active draw type . Currently active draw type. In-memory BLM job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the time remaining for the Enochian time in milliseconds. Gets the time remaining for Astral Fire or Umbral Ice in milliseconds. Gets the number of Polyglot stacks remaining. Gets the number of Umbral Hearts remaining. Gets the amount of Umbral Ice stacks. Gets the amount of Astral Fire stacks. Gets the amount of Astral Soul stacks. Gets a value indicating whether or not the player is in Umbral Ice. true or false. Gets a value indicating whether or not the player is in Astral fire. true or false. Gets a value indicating whether or not Enochian is active. true or false. Gets a value indicating whether Paradox is active. true or false. In-memory BRD job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the current song timer in milliseconds. Gets the amount of Repertoire accumulated. Gets the amount of Soul Voice accumulated. Gets the type of song that is active. Gets the type of song that was last played. Gets the song Coda that are currently active. This will always return an array of size 3, inactive Coda are represented by . In-memory DNC job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the number of feathers available. Gets the amount of Espirit available. Gets the number of steps completed for the current dance. Gets all the steps in the current dance. Gets the next step in the current dance. The next dance step action ID. Gets a value indicating whether the player is dancing or not. true or false. In-memory DRG job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the time remaining for Life of the Dragon in milliseconds. Gets a value indicating whether Life of the Dragon is active. Gets the count of eyes opened during Blood of the Dragon. Gets the amount of Firstminds' Focus available. In-memory DRK job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of blood accumulated. Gets the Darkside time remaining in milliseconds. Gets the Shadow time remaining in milliseconds. Gets a value indicating whether the player has Dark Arts or not. true or false. In-memory GNB job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of ammo available. Gets the max combo time of the Gnashing Fang combo. Gets the current step of the Gnashing Fang combo. Base job gauge class. Initializes a new instance of the class. Address of the job gauge. Gets the address of this job gauge in memory. Base job gauge class. The underlying FFXIVClientStructs type. Initializes a new instance of the class. Address of the job gauge. Gets an unsafe struct pointer of this job gauge. In-memory MCH job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the time time remaining for Overheat in milliseconds. Gets the time remaining for the Rook or Queen in milliseconds. Gets the current Heat level. Gets the current Battery level. Gets the battery level of the last summon (robot). Gets a value indicating whether the player is currently Overheated. true or false. Gets a value indicating whether the player has an active Robot. true or false. In-memory MNK job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of Chakra available. Gets the types of Beast Chakra available. This will always return an array of size 3, inactive Beast Chakra are represented by . Gets the types of Nadi available. Gets the amount of available Opo-opo Fury stacks. Gets the amount of available Raptor Fury stacks. Gets the amount of available Coeurl Fury stacks. Gets the time remaining that Blitz is active. In-memory NIN job gauge. Initializes a new instance of the class. The address of the gauge. Gets the amount of Ninki available. Gets the current charges for Kazematoi. In-Memory PCT job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the use of subjective pallete. Gets the amount of paint the player has. Gets a value indicating whether or not a creature motif is drawn. Gets a value indicating whether or not a weapon motif is drawn. Gets a value indicating whether or not a landscape motif is drawn. Gets a value indicating whether or not a moogle portrait is ready. Gets a value indicating whether or not a madeen portrait is ready. Gets which creature flags are present. Gets which canvas flags are present. In-memory PLD job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the current level of the Oath gauge. In-memory RDM job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the level of the White gauge. Gets the level of the Black gauge. Gets the amount of mana stacks. In-memory RPR job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of Soul available. Gets the amount of Shroud available. Gets the time remaining that Enshrouded is active. Gets the amount of Lemure Shroud available. Gets the amount of Void Shroud available. In-memory SAM job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the currently active Kaeshi ability. Gets the current amount of Kenki available. Gets the amount of Meditation stacks. Gets the active Sen. Gets a value indicating whether the Setsu Sen is active. true or false. Gets a value indicating whether the Getsu Sen is active. true or false. Gets a value indicating whether the Ka Sen is active. true or false. In-memory SCH job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of Aetherflow stacks available. Gets the current level of the Fairy Gauge. Gets the remaining time Seraph is active in milliseconds. Gets the last dismissed fairy. In-memory SGE job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of milliseconds elapsed until the next Addersgall is available. This counts from 0 to 20_000. Gets the amount of Addersgall available. Gets the amount of Addersting available. Gets a value indicating whether Eukrasia is activated. In-memory SMN job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the time remaining for the current summon. Gets the time remaining for the current attunement. Gets the summon that will return after the current summon expires. This maps to the sheet. Gets the summon glam for the . This maps to the sheet. Gets the amount of aspected Attunment remaining. Gets the current aether flags. Use the summon accessors instead. Gets a value indicating whether Bahamut is ready to be summoned. true or false. Gets a value indicating whether if Phoenix is ready to be summoned. true or false. Gets a value indicating whether if Ifrit is ready to be summoned. true or false. Gets a value indicating whether if Titan is ready to be summoned. true or false. Gets a value indicating whether if Garuda is ready to be summoned. true or false. Gets a value indicating whether if Ifrit is currently attuned. true or false. Gets a value indicating whether if Titan is currently attuned. true or false. Gets a value indicating whether if Garuda is currently attuned. true or false. Gets a value indicating whether there are any Aetherflow stacks available. true or false. Gets the amount of Aetherflow available. In-memory VPR job gauge. Initializes a new instance of the class. Address of the job gauge. Gets how many uses of uncoiled fury the player has. Gets Serpent Offering stacks and gauge. Gets value indicating the use of 1st, 2nd, 3rd, 4th generation and Ouroboros. Gets the last Weaponskill used in DreadWinder/Pit of Dread combo. Gets current ability for Serpent's Tail. In-memory WAR job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the amount of wrath in the Beast gauge. In-memory WHM job gauge. Initializes a new instance of the class. Address of the job gauge. Gets the time to next lily in milliseconds. Gets the number of Lilies. Gets the number of times the blood lily has been nourished. Wrapper around the game keystate buffer, which contains the pressed state for all keyboard keys, indexed by virtual vkCode. The stored key state is actually a combination field, however the below ephemeral states are consumed each frame. Setting the value may be mildly useful, however retrieving the value is largely pointless. In testing, it wasn't possible without setting the statue manually. index & 0 = key pressed. index & 1 = key down (ephemeral). index & 2 = key up (ephemeral). index & 3 = short key press (ephemeral). Converts a virtual key into the equivalent value that the game uses. Valid values are non-zero. Virtual key. Converted value. Gets the raw value from the key state array. Virtual key code. A reference to the indexed array. Virtual-key codes. Defined in winuser.h from Windows SDK v6.1. This is an addendum to use on functions in which you have to pass a zero value to represent no key code. Left mouse button. Right mouse button. Control-break processing. Middle mouse button (three-button mouse). NOT contiguous with L and R buttons. X1 mouse button. NOT contiguous with L and R buttons. X2 mouse button. NOT contiguous with L and R buttons. BACKSPACE key. TAB key. CLEAR key. RETURN key. SHIFT key. CONTROL key. ALT key. PAUSE key. CAPS LOCK key. IME Kana mode. IME Hangeul mode (maintained for compatibility; use User32.VirtualKey.HANGUL). IME Hangul mode. IME Junja mode. IME final mode. IME Hanja mode. IME Kanji mode. ESC key. IME convert. IME nonconvert. IME accept. IME mode change request. SPACEBAR. PAGE UP key. PAGE DOWN key. END key. HOME key. LEFT ARROW key. UP ARROW key. RIGHT ARROW key. DOWN ARROW key. SELECT key. PRINT key. EXECUTE key. PRINT SCREEN key. INS key. DEL key. HELP key. 0 key. 1 key. 2 key. 3 key. 4 key. 5 key. 6 key. 7 key. 8 key. 9 key. A key. B key. C key. D key. E key. F key. G key. H key. I key. J key. K key. L key. M key. N key. O key. P key. Q key. R key. S key. T key. U key. V key. W key. X key. Y key. Z key. Left Windows key (Natural keyboard). Right Windows key (Natural keyboard). Applications key (Natural keyboard). Computer Sleep key. Numeric keypad 0 key. Numeric keypad 1 key. Numeric keypad 2 key. Numeric keypad 3 key. Numeric keypad 4 key. Numeric keypad 5 key. Numeric keypad 6 key. Numeric keypad 7 key. Numeric keypad 8 key. Numeric keypad 9 key. Multiply key. Add key. Separator key. Subtract key. Decimal key. Divide key. F1 Key. F2 Key. F3 Key. F4 Key. F5 Key. F6 Key. F7 Key. F8 Key. F9 Key. F10 Key. F11 Key. F12 Key. F13 Key. F14 Key. F15 Key. F16 Key. F17 Key. F18 Key. F19 Key. F20 Key. F21 Key. F22 Key. F23 Key. F24 Key. NUM LOCK key. SCROLL LOCK key. '=' key on numpad (NEC PC-9800 kbd definitions). 'Dictionary' key (Fujitsu/OASYS kbd definitions). 'Unregister word' key (Fujitsu/OASYS kbd definitions). 'Register word' key (Fujitsu/OASYS kbd definitions). 'Left OYAYUBI' key (Fujitsu/OASYS kbd definitions). 'Right OYAYUBI' key (Fujitsu/OASYS kbd definitions). Left SHIFT key. Used only as parameters to User32.GetAsyncKeyState and User32.GetKeyState. No other API or message will distinguish left and right keys in this way. Right SHIFT key. Left CONTROL key. Right CONTROL key. Left MENU key. Right MENU key. Browser Back key. Browser Forward key. Browser Refresh key. Browser Stop key. Browser Search key. Browser Favorites key. Browser Start and Home key. Volume Mute key. Volume Down key. Volume Up key. Next Track key. Previous Track key. Stop Media key. Play/Pause Media key. Start Mail key. Select Media key. Start Application 1 key. Start Application 2 key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the ';:' key. For any country/region, the '+' key. For any country/region, the ',' key. For any country/region, the '-' key. For any country/region, the '.' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the '/?' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the '`~' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the '[{' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the '\|' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the ']}' key. Used for miscellaneous characters; it can vary by keyboard.. For the US standard keyboard, the 'single-quote/double-quote' (''"') key. Used for miscellaneous characters; it can vary by keyboard.. OEM specific. 'AX' key on Japanese AX kbd. Either the angle bracket ("<>") key or the backslash ("\|") key on the RT 102-key keyboard. OEM specific. Help key on ICO. OEM specific. 00 key on ICO. IME PROCESS key. OEM specific. Clear key on ICO. Used to pass Unicode characters as if they were keystrokes. The PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods.. For more information, see Remark in User32.KEYBDINPUT, User32.SendInput, User32.WindowMessage.WM_KEYDOWN, and User32.WindowMessage.WM_KEYUP. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Nokia/Ericsson definition. Attn key. CrSel key. ExSel key. Erase EOF key. Play key. Zoom key. Reserved constant by Windows headers definition. PA1 key. Clear key. Attribute describing a VirtualKey. Initializes a new instance of the class. Fancy name of this key. Gets the fancy name of this virtual key. Extension methods for . Get the fancy name associated with this key. The they key to act on. The key's fancy name. An Enum describing possible BattleNpc kinds. Invalid BattleNpc. Weak Spots / Battle NPC parts Eg: Titan's Heart (Naval), Tioman's left and right wing (Sohm Al), Golem Soulstone (The Sunken Temple of Qarn). BattleNpc representing a Pet. BattleNpc representing a Chocobo. BattleNpc representing a standard enemy. This includes allies (overworld guards and allies in single-player duties). BattleNpc representing an NPC party member (from Duty Support, Trust, or Grand Company Command Mission). This enum describes the indices of the Customize array. The race of the character. The gender of the character. The tribe of the character. The height of the character. The model type of the character. The face type of the character. The hair of the character. Whether or not the character has hair highlights. The skin color of the character. The eye color of the character. The hair color of the character. The highlights hair color of the character. The face features of the character. The color of the face features of the character. The eyebrows of the character. The 2nd eye color of the character. The eye shape of the character. The nose shape of the character. The jaw shape of the character. The lip style of the character. The lip color of the character. The race feature size of the character. The race feature type of the character. The bust size of the character. The face paint of the character. The face paint color of the character. Enum describing possible entity kinds. Invalid character. Objects representing player characters. Objects representing battle NPCs. Objects representing event NPCs. Objects representing treasures. Objects representing aetherytes. Objects representing gathering points. Objects representing event objects. Objects representing mounts. Objects representing minions. Objects representing retainers. Objects representing area objects. Objects representing housing objects. Objects representing cutscene objects. Objects representing card stand objects. Objects representing ornament (Fashion Accessories) objects. Enum describing possible status flags. No status flags set. Hostile character. Character in combat. Character weapon is out. Character offhand is out. Character is a party member. Character is a alliance member. Character is in friend list. Character is casting. This collection represents the currently spawned FFXIV game objects. This collection represents the currently spawned FFXIV game objects. Stores an object table entry, with preallocated concrete types. Initializes a new instance of the struct. A pointer to the object table entry this entry should be pointing to. Stores an object table entry, with preallocated concrete types. Initializes a new instance of the struct. A pointer to the object table entry this entry should be pointing to. Gets the address of the underlying native object. May be null. Updates and gets the wrapped game object pointed by this struct. The pointed object, or null if no object exists at that slot. This interface represents an EventObj. This class represents an EventObj. Initializes a new instance of the class. Set up a new EventObj with the provided memory representation. The address of this event object in memory. This interface represents a NPC. This class represents a NPC. Initializes a new instance of the class. Set up a new NPC with the provided memory representation. The address of this actor in memory. Interface representing a player character. Gets the current world of the character. Gets the home world of the character. This class represents a player character. Initializes a new instance of the class. This represents a player character. The address of this actor in memory. Gets the target actor ID of the PlayerCharacter. Get and set various kinds of targets for the player. Interface representing a battle character. Gets the current status effects. Gets a value indicating whether the chara is currently casting. Gets a value indicating whether the cast is interruptible. Gets the spell action type of the spell being cast by the actor. Gets the spell action ID of the spell being cast by the actor. Gets the object ID of the target currently being cast at by the chara. Gets the current casting time of the spell being cast by the chara. Gets the base casting time of the spell being cast by the chara. This can only be a portion of the total cast for some actions. Use TotalCastTime if you always need the total cast time. Gets the plus any adjustments from the game, such as Action offset 2B. Used for display purposes. This class represents the battle characters. Initializes a new instance of the class. This represents a battle character. The address of this character in memory. Gets the underlying structure. A interface that represents a battle NPC. Gets the BattleNpc of this BattleNpc. This class represents a battle NPC. Initializes a new instance of the class. Set up a new BattleNpc with the provided memory representation. The address of this actor in memory. Gets the BattleNpc of this BattleNpc. Interface representing a character. Gets the current HP of this Chara. Gets the maximum HP of this Chara. Gets the current MP of this Chara. Gets the maximum MP of this Chara. Gets the current GP of this Chara. Gets the maximum GP of this Chara. Gets the current CP of this Chara. Gets the maximum CP of this Chara. Gets the shield percentage of this Chara. Gets the ClassJob of this Chara. Gets the level of this Chara. Gets a byte array describing the visual appearance of this Chara. Indexed by . Gets the Free Company tag of this chara. Gets the name ID of the character. Gets the current online status of the character. Gets the status flags. Gets the current mount for this character. Will be null if the character doesn't have a mount. Gets the current minion summoned for this character. Will be null if the character doesn't have a minion. This method *will* return information about a spawned (but invisible) minion, e.g. if the character is riding a mount. This class represents the base for non-static entities. Initializes a new instance of the class. This represents a non-static entity. The address of this character in memory. Gets the target object ID of the character. Gets the status flags. Gets the underlying structure. Interface representing a game object. Gets the name of this . Gets the GameObjectID for this GameObject. The Game Object ID is a globally unique identifier that points to this specific object. This ID is used to reference specific objects on the local client (e.g. for targeting). Not to be confused with . Gets the Entity ID for this GameObject. Entity IDs are assigned to networked GameObjects. A value of 0xE000_0000 indicates that this entity is not networked and has specific interactivity rules. Gets the data ID for linking to other respective game data. Gets the ID of this GameObject's owner. Gets the index of this object in the object table. Gets the entity kind of this . See the ObjectKind enum for possible values. Gets the sub kind of this Actor. Gets the X distance from the local player in yalms. Gets the Y distance from the local player in yalms. Gets a value indicating whether the object is dead or alive. Gets a value indicating whether the object is targetable. Gets the position of this . Gets the rotation of this . This ranges from -pi to pi radians. Gets the hitbox radius of this . Gets the current target of the game object. Gets the target object of the game object. This iterates the actor table, it should be used with care. Gets the address of the game object in memory. Gets a value indicating whether this actor is still valid in memory. True or false. This class represents a GameObject in FFXIV. This class represents a basic actor (GameObject) in FFXIV. Initializes a new instance of the class. The address of this game object in memory. Gets or sets the address of the game object in memory. This allows you to if (obj) {...} to check for validity. The actor to check. True or false. Gets a value indicating whether this actor is still valid in memory. The actor to check. True or false. Gets a value indicating whether this actor is still valid in memory. True or false. Gets the underlying structure. Get and set various kinds of targets for the player. Gets or sets the current target. Set to null to clear the target. Gets or sets the mouseover target. Set to null to clear the target. Gets or sets the focus target. Set to null to clear the target. Gets or sets the previous target. Set to null to clear the target. Gets or sets the soft target. Set to null to clear the target. Gets or sets the gpose target. Set to null to clear the target. Gets or sets the mouseover nameplate target. Set to null to clear the target. This collection represents the actors present in your party or alliance. This collection represents the party members present in your party or alliance. Interface representing a party member. Gets the address of this party member in memory. Gets a list of buffs or debuffs applied to this party member. Gets the position of the party member. Gets the content ID of the party member. Gets the actor ID of this party member. Gets the actor associated with this buddy. This iterates the actor table, it should be used with care. Gets the current HP of this party member. Gets the maximum HP of this party member. Gets the current MP of this party member. Gets the maximum MP of this party member. Gets the territory this party member is located in. Gets the World this party member resides in. Gets the displayname of this party member. Gets the sex of this party member. Gets the classjob of this party member. Gets the level of this party member. This class represents a party member in the group manager. Initializes a new instance of the class. Address of the party member. Gets the address of this party member in memory. Gets a list of buffs or debuffs applied to this party member. Gets the position of the party member. Gets the content ID of the party member. Gets the actor ID of this party member. Gets the actor associated with this buddy. This iterates the actor table, it should be used with care. Gets the current HP of this party member. Gets the maximum HP of this party member. Gets the current MP of this party member. Gets the maximum MP of this party member. Gets the territory this party member is located in. Gets the World this party member resides in. Gets the displayname of this party member. Gets the sex of this party member. Gets the classjob of this party member. Gets the level of this party member. This class represents a status effect an actor is afflicted by. Initializes a new instance of the class. Status address. Gets the address of the status in memory. Gets the status ID of this status. Gets the GameData associated with this status. Gets the parameter value of the status. Gets the stack count of this status. Gets the time remaining of this status. Gets the source ID of this status. Gets the source actor associated with this status. This iterates the actor table, it should be used with care. This collection represents the status effects an actor is afflicted by. This collection represents the status effects an actor is afflicted by. Initializes a new instance of the class. Address of the status list. Initializes a new instance of the class. Pointer to the status list. Gets the address of the status list in memory. Gets the amount of status effect slots the actor has. Get a status effect at the specified index. Status Index. The status at the specified index. Create a reference to an FFXIV actor status list. The address of the status list in memory. The status object containing the requested data. Create a reference to an FFXIV actor status. The address of the status effect in memory. The status object containing the requested data. Gets the address of the status at the specific index in the status list. The index of the status. The memory address of the status. Native memory representation of a FFXIV status effect. The effect ID. How many stacks are present. Additional parameters. The duration remaining. The ID of the actor that caused this effect. Interface representing a registered command. The function to be executed when the command is dispatched. The command itself. The arguments supplied to the command, ready for parsing. Gets a which will be called when the command is dispatched. Gets the help message for this command. Gets a value indicating whether if this command should be shown in the help output. Gets the display order of this command. Defaults to alphabetical ordering. This class describes a registered command. Initializes a new instance of the class. Create a new CommandInfo with the provided handler. The method to call when the command is run. This class manages registered in-game slash commands. Add a command handler, which you can use to add your own custom commands to the in-game chat. The command to register. A object describing the command. Assembly name of the plugin that added this command. If adding was successful. Returns the assembly name from which the command was added or blank if added internally. The command. A ICommandInfo object. The name of the assembly. Returns a list of commands given a specified assembly name. The name of the assembly. A list of commands and their associated activation string. Plugin-scoped version of a AddonLifecycle service. Initializes a new instance of the class. Info for the plugin that requests this service. Represents a change in the configuration. The option tha twas changed. Represents a change in the configuration. The option tha twas changed. The option tha twas changed. Represents a generic change in the configuration. The option that was changed. The type of the option. Represents a generic change in the configuration. The option that was changed. The type of the option. The option that was changed. An exception thrown when a matching config option is not present in the config section. Initializes a new instance of the class. Name of the section being accessed. Name of the config option that was not found. Types of options used by the game config. Unused config index. A label entry with no value. A config entry with an unsigned integer value. A config entry with a float value. A config entry with a string value. This class represents the game's configuration. Unused internally, used as a proxy for System.Changed via GameConfigPluginScoped Unused internally, used as a proxy for UiConfig.Changed via GameConfigPluginScoped Unused internally, used as a proxy for UiControl.Changed via GameConfigPluginScoped Gets a task representing the initialization state of this class. Plugin-scoped version of a GameConfig service. Initializes a new instance of the class. Game config system address resolver. Gets the address of the method called when any config option is changed. Helper functions for accessing GameConfigOptions. Gets the name of a SystemConfigOption from it's attribute. The SystemConfigOption. Name of the option. Gets the name of a UiConfigOption from it's attribute. The UiConfigOption. Name of the option. Gets the name of a UiControlOption from it's attribute. The UiControlOption. Name of the option. An attribute for defining GameConfig options. Initializes a new instance of the class. Name of the config option. The type of the config option. False if the game does not take changes to the config option. Gets the Name of the config option. Gets the type of the config option. Gets a value indicating whether the config option will update immediately or not. Represents a section of the game config and contains helper functions for accessing and setting values. Initializes a new instance of the class. Name of the section. The framework service. Unmanaged ConfigBase instance. Initializes a new instance of the class. Name of the section. The framework service. A function that determines which ConfigBase instance should be used. Delegate that gets the struct the section accesses. Pointer to unmanaged ConfigBase. Event which is fired when a game config option is changed within the section. Gets the number of config entries contained within the section. Some entries may be empty with no data. Gets the name of the config section. Gets the pointer to the config section container. Attempts to get a boolean config option. Name of the config option. The returned value of the config option. A value representing the success. Attempts to get a boolean config option. Name of the config option. The returned value of the config option. A value representing the success. Get a boolean config option. Name of the config option. Value of the config option. Thrown if the config option is not found. Set a boolean config option. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Attempts to get an unsigned integer config value. Name of the config option. The returned value of the config option. A value representing the success. Attempts to get an unsigned integer config value. Name of the config option. The returned value of the config option. A value representing the success. Get an unsigned integer config option. Name of the config option. Value of the config option. Thrown if the config option is not found. Set an unsigned integer config option. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Attempts to get a float config value. Name of the config option. The returned value of the config option. A value representing the success. Attempts to get a float config value. Name of the config option. The returned value of the config option. A value representing the success. Get a float config option. Name of the config option. Value of the config option. Thrown if the config option is not found. Set a float config option. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Attempts to get a string config value. Name of the config option. The returned value of the config option. A value representing the success. Attempts to get a string config value. Name of the config option. The returned value of the config option. A value representing the success. Get a string config option. Name of the config option. Value of the config option. Thrown if the config option is not found. Attempts to get a string config value as an enum value. Name of the config option. The returned value of the config option. Type of the enum. Name of each enum fields are compared against. A value representing the success. Set a string config option. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Attempts to get the properties of a UInt option from the config section. Name of the option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a Float option from the config section. Name of the option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a String option from the config section. Name of the option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Invokes a change event within the config section. The config entry that was changed. SystemConfigOption, UiConfigOption, or UiControlOption. The ConfigChangeEvent record. An exception thrown when attempting to assign a value to a config option with the wrong type. Initializes a new instance of the class. Name of the section being accessed. Name of the config option that was not found. The correct type for the config option. The type that was attempted. Valid values for PadButton options under . Names are the valid part. Enum values are exclusively for use with current Dalamud version. Auto-run. Change Hotbar Set. Highlight Left Hotbar. Highlight Right Hotbar. Not directly referenced by Gamepad button customization window. Draw Weapon/Lock On. Sit/Lock On. Change Camera. Reset Camera Position. Draw/Sheathe Weapon. Lock On. Face Target. Assist Target. Face Camera. Execute Macro #98 (Exclusive). Execute Macro #99 (Exclusive). Not Assigned. Jump/Cancel Casting. Select Target/Confirm. Cancel. Open Map/Subcommands. Open Main Menu. Select HUD. Move Character. Move Camera. Represents a string configuration property. The default value. Represents a string configuration property. The default value. The default value. Represents a uint configuration property. The default value. The minimum value. The maximum value. Represents a uint configuration property. The default value. The minimum value. The maximum value. The default value. The minimum value. The maximum value. Represents a floating point configuration property. The default value. The minimum value. The maximum value. Represents a floating point configuration property. The default value. The minimum value. The maximum value. The default value. The minimum value. The maximum value. Config options in the System section. System option with the internal name GuidVersion. This option is a UInt. System option with the internal name ConfigVersion. This option is a UInt. System option with the internal name Language. This option is a UInt. System option with the internal name Region. This option is a UInt. System option with the internal name UPnP. This option is a UInt. System option with the internal name Port. This option is a UInt. System option with the internal name LastLogin0. This option is a UInt. System option with the internal name LastLogin1. This option is a UInt. System option with the internal name WorldId. This option is a UInt. System option with the internal name ServiceIndex. This option is a UInt. System option with the internal name DktSessionId. This option is a String. System option with the internal name MainAdapter. This option is a String. System option with the internal name ScreenLeft. This option is a UInt. System option with the internal name ScreenTop. This option is a UInt. System option with the internal name ScreenWidth. This option is a UInt. System option with the internal name ScreenHeight. This option is a UInt. System option with the internal name ScreenMode. This option is a UInt. System option with the internal name FullScreenWidth. This option is a UInt. System option with the internal name FullScreenHeight. This option is a UInt. System option with the internal name Refreshrate. This option is a UInt. System option with the internal name Fps. This option is a UInt. System option with the internal name AntiAliasing. This option is a UInt. System option with the internal name FPSInActive. This option is a UInt. System option with the internal name ResoMouseDrag. This option is a UInt. System option with the internal name MouseOpeLimit. This option is a UInt. System option with the internal name LangSelectSub. This option is a UInt. System option with the internal name Gamma. This option is a UInt. System option with the internal name UiBaseScale. This option is a UInt. System option with the internal name CharaLight. This option is a UInt. System option with the internal name UiHighScale. This option is a UInt. System option with the internal name TextureFilterQuality. This option is a UInt. System option with the internal name TextureAnisotropicQuality. This option is a UInt. System option with the internal name SSAO. This option is a UInt. System option with the internal name Glare. This option is a UInt. System option with the internal name DistortionWater. This option is a UInt. System option with the internal name DepthOfField. This option is a UInt. System option with the internal name RadialBlur. This option is a UInt. System option with the internal name Vignetting. This option is a UInt. System option with the internal name GrassQuality. This option is a UInt. System option with the internal name TranslucentQuality. This option is a UInt. System option with the internal name ShadowVisibilityType. This option is a UInt. System option with the internal name ShadowSoftShadowType. This option is a UInt. System option with the internal name ShadowTextureSizeType. This option is a UInt. System option with the internal name ShadowCascadeCountType. This option is a UInt. System option with the internal name LodType. This option is a UInt. System option with the internal name StreamingType. This option is a UInt. System option with the internal name GeneralQuality. This option is a UInt. System option with the internal name OcclusionCulling. This option is a UInt. System option with the internal name ShadowLOD. This option is a UInt. System option with the internal name PhysicsType. This option is a UInt. System option with the internal name MapResolution. This option is a UInt. System option with the internal name ShadowVisibilityTypeSelf. This option is a UInt. System option with the internal name ShadowVisibilityTypeParty. This option is a UInt. System option with the internal name ShadowVisibilityTypeOther. This option is a UInt. System option with the internal name ShadowVisibilityTypeEnemy. This option is a UInt. System option with the internal name PhysicsTypeSelf. This option is a UInt. System option with the internal name PhysicsTypeParty. This option is a UInt. System option with the internal name PhysicsTypeOther. This option is a UInt. System option with the internal name PhysicsTypeEnemy. This option is a UInt. System option with the internal name ReflectionType. This option is a UInt. System option with the internal name ScreenShotImageType. This option is a UInt. System option with the internal name IsSoundDisable. This option is a UInt. System option with the internal name IsSoundAlways. This option is a UInt. System option with the internal name IsSoundBgmAlways. This option is a UInt. System option with the internal name IsSoundSeAlways. This option is a UInt. System option with the internal name IsSoundVoiceAlways. This option is a UInt. System option with the internal name IsSoundSystemAlways. This option is a UInt. System option with the internal name IsSoundEnvAlways. This option is a UInt. System option with the internal name IsSoundPerformAlways. This option is a UInt. System option with the internal name PadGuid. This option is a UInt. System option with the internal name InstanceGuid. This option is a String. System option with the internal name ProductGuid. This option is a String. System option with the internal name DeadArea. This option is a Float. System option with the internal name Alias. This option is a String. System option with the internal name AlwaysInput. This option is a UInt. System option with the internal name ForceFeedBack. This option is a UInt. System option with the internal name PadPovInput. This option is a UInt. System option with the internal name PadMode. This option is a UInt. System option with the internal name PadAvailable. This option is a UInt. System option with the internal name PadReverseConfirmCancel. This option is a UInt. System option with the internal name PadSelectButtonIcon. This option is a UInt. System option with the internal name PadMouseMode. This option is a UInt. System option with the internal name TextPasteEnable. This option is a UInt. System option with the internal name EnablePsFunction. This option is a UInt. System option with the internal name WaterWet. This option is a UInt. System option with the internal name DisplayObjectLimitType. This option is a UInt. System option with the internal name WindowDispNum. This option is a UInt. System option with the internal name ScreenShotDir. This option is a String. System option with the internal name AntiAliasing_DX11. This option is a UInt. System option with the internal name TextureFilterQuality_DX11. This option is a UInt. System option with the internal name TextureAnisotropicQuality_DX11. This option is a UInt. System option with the internal name SSAO_DX11. This option is a UInt. System option with the internal name Glare_DX11. This option is a UInt. System option with the internal name DistortionWater_DX11. This option is a UInt. System option with the internal name DepthOfField_DX11. This option is a UInt. System option with the internal name RadialBlur_DX11. This option is a UInt. System option with the internal name Vignetting_DX11. This option is a UInt. System option with the internal name GrassQuality_DX11. This option is a UInt. System option with the internal name TranslucentQuality_DX11. This option is a UInt. System option with the internal name ShadowSoftShadowType_DX11. This option is a UInt. System option with the internal name ShadowTextureSizeType_DX11. This option is a UInt. System option with the internal name ShadowCascadeCountType_DX11. This option is a UInt. System option with the internal name LodType_DX11. This option is a UInt. System option with the internal name OcclusionCulling_DX11. This option is a UInt. System option with the internal name ShadowLOD_DX11. This option is a UInt. System option with the internal name MapResolution_DX11. This option is a UInt. System option with the internal name ShadowVisibilityTypeSelf_DX11. This option is a UInt. System option with the internal name ShadowVisibilityTypeParty_DX11. This option is a UInt. System option with the internal name ShadowVisibilityTypeOther_DX11. This option is a UInt. System option with the internal name ShadowVisibilityTypeEnemy_DX11. This option is a UInt. System option with the internal name PhysicsTypeSelf_DX11. This option is a UInt. System option with the internal name PhysicsTypeParty_DX11. This option is a UInt. System option with the internal name PhysicsTypeOther_DX11. This option is a UInt. System option with the internal name PhysicsTypeEnemy_DX11. This option is a UInt. System option with the internal name ReflectionType_DX11. This option is a UInt. System option with the internal name WaterWet_DX11. This option is a UInt. System option with the internal name ParallaxOcclusion_DX11. This option is a UInt. System option with the internal name Tessellation_DX11. This option is a UInt. System option with the internal name GlareRepresentation_DX11. This option is a UInt. System option with the internal name DynamicRezoThreshold. This option is a UInt. System option with the internal name GraphicsRezoScale. This option is a UInt. System option with the internal name GraphicsRezoUpscaleType. This option is a UInt. System option with the internal name GrassEnableDynamicInterference. This option is a UInt. System option with the internal name ShadowBgLOD. This option is a UInt. System option with the internal name TextureRezoType. This option is a UInt. System option with the internal name ShadowLightValidType. This option is a UInt. System option with the internal name DynamicRezoEnableCutScene. This option is a UInt. System option with the internal name UiSystemEnlarge. This option is a UInt. System option with the internal name SoundPadSeType. This option is a UInt. System option with the internal name SoundPad. This option is a UInt. System option with the internal name IsSoundPad. This option is a UInt. System option with the internal name TouchPadMouse. This option is a UInt. System option with the internal name TouchPadCursorSpeed. This option is a UInt. System option with the internal name TouchPadButtonExtension. This option is a UInt. System option with the internal name TouchPadButton_Left. This option is a UInt. System option with the internal name TouchPadButton_Right. This option is a UInt. System option with the internal name RemotePlayRearTouchpadEnable. This option is a UInt. System option with the internal name SupportButtonAutorunEnable. This option is a UInt. System option with the internal name R3ButtonWindowScalingEnable. This option is a UInt. System option with the internal name AutoAfkSwitchingTime. This option is a UInt. System option with the internal name AutoChangeCameraMode. This option is a UInt. System option with the internal name AccessibilitySoundVisualEnable. This option is a UInt. System option with the internal name AccessibilitySoundVisualDispSize. This option is a UInt. System option with the internal name AccessibilitySoundVisualPermeabilityRate. This option is a UInt. System option with the internal name AccessibilityColorBlindFilterEnable. This option is a UInt. System option with the internal name AccessibilityColorBlindFilterType. This option is a UInt. System option with the internal name AccessibilityColorBlindFilterStrength. This option is a UInt. System option with the internal name MouseAutoFocus. This option is a UInt. System option with the internal name FPSDownAFK. This option is a UInt. System option with the internal name IdlingCameraAFK. This option is a UInt. System option with the internal name MouseSpeed. This option is a Float. System option with the internal name CameraZoom. This option is a UInt. System option with the internal name DynamicRezoType. This option is a UInt. System option with the internal name Is3DAudio. This option is a UInt. System option with the internal name BattleEffect. This option is a UInt. System option with the internal name BGEffect. This option is a UInt. System option with the internal name ColorThemeType. This option is a UInt. System option with the internal name SystemMouseOperationSoftOn. This option is a UInt. System option with the internal name SystemMouseOperationTrajectory. This option is a UInt. System option with the internal name SystemMouseOperationCursorScaling. This option is a UInt. System option with the internal name HardwareCursorSize. This option is a UInt. System option with the internal name UiAssetType. This option is a UInt. System option with the internal name FellowshipShowNewNotice. This option is a UInt. System option with the internal name CutsceneMovieVoice. This option is a UInt. System option with the internal name CutsceneMovieCaption. This option is a UInt. System option with the internal name CutsceneMovieOpening. This option is a UInt. System option with the internal name SoundMaster. This option is a UInt. System option with the internal name SoundBgm. This option is a UInt. System option with the internal name SoundSe. This option is a UInt. System option with the internal name SoundVoice. This option is a UInt. System option with the internal name SoundEnv. This option is a UInt. System option with the internal name SoundSystem. This option is a UInt. System option with the internal name SoundPerform. This option is a UInt. System option with the internal name SoundPlayer. This option is a UInt. System option with the internal name SoundParty. This option is a UInt. System option with the internal name SoundOther. This option is a UInt. System option with the internal name IsSndMaster. This option is a UInt. System option with the internal name IsSndBgm. This option is a UInt. System option with the internal name IsSndSe. This option is a UInt. System option with the internal name IsSndVoice. This option is a UInt. System option with the internal name IsSndEnv. This option is a UInt. System option with the internal name IsSndSystem. This option is a UInt. System option with the internal name IsSndPerform. This option is a UInt. System option with the internal name SoundDolby. This option is a UInt. System option with the internal name SoundMicpos. This option is a UInt. System option with the internal name SoundChocobo. This option is a UInt. System option with the internal name SoundFieldBattle. This option is a UInt. System option with the internal name SoundCfTimeCount. This option is a UInt. System option with the internal name SoundHousing. This option is a UInt. System option with the internal name SoundEqualizerType. This option is a UInt. System option with the internal name PadButton_L2. This option is a String. System option with the internal name PadButton_R2. This option is a String. System option with the internal name PadButton_L1. This option is a String. System option with the internal name PadButton_R1. This option is a String. System option with the internal name PadButton_Triangle. This option is a String. System option with the internal name PadButton_Circle. This option is a String. System option with the internal name PadButton_Cross. This option is a String. System option with the internal name PadButton_Square. This option is a String. System option with the internal name PadButton_Select. This option is a String. System option with the internal name PadButton_Start. This option is a String. System option with the internal name PadButton_LS. This option is a String. System option with the internal name PadButton_RS. This option is a String. System option with the internal name PadButton_L3. This option is a String. System option with the internal name PadButton_R3. This option is a String. System option with the internal name ActiveInstanceGuid. This option is a String. System option with the internal name ActiveProductGuid. This option is a String. System option with the internal name MsqProgress. This option is a UInt. System option with the internal name PromptConfigUpdate. This option is a UInt. System option with the internal name TitleScreenType. This option is a UInt. System option with the internal name FirstConfigBackup. This option is a UInt. Config options in the UiConfig section. UiConfig option with the internal name BattleEffectSelf. This option is a UInt. UiConfig option with the internal name BattleEffectParty. This option is a UInt. UiConfig option with the internal name BattleEffectOther. This option is a UInt. UiConfig option with the internal name BattleEffectPvPEnemyPc. This option is a UInt. UiConfig option with the internal name WeaponAutoPutAway. This option is a UInt. UiConfig option with the internal name WeaponAutoPutAwayTime. This option is a UInt. UiConfig option with the internal name LipMotionType. This option is a UInt. UiConfig option with the internal name FirstPersonDefaultYAngle. This option is a Float. UiConfig option with the internal name FirstPersonDefaultZoom. This option is a Float. UiConfig option with the internal name FirstPersonDefaultDistance. This option is a Float. UiConfig option with the internal name ThirdPersonDefaultYAngle. This option is a Float. UiConfig option with the internal name ThirdPersonDefaultZoom. This option is a Float. UiConfig option with the internal name ThirdPersonDefaultDistance. This option is a Float. UiConfig option with the internal name LockonDefaultYAngle. This option is a Float. UiConfig option with the internal name LockonDefaultZoom. This option is a Float. UiConfig option with the internal name LockonDefaultZoom_179. This option is a Float. UiConfig option with the internal name CameraProductionOfAction. This option is a UInt. UiConfig option with the internal name FPSCameraInterpolationType. This option is a UInt. UiConfig option with the internal name FPSCameraVerticalInterpolation. This option is a UInt. UiConfig option with the internal name LegacyCameraCorrectionFix. This option is a UInt. UiConfig option with the internal name LegacyCameraType. This option is a UInt. UiConfig option with the internal name EventCameraAutoControl. This option is a UInt. UiConfig option with the internal name CameraLookBlinkType. This option is a UInt. UiConfig option with the internal name IdleEmoteTime. This option is a UInt. UiConfig option with the internal name IdleEmoteRandomType. This option is a UInt. UiConfig option with the internal name CutsceneSkipIsShip. This option is a UInt. UiConfig option with the internal name CutsceneSkipIsContents. This option is a UInt. UiConfig option with the internal name CutsceneSkipIsHousing. This option is a UInt. UiConfig option with the internal name PetTargetOffInCombat. This option is a UInt. UiConfig option with the internal name GroundTargetFPSPosX. This option is a UInt. UiConfig option with the internal name GroundTargetFPSPosY. This option is a UInt. UiConfig option with the internal name GroundTargetTPSPosX. This option is a UInt. UiConfig option with the internal name GroundTargetTPSPosY. This option is a UInt. UiConfig option with the internal name TargetDisableAnchor. This option is a UInt. UiConfig option with the internal name TargetCircleClickFilterEnableNearestCursor. This option is a UInt. UiConfig option with the internal name TargetEnableMouseOverSelect. This option is a UInt. UiConfig option with the internal name GroundTargetCursorCorrectType. This option is a UInt. UiConfig option with the internal name GroundTargetActionExcuteType. This option is a UInt. UiConfig option with the internal name AutoNearestTarget. This option is a UInt. UiConfig option with the internal name AutoNearestTargetType. This option is a UInt. UiConfig option with the internal name RightClickExclusionPC. This option is a UInt. UiConfig option with the internal name RightClickExclusionBNPC. This option is a UInt. UiConfig option with the internal name RightClickExclusionMinion. This option is a UInt. UiConfig option with the internal name TurnSpeed. This option is a UInt. UiConfig option with the internal name FootEffect. This option is a UInt. UiConfig option with the internal name LegacySeal. This option is a UInt. UiConfig option with the internal name GBarrelDisp. This option is a UInt. UiConfig option with the internal name EgiMirageTypeGaruda. This option is a UInt. UiConfig option with the internal name EgiMirageTypeTitan. This option is a UInt. UiConfig option with the internal name EgiMirageTypeIfrit. This option is a UInt. UiConfig option with the internal name BahamutSize. This option is a UInt. UiConfig option with the internal name PetMirageTypeCarbuncleSupport. This option is a UInt. UiConfig option with the internal name PhoenixSize. This option is a UInt. UiConfig option with the internal name GarudaSize. This option is a UInt. UiConfig option with the internal name TitanSize. This option is a UInt. UiConfig option with the internal name IfritSize. This option is a UInt. UiConfig option with the internal name SolBahamutSize. This option is a UInt. UiConfig option with the internal name PetMirageTypeFairy. This option is a UInt. UiConfig option with the internal name TimeMode. This option is a UInt. UiConfig option with the internal name Time12. This option is a UInt. UiConfig option with the internal name TimeEorzea. This option is a UInt. UiConfig option with the internal name TimeLocal. This option is a UInt. UiConfig option with the internal name TimeServer. This option is a UInt. UiConfig option with the internal name ActiveLS_H. This option is a UInt. UiConfig option with the internal name ActiveLS_L. This option is a UInt. UiConfig option with the internal name HotbarLock. This option is a UInt. UiConfig option with the internal name HotbarDispRecastTime. This option is a UInt. UiConfig option with the internal name HotbarCrossContentsActionEnableInput. This option is a UInt. UiConfig option with the internal name HotbarDispRecastTimeDispType. This option is a UInt. UiConfig option with the internal name ExHotbarChangeHotbar1. This option is a UInt. UiConfig option with the internal name HotbarCommon01. This option is a UInt. UiConfig option with the internal name HotbarCommon02. This option is a UInt. UiConfig option with the internal name HotbarCommon03. This option is a UInt. UiConfig option with the internal name HotbarCommon04. This option is a UInt. UiConfig option with the internal name HotbarCommon05. This option is a UInt. UiConfig option with the internal name HotbarCommon06. This option is a UInt. UiConfig option with the internal name HotbarCommon07. This option is a UInt. UiConfig option with the internal name HotbarCommon08. This option is a UInt. UiConfig option with the internal name HotbarCommon09. This option is a UInt. UiConfig option with the internal name HotbarCommon10. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon01. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon02. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon03. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon04. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon05. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon06. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon07. This option is a UInt. UiConfig option with the internal name HotbarCrossCommon08. This option is a UInt. UiConfig option with the internal name HotbarCrossHelpDisp. This option is a UInt. UiConfig option with the internal name HotbarCrossOperation. This option is a UInt. UiConfig option with the internal name HotbarCrossDisp. This option is a UInt. UiConfig option with the internal name HotbarCrossLock. This option is a UInt. UiConfig option with the internal name HotbarCrossUsePadGuide. This option is a UInt. UiConfig option with the internal name HotbarCrossActiveSet. This option is a UInt. UiConfig option with the internal name HotbarCrossActiveSetPvP. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsAuto. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustom. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet1. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet2. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet3. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet4. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet5. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet6. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet7. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet8. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSword. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet1. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet2. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet3. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet4. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet5. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet6. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet7. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet8. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSetting. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSettingLeft. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSettingRight. This option is a UInt. UiConfig option with the internal name HotbarCrossSetPvpModeActive. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomPvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsAutoPvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet1Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet2Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet3Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet4Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet5Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet6Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet7Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomSet8Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordPvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet1Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet2Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet3Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet4Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet5Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet6Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet7Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossSetChangeCustomIsSwordSet8Pvp. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSettingPvp. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSettingLeftPvp. This option is a UInt. UiConfig option with the internal name HotbarCrossAdvancedSettingRightPvp. This option is a UInt. UiConfig option with the internal name HotbarWXHBEnable. This option is a UInt. UiConfig option with the internal name HotbarWXHBSetLeft. This option is a UInt. UiConfig option with the internal name HotbarWXHBSetRight. This option is a UInt. UiConfig option with the internal name HotbarWXHBEnablePvP. This option is a UInt. UiConfig option with the internal name HotbarWXHBSetLeftPvP. This option is a UInt. UiConfig option with the internal name HotbarWXHBSetRightPvP. This option is a UInt. UiConfig option with the internal name HotbarWXHB8Button. This option is a UInt. UiConfig option with the internal name HotbarWXHB8ButtonPvP. This option is a UInt. UiConfig option with the internal name HotbarWXHBSetInputTime. This option is a UInt. UiConfig option with the internal name HotbarWXHBDisplay. This option is a UInt. UiConfig option with the internal name HotbarWXHBFreeLayout. This option is a UInt. UiConfig option with the internal name HotbarXHBActiveTransmissionAlpha. This option is a UInt. UiConfig option with the internal name HotbarXHBAlphaDefault. This option is a UInt. UiConfig option with the internal name HotbarXHBAlphaActiveSet. This option is a UInt. UiConfig option with the internal name HotbarXHBAlphaInactiveSet. This option is a UInt. UiConfig option with the internal name HotbarWXHBInputOnce. This option is a UInt. UiConfig option with the internal name ExHotbarChangeHotbar1IsFashion. This option is a UInt. UiConfig option with the internal name HotbarCrossUseExDirectionAutoSwitch. This option is a UInt. UiConfig option with the internal name IdlingCameraSwitchType. This option is a UInt. UiConfig option with the internal name HotbarXHBEditEnable. This option is a UInt. UiConfig option with the internal name PlateType. This option is a UInt. UiConfig option with the internal name PlateDispHPBar. This option is a UInt. UiConfig option with the internal name PlateDisableMaxHPBar. This option is a UInt. UiConfig option with the internal name NamePlateHpSizeType. This option is a UInt. UiConfig option with the internal name NamePlateColorSelf. This option is a UInt. UiConfig option with the internal name NamePlateEdgeSelf. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeSelf. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeSelf. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeSelf. This option is a UInt. UiConfig option with the internal name NamePlateColorSelfBuddy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeSelfBuddy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeSelfBuddy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeSelfBuddy. This option is a UInt. UiConfig option with the internal name NamePlateColorSelfPet. This option is a UInt. UiConfig option with the internal name NamePlateEdgeSelfPet. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeSelfPet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeSelfPet. This option is a UInt. UiConfig option with the internal name NamePlateColorParty. This option is a UInt. UiConfig option with the internal name NamePlateEdgeParty. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeParty. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeParty. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeParty. This option is a UInt. UiConfig option with the internal name NamePlateDispTypePartyPet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypePartyPet. This option is a UInt. UiConfig option with the internal name NamePlateDispTypePartyBuddy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypePartyBuddy. This option is a UInt. UiConfig option with the internal name NamePlateColorAlliance. This option is a UInt. UiConfig option with the internal name NamePlateEdgeAlliance. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeAlliance. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeAlliance. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeAlliance. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeAlliancePet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeAlliancePet. This option is a UInt. UiConfig option with the internal name NamePlateColorOther. This option is a UInt. UiConfig option with the internal name NamePlateEdgeOther. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeOther. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeOther. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeOther. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeOtherPet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeOtherPet. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeOtherBuddy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeOtherBuddy. This option is a UInt. UiConfig option with the internal name NamePlateColorUnengagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeUnengagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeUnengagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeUnengagedEmemy. This option is a UInt. UiConfig option with the internal name NamePlateColorEngagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeEngagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeEngagedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeEngagedEmemy. This option is a UInt. UiConfig option with the internal name NamePlateColorClaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeClaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeClaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeClaimedEmemy. This option is a UInt. UiConfig option with the internal name NamePlateColorUnclaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeUnclaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeUnclaimedEnemy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeUnclaimedEmemy. This option is a UInt. UiConfig option with the internal name NamePlateColorNpc. This option is a UInt. UiConfig option with the internal name NamePlateEdgeNpc. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeNpc. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeNpc. This option is a UInt. UiConfig option with the internal name NamePlateColorObject. This option is a UInt. UiConfig option with the internal name NamePlateEdgeObject. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeObject. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeObject. This option is a UInt. UiConfig option with the internal name NamePlateColorMinion. This option is a UInt. UiConfig option with the internal name NamePlateEdgeMinion. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeMinion. This option is a UInt. UiConfig option with the internal name NamePlateColorOtherBuddy. This option is a UInt. UiConfig option with the internal name NamePlateEdgeOtherBuddy. This option is a UInt. UiConfig option with the internal name NamePlateColorOtherPet. This option is a UInt. UiConfig option with the internal name NamePlateEdgeOtherPet. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeSelf. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeParty. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeAlliance. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeOther. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeFriend. This option is a UInt. UiConfig option with the internal name NamePlateColorFriend. This option is a UInt. UiConfig option with the internal name NamePlateColorFriendEdge. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeFriend. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeFriend. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeFriend. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeFriendPet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeFriendPet. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeFriendBuddy. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeFriendBuddy. This option is a UInt. UiConfig option with the internal name NamePlateColorLim. This option is a UInt. UiConfig option with the internal name NamePlateColorLimEdge. This option is a UInt. UiConfig option with the internal name NamePlateColorGri. This option is a UInt. UiConfig option with the internal name NamePlateColorGriEdge. This option is a UInt. UiConfig option with the internal name NamePlateColorUld. This option is a UInt. UiConfig option with the internal name NamePlateColorUldEdge. This option is a UInt. UiConfig option with the internal name NamePlateColorHousingFurniture. This option is a UInt. UiConfig option with the internal name NamePlateColorHousingFurnitureEdge. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeHousingFurniture. This option is a UInt. UiConfig option with the internal name NamePlateColorHousingField. This option is a UInt. UiConfig option with the internal name NamePlateColorHousingFieldEdge. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeHousingField. This option is a UInt. UiConfig option with the internal name NamePlateNameTypePvPEnemy. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeFeast. This option is a UInt. UiConfig option with the internal name NamePlateNameTypeFeast. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeFeast. This option is a UInt. UiConfig option with the internal name NamePlateDispTypeFeastPet. This option is a UInt. UiConfig option with the internal name NamePlateHpTypeFeastPet. This option is a UInt. UiConfig option with the internal name NamePlateNameTitleTypeFeast. This option is a UInt. UiConfig option with the internal name NamePlateDispSize. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIcon. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIconType. This option is a UInt. UiConfig option with the internal name NamePlateSetRoleColor. This option is a UInt. UiConfig option with the internal name NamePlateColorTank. This option is a UInt. UiConfig option with the internal name NamePlateEdgeTank. This option is a UInt. UiConfig option with the internal name NamePlateColorHealer. This option is a UInt. UiConfig option with the internal name NamePlateEdgeHealer. This option is a UInt. UiConfig option with the internal name NamePlateColorDps. This option is a UInt. UiConfig option with the internal name NamePlateEdgeDps. This option is a UInt. UiConfig option with the internal name NamePlateColorOtherClass. This option is a UInt. UiConfig option with the internal name NamePlateEdgeOtherClass. This option is a UInt. UiConfig option with the internal name NamePlateDispWorldTravel. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIconInPublicParty. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIconInPublicOther. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIconInInstanceParty. This option is a UInt. UiConfig option with the internal name NamePlateDispJobIconInInstanceOther. This option is a UInt. UiConfig option with the internal name ActiveInfo. This option is a UInt. UiConfig option with the internal name PartyList. This option is a UInt. UiConfig option with the internal name PartyListStatus. This option is a UInt. UiConfig option with the internal name PartyListStatusTimer. This option is a UInt. UiConfig option with the internal name EnemyList. This option is a UInt. UiConfig option with the internal name TargetInfo. This option is a UInt. UiConfig option with the internal name Gil. This option is a UInt. UiConfig option with the internal name DTR. This option is a UInt. UiConfig option with the internal name PlayerInfo. This option is a UInt. UiConfig option with the internal name NaviMap. This option is a UInt. UiConfig option with the internal name Help. This option is a UInt. UiConfig option with the internal name CrossMainHelp. This option is a UInt. UiConfig option with the internal name HousingLocatePreview. This option is a UInt. UiConfig option with the internal name Log. This option is a UInt. UiConfig option with the internal name LogTell. This option is a UInt. UiConfig option with the internal name LogFontSize. This option is a UInt. UiConfig option with the internal name LogTabName2. This option is a String. UiConfig option with the internal name LogTabName3. This option is a String. UiConfig option with the internal name LogTabFilter0. This option is a UInt. UiConfig option with the internal name LogTabFilter1. This option is a UInt. UiConfig option with the internal name LogTabFilter2. This option is a UInt. UiConfig option with the internal name LogTabFilter3. This option is a UInt. UiConfig option with the internal name LogChatFilter. This option is a UInt. UiConfig option with the internal name LogEnableErrMsgLv1. This option is a UInt. UiConfig option with the internal name LogNameType. This option is a UInt. UiConfig option with the internal name LogTimeDisp. This option is a UInt. UiConfig option with the internal name LogTimeSettingType. This option is a UInt. UiConfig option with the internal name LogTimeDispType. This option is a UInt. UiConfig option with the internal name IsLogTell. This option is a UInt. UiConfig option with the internal name IsLogParty. This option is a UInt. UiConfig option with the internal name LogParty. This option is a UInt. UiConfig option with the internal name IsLogAlliance. This option is a UInt. UiConfig option with the internal name LogAlliance. This option is a UInt. UiConfig option with the internal name IsLogFc. This option is a UInt. UiConfig option with the internal name LogFc. This option is a UInt. UiConfig option with the internal name IsLogPvpTeam. This option is a UInt. UiConfig option with the internal name LogPvpTeam. This option is a UInt. UiConfig option with the internal name IsLogLs1. This option is a UInt. UiConfig option with the internal name LogLs1. This option is a UInt. UiConfig option with the internal name IsLogLs2. This option is a UInt. UiConfig option with the internal name LogLs2. This option is a UInt. UiConfig option with the internal name IsLogLs3. This option is a UInt. UiConfig option with the internal name LogLs3. This option is a UInt. UiConfig option with the internal name IsLogLs4. This option is a UInt. UiConfig option with the internal name LogLs4. This option is a UInt. UiConfig option with the internal name IsLogLs5. This option is a UInt. UiConfig option with the internal name LogLs5. This option is a UInt. UiConfig option with the internal name IsLogLs6. This option is a UInt. UiConfig option with the internal name LogLs6. This option is a UInt. UiConfig option with the internal name IsLogLs7. This option is a UInt. UiConfig option with the internal name LogLs7. This option is a UInt. UiConfig option with the internal name IsLogLs8. This option is a UInt. UiConfig option with the internal name LogLs8. This option is a UInt. UiConfig option with the internal name IsLogBeginner. This option is a UInt. UiConfig option with the internal name LogBeginner. This option is a UInt. UiConfig option with the internal name IsLogCwls. This option is a UInt. UiConfig option with the internal name IsLogCwls2. This option is a UInt. UiConfig option with the internal name IsLogCwls3. This option is a UInt. UiConfig option with the internal name IsLogCwls4. This option is a UInt. UiConfig option with the internal name IsLogCwls5. This option is a UInt. UiConfig option with the internal name IsLogCwls6. This option is a UInt. UiConfig option with the internal name IsLogCwls7. This option is a UInt. UiConfig option with the internal name IsLogCwls8. This option is a UInt. UiConfig option with the internal name LogCwls. This option is a UInt. UiConfig option with the internal name LogCwls2. This option is a UInt. UiConfig option with the internal name LogCwls3. This option is a UInt. UiConfig option with the internal name LogCwls4. This option is a UInt. UiConfig option with the internal name LogCwls5. This option is a UInt. UiConfig option with the internal name LogCwls6. This option is a UInt. UiConfig option with the internal name LogCwls7. This option is a UInt. UiConfig option with the internal name LogCwls8. This option is a UInt. UiConfig option with the internal name LogRecastActionErrDisp. This option is a UInt. UiConfig option with the internal name LogPermeationRate. This option is a UInt. UiConfig option with the internal name LogFontSizeForm. This option is a UInt. UiConfig option with the internal name LogItemLinkEnableType. This option is a UInt. UiConfig option with the internal name LogFontSizeLog2. This option is a UInt. UiConfig option with the internal name LogTimeDispLog2. This option is a UInt. UiConfig option with the internal name LogPermeationRateLog2. This option is a UInt. UiConfig option with the internal name LogFontSizeLog3. This option is a UInt. UiConfig option with the internal name LogTimeDispLog3. This option is a UInt. UiConfig option with the internal name LogPermeationRateLog3. This option is a UInt. UiConfig option with the internal name LogFontSizeLog4. This option is a UInt. UiConfig option with the internal name LogTimeDispLog4. This option is a UInt. UiConfig option with the internal name LogPermeationRateLog4. This option is a UInt. UiConfig option with the internal name LogFlyingHeightMaxErrDisp. This option is a UInt. UiConfig option with the internal name LogCrossWorldName. This option is a UInt. UiConfig option with the internal name LogDragResize. This option is a UInt. UiConfig option with the internal name LogNameIconType. This option is a UInt. UiConfig option with the internal name LogDispClassJobName. This option is a UInt. UiConfig option with the internal name LogSetRoleColor. This option is a UInt. UiConfig option with the internal name LogColorRoleTank. This option is a UInt. UiConfig option with the internal name LogColorRoleHealer. This option is a UInt. UiConfig option with the internal name LogColorRoleDPS. This option is a UInt. UiConfig option with the internal name LogColorOtherClass. This option is a UInt. UiConfig option with the internal name ChatType. This option is a UInt. UiConfig option with the internal name ShopSell. This option is a UInt. UiConfig option with the internal name ColorSay. This option is a UInt. UiConfig option with the internal name ColorShout. This option is a UInt. UiConfig option with the internal name ColorTell. This option is a UInt. UiConfig option with the internal name ColorParty. This option is a UInt. UiConfig option with the internal name ColorAlliance. This option is a UInt. UiConfig option with the internal name ColorLS1. This option is a UInt. UiConfig option with the internal name ColorLS2. This option is a UInt. UiConfig option with the internal name ColorLS3. This option is a UInt. UiConfig option with the internal name ColorLS4. This option is a UInt. UiConfig option with the internal name ColorLS5. This option is a UInt. UiConfig option with the internal name ColorLS6. This option is a UInt. UiConfig option with the internal name ColorLS7. This option is a UInt. UiConfig option with the internal name ColorLS8. This option is a UInt. UiConfig option with the internal name ColorFCompany. This option is a UInt. UiConfig option with the internal name ColorPvPGroup. This option is a UInt. UiConfig option with the internal name ColorPvPGroupAnnounce. This option is a UInt. UiConfig option with the internal name ColorBeginner. This option is a UInt. UiConfig option with the internal name ColorEmoteUser. This option is a UInt. UiConfig option with the internal name ColorEmote. This option is a UInt. UiConfig option with the internal name ColorYell. This option is a UInt. UiConfig option with the internal name ColorBeginnerAnnounce. This option is a UInt. UiConfig option with the internal name ColorCWLS. This option is a UInt. UiConfig option with the internal name ColorCWLS2. This option is a UInt. UiConfig option with the internal name ColorCWLS3. This option is a UInt. UiConfig option with the internal name ColorCWLS4. This option is a UInt. UiConfig option with the internal name ColorCWLS5. This option is a UInt. UiConfig option with the internal name ColorCWLS6. This option is a UInt. UiConfig option with the internal name ColorCWLS7. This option is a UInt. UiConfig option with the internal name ColorCWLS8. This option is a UInt. UiConfig option with the internal name ColorAttackSuccess. This option is a UInt. UiConfig option with the internal name ColorAttackFailure. This option is a UInt. UiConfig option with the internal name ColorAction. This option is a UInt. UiConfig option with the internal name ColorItem. This option is a UInt. UiConfig option with the internal name ColorCureGive. This option is a UInt. UiConfig option with the internal name ColorBuffGive. This option is a UInt. UiConfig option with the internal name ColorDebuffGive. This option is a UInt. UiConfig option with the internal name ColorEcho. This option is a UInt. UiConfig option with the internal name ColorSysMsg. This option is a UInt. UiConfig option with the internal name ColorFCAnnounce. This option is a UInt. UiConfig option with the internal name ColorSysBattle. This option is a UInt. UiConfig option with the internal name ColorSysGathering. This option is a UInt. UiConfig option with the internal name ColorSysErr. This option is a UInt. UiConfig option with the internal name ColorNpcSay. This option is a UInt. UiConfig option with the internal name ColorItemNotice. This option is a UInt. UiConfig option with the internal name ColorGrowup. This option is a UInt. UiConfig option with the internal name ColorLoot. This option is a UInt. UiConfig option with the internal name ColorCraft. This option is a UInt. UiConfig option with the internal name ColorGathering. This option is a UInt. UiConfig option with the internal name ShopConfirm. This option is a UInt. UiConfig option with the internal name ShopConfirmMateria. This option is a UInt. UiConfig option with the internal name ShopConfirmExRare. This option is a UInt. UiConfig option with the internal name ShopConfirmSpiritBondMax. This option is a UInt. UiConfig option with the internal name ItemSortItemCategory. This option is a UInt. UiConfig option with the internal name ItemSortEquipLevel. This option is a UInt. UiConfig option with the internal name ItemSortItemLevel. This option is a UInt. UiConfig option with the internal name ItemSortItemStack. This option is a UInt. UiConfig option with the internal name ItemSortTidyingType. This option is a UInt. UiConfig option with the internal name ItemNoArmoryMaskOff. This option is a UInt. UiConfig option with the internal name ItemInventryStoreEnd. This option is a UInt. UiConfig option with the internal name InfoSettingDispWorldNameType. This option is a UInt. UiConfig option with the internal name TargetNamePlateNameType. This option is a UInt. UiConfig option with the internal name FocusTargetNamePlateNameType. This option is a UInt. UiConfig option with the internal name ItemDetailTemporarilySwitch. This option is a UInt. UiConfig option with the internal name ItemDetailTemporarilySwitchKey. This option is a UInt. UiConfig option with the internal name ItemDetailTemporarilyHide. This option is a UInt. UiConfig option with the internal name ItemDetailTemporarilyHideKey. This option is a UInt. UiConfig option with the internal name ToolTipDispSize. This option is a UInt. UiConfig option with the internal name RecommendLoginDisp. This option is a UInt. UiConfig option with the internal name RecommendAreaChangeDisp. This option is a UInt. UiConfig option with the internal name PlayGuideLoginDisp. This option is a UInt. UiConfig option with the internal name PlayGuideAreaChangeDisp. This option is a UInt. UiConfig option with the internal name MapPadOperationYReverse. This option is a UInt. UiConfig option with the internal name MapPadOperationXReverse. This option is a UInt. UiConfig option with the internal name MapDispSize. This option is a UInt. UiConfig option with the internal name FlyTextDispSize. This option is a UInt. UiConfig option with the internal name PopUpTextDispSize. This option is a UInt. UiConfig option with the internal name DetailDispDelayType. This option is a UInt. UiConfig option with the internal name PartyListSortTypeTank. This option is a UInt. UiConfig option with the internal name PartyListSortTypeHealer. This option is a UInt. UiConfig option with the internal name PartyListSortTypeDps. This option is a UInt. UiConfig option with the internal name PartyListSortTypeOther. This option is a UInt. UiConfig option with the internal name RatioHpDisp. This option is a UInt. UiConfig option with the internal name BuffDispType. This option is a UInt. UiConfig option with the internal name ContentsFinderListSortType. This option is a UInt. UiConfig option with the internal name ContentsFinderSupplyEnable. This option is a UInt. UiConfig option with the internal name EnemyListCastbarEnable. This option is a UInt. UiConfig option with the internal name AchievementAppealLoginDisp. This option is a UInt. UiConfig option with the internal name ContentsFinderUseLangTypeJA. This option is a UInt. UiConfig option with the internal name ContentsFinderUseLangTypeEN. This option is a UInt. UiConfig option with the internal name ContentsFinderUseLangTypeDE. This option is a UInt. UiConfig option with the internal name ContentsFinderUseLangTypeFR. This option is a UInt. UiConfig option with the internal name ItemInventryWindowSizeType. This option is a UInt. UiConfig option with the internal name ItemInventryRetainerWindowSizeType. This option is a UInt. UiConfig option with the internal name BattleTalkShowFace. This option is a UInt. UiConfig option with the internal name BannerContentsDispType. This option is a UInt. UiConfig option with the internal name BannerContentsNotice. This option is a UInt. UiConfig option with the internal name MipDispType. This option is a UInt. UiConfig option with the internal name BannerContentsOrderType. This option is a UInt. UiConfig option with the internal name CCProgressAllyFixLeftSide. This option is a UInt. UiConfig option with the internal name CCMapAllyFixLeftSide. This option is a UInt. UiConfig option with the internal name DispCCCountDown. This option is a UInt. UiConfig option with the internal name EmoteTextType. This option is a UInt. UiConfig option with the internal name IsEmoteSe. This option is a UInt. UiConfig option with the internal name EmoteSeType. This option is a UInt. UiConfig option with the internal name PartyFinderNewArrivalDisp. This option is a UInt. UiConfig option with the internal name GPoseTargetFilterNPCLookAt. This option is a UInt. UiConfig option with the internal name GPoseMotionFilterAction. This option is a UInt. UiConfig option with the internal name LsListSortPriority. This option is a UInt. UiConfig option with the internal name FriendListSortPriority. This option is a UInt. UiConfig option with the internal name FriendListFilterType. This option is a UInt. UiConfig option with the internal name FriendListSortType. This option is a UInt. UiConfig option with the internal name LetterListFilterType. This option is a UInt. UiConfig option with the internal name LetterListSortType. This option is a UInt. UiConfig option with the internal name ContentsReplayEnable. This option is a UInt. UiConfig option with the internal name MouseWheelOperationUp. This option is a UInt. UiConfig option with the internal name MouseWheelOperationDown. This option is a UInt. UiConfig option with the internal name MouseWheelOperationCtrlUp. This option is a UInt. UiConfig option with the internal name MouseWheelOperationCtrlDown. This option is a UInt. UiConfig option with the internal name MouseWheelOperationAltUp. This option is a UInt. UiConfig option with the internal name MouseWheelOperationAltDown. This option is a UInt. UiConfig option with the internal name MouseWheelOperationShiftUp. This option is a UInt. UiConfig option with the internal name MouseWheelOperationShiftDown. This option is a UInt. UiConfig option with the internal name TelepoTicketUseType. This option is a UInt. UiConfig option with the internal name TelepoTicketGilSetting. This option is a UInt. UiConfig option with the internal name TelepoCategoryType. This option is a UInt. UiConfig option with the internal name HidePcAroundQuestProgressNpc. This option is a UInt. UiConfig option with the internal name HidePcAroundQuestProgressNpcIncludeParty. This option is a UInt. UiConfig option with the internal name HidePcAroundNpcAccessingQuest. This option is a UInt. UiConfig option with the internal name HidePcAroundNpcAccessingQuestIncludeParty. This option is a UInt. UiConfig option with the internal name PvPFrontlinesGCFree. This option is a UInt. UiConfig option with the internal name PadMode. This option is a UInt. UiConfig option with the internal name EnableMoveTiltCharacter. This option is a UInt. UiConfig option with the internal name EnableMoveTiltMountGround. This option is a UInt. UiConfig option with the internal name EnableMoveTiltMountFly. This option is a UInt. Config options in the UiControl section. UiControl option with the internal name AutoChangePointOfView. This option is a UInt. UiControl option with the internal name KeyboardCameraInterpolationType. This option is a UInt. UiControl option with the internal name KeyboardCameraVerticalInterpolation. This option is a UInt. UiControl option with the internal name TiltOffset. This option is a Float. UiControl option with the internal name KeyboardSpeed. This option is a Float. UiControl option with the internal name PadSpeed. This option is a Float. UiControl option with the internal name PadFpsXReverse. This option is a UInt. UiControl option with the internal name PadFpsYReverse. This option is a UInt. UiControl option with the internal name PadTpsXReverse. This option is a UInt. UiControl option with the internal name PadTpsYReverse. This option is a UInt. UiControl option with the internal name MouseFpsXReverse. This option is a UInt. UiControl option with the internal name MouseFpsYReverse. This option is a UInt. UiControl option with the internal name MouseTpsXReverse. This option is a UInt. UiControl option with the internal name MouseTpsYReverse. This option is a UInt. UiControl option with the internal name MouseCharaViewRotYReverse. This option is a UInt. UiControl option with the internal name MouseCharaViewRotXReverse. This option is a UInt. UiControl option with the internal name MouseCharaViewMoveYReverse. This option is a UInt. UiControl option with the internal name MouseCharaViewMoveXReverse. This option is a UInt. UiControl option with the internal name PADCharaViewRotYReverse. This option is a UInt. UiControl option with the internal name PADCharaViewRotXReverse. This option is a UInt. UiControl option with the internal name PADCharaViewMoveYReverse. This option is a UInt. UiControl option with the internal name PADCharaViewMoveXReverse. This option is a UInt. UiControl option with the internal name FlyingControlType. This option is a UInt. UiControl option with the internal name FlyingLegacyAutorun. This option is a UInt. UiControl option with the internal name AutoFaceTargetOnAction. This option is a UInt. UiControl option with the internal name SelfClick. This option is a UInt. UiControl option with the internal name NoTargetClickCancel. This option is a UInt. UiControl option with the internal name AutoTarget. This option is a UInt. UiControl option with the internal name TargetTypeSelect. This option is a UInt. UiControl option with the internal name AutoLockOn. This option is a UInt. UiControl option with the internal name CircleBattleModeAutoChange. This option is a UInt. UiControl option with the internal name CircleIsCustom. This option is a UInt. UiControl option with the internal name CircleSwordDrawnIsActive. This option is a UInt. UiControl option with the internal name CircleSwordDrawnNonPartyPc. This option is a UInt. UiControl option with the internal name CircleSwordDrawnParty. This option is a UInt. UiControl option with the internal name CircleSwordDrawnEnemy. This option is a UInt. UiControl option with the internal name CircleSwordDrawnAggro. This option is a UInt. UiControl option with the internal name CircleSwordDrawnNpcOrObject. This option is a UInt. UiControl option with the internal name CircleSwordDrawnMinion. This option is a UInt. UiControl option with the internal name CircleSwordDrawnDutyEnemy. This option is a UInt. UiControl option with the internal name CircleSwordDrawnPet. This option is a UInt. UiControl option with the internal name CircleSwordDrawnAlliance. This option is a UInt. UiControl option with the internal name CircleSwordDrawnMark. This option is a UInt. UiControl option with the internal name CircleSheathedIsActive. This option is a UInt. UiControl option with the internal name CircleSheathedNonPartyPc. This option is a UInt. UiControl option with the internal name CircleSheathedParty. This option is a UInt. UiControl option with the internal name CircleSheathedEnemy. This option is a UInt. UiControl option with the internal name CircleSheathedAggro. This option is a UInt. UiControl option with the internal name CircleSheathedNpcOrObject. This option is a UInt. UiControl option with the internal name CircleSheathedMinion. This option is a UInt. UiControl option with the internal name CircleSheathedDutyEnemy. This option is a UInt. UiControl option with the internal name CircleSheathedPet. This option is a UInt. UiControl option with the internal name CircleSheathedAlliance. This option is a UInt. UiControl option with the internal name CircleSheathedMark. This option is a UInt. UiControl option with the internal name CircleClickIsActive. This option is a UInt. UiControl option with the internal name CircleClickNonPartyPc. This option is a UInt. UiControl option with the internal name CircleClickParty. This option is a UInt. UiControl option with the internal name CircleClickEnemy. This option is a UInt. UiControl option with the internal name CircleClickAggro. This option is a UInt. UiControl option with the internal name CircleClickNpcOrObject. This option is a UInt. UiControl option with the internal name CircleClickMinion. This option is a UInt. UiControl option with the internal name CircleClickDutyEnemy. This option is a UInt. UiControl option with the internal name CircleClickPet. This option is a UInt. UiControl option with the internal name CircleClickAlliance. This option is a UInt. UiControl option with the internal name CircleClickMark. This option is a UInt. UiControl option with the internal name CircleXButtonIsActive. This option is a UInt. UiControl option with the internal name CircleXButtonNonPartyPc. This option is a UInt. UiControl option with the internal name CircleXButtonParty. This option is a UInt. UiControl option with the internal name CircleXButtonEnemy. This option is a UInt. UiControl option with the internal name CircleXButtonAggro. This option is a UInt. UiControl option with the internal name CircleXButtonNpcOrObject. This option is a UInt. UiControl option with the internal name CircleXButtonMinion. This option is a UInt. UiControl option with the internal name CircleXButtonDutyEnemy. This option is a UInt. UiControl option with the internal name CircleXButtonPet. This option is a UInt. UiControl option with the internal name CircleXButtonAlliance. This option is a UInt. UiControl option with the internal name CircleXButtonMark. This option is a UInt. UiControl option with the internal name CircleYButtonIsActive. This option is a UInt. UiControl option with the internal name CircleYButtonNonPartyPc. This option is a UInt. UiControl option with the internal name CircleYButtonParty. This option is a UInt. UiControl option with the internal name CircleYButtonEnemy. This option is a UInt. UiControl option with the internal name CircleYButtonAggro. This option is a UInt. UiControl option with the internal name CircleYButtonNpcOrObject. This option is a UInt. UiControl option with the internal name CircleYButtonMinion. This option is a UInt. UiControl option with the internal name CircleYButtonDutyEnemy. This option is a UInt. UiControl option with the internal name CircleYButtonPet. This option is a UInt. UiControl option with the internal name CircleYButtonAlliance. This option is a UInt. UiControl option with the internal name CircleYButtonMark. This option is a UInt. UiControl option with the internal name CircleBButtonIsActive. This option is a UInt. UiControl option with the internal name CircleBButtonNonPartyPc. This option is a UInt. UiControl option with the internal name CircleBButtonParty. This option is a UInt. UiControl option with the internal name CircleBButtonEnemy. This option is a UInt. UiControl option with the internal name CircleBButtonAggro. This option is a UInt. UiControl option with the internal name CircleBButtonNpcOrObject. This option is a UInt. UiControl option with the internal name CircleBButtonMinion. This option is a UInt. UiControl option with the internal name CircleBButtonDutyEnemy. This option is a UInt. UiControl option with the internal name CircleBButtonPet. This option is a UInt. UiControl option with the internal name CircleBButtonAlliance. This option is a UInt. UiControl option with the internal name CircleBButtonMark. This option is a UInt. UiControl option with the internal name CircleAButtonIsActive. This option is a UInt. UiControl option with the internal name CircleAButtonNonPartyPc. This option is a UInt. UiControl option with the internal name CircleAButtonParty. This option is a UInt. UiControl option with the internal name CircleAButtonEnemy. This option is a UInt. UiControl option with the internal name CircleAButtonAggro. This option is a UInt. UiControl option with the internal name CircleAButtonNpcOrObject. This option is a UInt. UiControl option with the internal name CircleAButtonMinion. This option is a UInt. UiControl option with the internal name CircleAButtonDutyEnemy. This option is a UInt. UiControl option with the internal name CircleAButtonPet. This option is a UInt. UiControl option with the internal name CircleAButtonAlliance. This option is a UInt. UiControl option with the internal name CircleAButtonMark. This option is a UInt. UiControl option with the internal name GroundTargetType. This option is a UInt. UiControl option with the internal name GroundTargetCursorSpeed. This option is a UInt. UiControl option with the internal name TargetCircleType. This option is a UInt. UiControl option with the internal name TargetLineType. This option is a UInt. UiControl option with the internal name LinkLineType. This option is a UInt. UiControl option with the internal name ObjectBorderingType. This option is a UInt. UiControl option with the internal name MoveMode. This option is a UInt. UiControl option with the internal name HotbarDisp. This option is a UInt. UiControl option with the internal name HotbarEmptyVisible. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp01. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp02. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp03. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp04. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp05. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp06. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp07. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp08. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp09. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDisp10. This option is a UInt. UiControl option with the internal name HotbarNoneSlotDispEX. This option is a UInt. UiControl option with the internal name ExHotbarSetting. This option is a UInt. UiControl option with the internal name HotbarExHotbarUseSetting. This option is a UInt. UiControl option with the internal name HotbarCrossUseEx. This option is a UInt. UiControl option with the internal name HotbarCrossUseExDirection. This option is a UInt. UiControl option with the internal name HotbarCrossDispType. This option is a UInt. UiControl option with the internal name PartyListSoloOff. This option is a UInt. UiControl option with the internal name HowTo. This option is a UInt. UiControl option with the internal name HousingFurnitureBindConfirm. This option is a UInt. UiControl option with the internal name DirectChat. This option is a UInt. UiControl option with the internal name CharaParamDisp. This option is a UInt. UiControl option with the internal name LimitBreakGaugeDisp. This option is a UInt. UiControl option with the internal name ScenarioTreeDisp. This option is a UInt. UiControl option with the internal name ScenarioTreeCompleteDisp. This option is a UInt. UiControl option with the internal name HotbarCrossDispAlways. This option is a UInt. UiControl option with the internal name ExpDisp. This option is a UInt. UiControl option with the internal name InventryStatusDisp. This option is a UInt. UiControl option with the internal name DutyListDisp. This option is a UInt. UiControl option with the internal name NaviMapDisp. This option is a UInt. UiControl option with the internal name GilStatusDisp. This option is a UInt. UiControl option with the internal name InfoSettingDisp. This option is a UInt. UiControl option with the internal name InfoSettingDispType. This option is a UInt. UiControl option with the internal name TargetInfoDisp. This option is a UInt. UiControl option with the internal name EnemyListDisp. This option is a UInt. UiControl option with the internal name FocusTargetDisp. This option is a UInt. UiControl option with the internal name ItemDetailDisp. This option is a UInt. UiControl option with the internal name ActionDetailDisp. This option is a UInt. UiControl option with the internal name DetailTrackingType. This option is a UInt. UiControl option with the internal name ToolTipDisp. This option is a UInt. UiControl option with the internal name MapPermeationRate. This option is a UInt. UiControl option with the internal name MapOperationType. This option is a UInt. UiControl option with the internal name PartyListDisp. This option is a UInt. UiControl option with the internal name PartyListNameType. This option is a UInt. UiControl option with the internal name FlyTextDisp. This option is a UInt. UiControl option with the internal name MapPermeationMode. This option is a UInt. UiControl option with the internal name AllianceList1Disp. This option is a UInt. UiControl option with the internal name AllianceList2Disp. This option is a UInt. UiControl option with the internal name TargetInfoSelfBuff. This option is a UInt. UiControl option with the internal name PopUpTextDisp. This option is a UInt. UiControl option with the internal name ContentsInfoDisp. This option is a UInt. UiControl option with the internal name DutyListHideWhenCntInfoDisp. This option is a UInt. UiControl option with the internal name DutyListNumDisp. This option is a UInt. UiControl option with the internal name InInstanceContentDutyListDisp. This option is a UInt. UiControl option with the internal name InPublicContentDutyListDisp. This option is a UInt. UiControl option with the internal name ContentsInfoJoiningRequestDisp. This option is a UInt. UiControl option with the internal name ContentsInfoJoiningRequestSituationDisp. This option is a UInt. UiControl option with the internal name HotbarDispSetNum. This option is a UInt. UiControl option with the internal name HotbarDispSetChangeType. This option is a UInt. UiControl option with the internal name HotbarDispSetDragType. This option is a UInt. UiControl option with the internal name MainCommandType. This option is a UInt. UiControl option with the internal name MainCommandDisp. This option is a UInt. UiControl option with the internal name MainCommandDragShortcut. This option is a UInt. UiControl option with the internal name HotbarDispLookNum. This option is a UInt. This class represents the state of the currently occupied duty. Fallback event handler in the case that we missed the duty started event. Joining a duty in progress, or disconnecting and reconnecting will cause the player to miss the event. Framework reference. Plugin scoped version of DutyState. Initializes a new instance of the class. Duty state memory address resolver. Gets the address of the method which is called when the client receives a content director update. Scan for and setup any configured address pointers. The signature scanner to facilitate setup. This class represents the Framework of the native game client and grants access to various subsystems. Executes during FrameworkUpdate before all delegates. Gets or sets a value indicating whether the collection of stats is enabled. Gets the stats history mapping. Gets the list of update sub-delegates that didn't get updated this frame. Gets or sets a value indicating whether to dispatch update events. Dispose of managed and unmanaged resources. Adds a update time to the stats history. Delegate Name. Runtime. Profiles each sub-delegate in the eventDelegate and logs to StatsHistory. The Delegate to Profile. The Framework Instance to pass to delegate. Plugin-scoped version of a Framework service. Initializes a new instance of the class. Class offering cancellation tokens for common gameplay events. Initializes a new instance of the class. Mark an unload. Mark a shutdown. Mark a logout. Unmark a logout. This class handles interacting with the native chat UI. Dispose of managed and unmanaged resources. Process a chat queue. Create a link handler. The name of the plugin handling the link. The ID of the command to run. The command action itself. A payload for handling. Remove all handlers owned by a plugin. The name of the plugin handling the links. Remove a registered link handler. The name of the plugin handling the link. The ID of the command to be removed. Plugin scoped version of ChatGui. Initializes a new instance of the class. This class handles interacting with the game's (right-click) context menu. Gets the name with the given prefix. The menu item to prefix. The prefixed name. Plugin-scoped version of a service. The type of context menu. Each one has a different associated . The default context menu. The inventory context menu. Used when right-clicked on an item. Interface representing a context menus args. Gets a list of AtkEventInterface pointers associated with the context menu. Only available with . Almost always an agent pointer. You can use this to find out what type of context menu it is. Thrown when the context menu is not a . Gets the name of the addon that opened the context menu. Gets the memory pointer of the addon that opened the context menu. Gets the memory pointer of the agent that opened the context menu. Gets the type of the context menu. Gets the target info of the context menu. The actual type depends on . signifies a . signifies a . Base class for menu args. Initializes a new instance of the class. Addon associated with the context menu. Agent associated with the context menu. The type of context menu. List of AtkEventInterfaces associated with the context menu. Interface representing a menu item to be added to a context menu. The default prefix used if no specific preset is specified. The default prefix color used if no specific preset is specified. Gets or sets the display name of the menu item. Gets or sets the prefix attached to the beginning of . Sets the character to prefix the with. Will be converted into a fancy boxed letter icon. Must be an uppercase letter. must be an uppercase letter. Gets or sets the color of the . Specifies a row id. Gets or sets a value indicating whether the dev wishes to intentionally use the default prefix symbol and color. Gets or sets the callback to be invoked when the menu item is clicked. Gets or sets the priority (or order) with which the menu item should be displayed in descending order. Priorities below 0 will be displayed above the native menu items. Other priorities will be displayed below the native menu items. Gets or sets a value indicating whether the menu item is enabled. Disabled items will be faded and cannot be clicked on. Gets or sets a value indicating whether the menu item is a submenu. This value is purely visual. Submenu items will have an arrow to its right. Gets or sets a value indicating whether the menu item is a return item. This value is purely visual. Return items will have a back arrow to its left. If both and are true, the return arrow will take precedence. A menu item that can be added to a context menu. An interface representing the callback args used when a menu item is clicked. Opens a submenu with the given name and items. The name of the submenu, displayed at the top. The items to display in the submenu. Opens a submenu with the given items. The items to display in the submenu. Callback args used when a menu item is clicked. Initializes a new instance of the class. Callback for opening a submenu. Addon associated with the context menu. Agent associated with the context menu. The type of context menu. List of AtkEventInterfaces associated with the context menu. An interface representing the callback args used when a menu item is opened. Adds a custom menu item to the context menu. The menu item to add. Callback args used when a menu item is opened. Initializes a new instance of the class. Callback for adding a custom menu item. Addon associated with the context menu. Agent associated with the context menu. The type of context menu. List of AtkEventInterfaces associated with the context menu. Base class for contexts. Discriminated based on . Target information on a default context menu. Initializes a new instance of the class. The agent associated with the context menu. Gets the name of the target. Gets the object id of the target. Gets the target object. Gets the content id of the target. Gets the home world id of the target. Gets the currently targeted character. Only shows up for specific targets, like friends, party finder listings, or party members. Just because this is doesn't mean the target isn't a character. Target information on an inventory context menu. Initializes a new instance of the class. The agent associated with the context menu. Gets the target item. Class used to interface with the server info bar. Get a DTR bar entry. This allows you to add your own text, and users to sort it. Plugin that owns the DTR bar, or null if owned by Dalamud. A user-friendly name for sorting. The text the entry shows. The entry object used to update, hide and remove the entry. Thrown when an entry with the specified title exists. Removes a DTR bar entry from the system. Plugin that owns the DTR bar, or null if owned by Dalamud. Title of the entry to remove, or null to remove all entries under the plugin. Remove operation is not immediate. If you try to add right after removing, the operation may fail. Remove native resources for the specified entry. The resources to remove. Check whether an entry with the specified title exists. The title to check for. Whether or not an entry with that title is registered. Dirty the DTR bar entry with the specified title. Title of the entry to dirty. Whether the entry was found. Reapply the DTR entry ordering from . Checks if there are any Dalamud nodes in the DTR. True if there are nodes with an ID > 1000. Plugin-scoped version of a AddonEventManager service. Interface representing a read-only entry in the server info bar. Gets the title of this entry. Gets a value indicating whether this entry has a click action. Gets the text of this entry. Gets a tooltip to be shown when the user mouses over the dtr entry. Gets a value indicating whether this entry should be shown. Gets a value indicating whether or not the user has hidden this entry from view through the Dalamud settings. Triggers the click action of this entry. True, if a click action was registered and executed. Interface representing an entry in the server info bar. Gets or sets the text of this entry. Gets or sets a tooltip to be shown when the user mouses over the dtr entry. Gets or sets a value indicating whether this entry is visible. Gets or sets a action to be invoked when the user clicks on the dtr entry. Remove this entry from the bar. You will need to re-acquire it from DtrBar to reuse it. Class representing an entry in the server info bar. Initializes a new instance of the class. Dalamud configuration, used to check if the entry is hidden by the user. The title of the bar entry. The corresponding text node. Gets or sets a action to be invoked when the user clicks on the dtr entry. Gets or sets the internal text node of this entry. Gets or sets the storage for the text of this entry. Gets or sets a value indicating whether this entry should be removed. Gets or sets a value indicating whether this entry is dirty. Gets or sets a value indicating whether this entry has just been added. Gets or sets the plugin that owns this entry. Remove this entry from the bar. You will need to re-acquire it from DtrBar to reuse it. This class facilitates interacting with and creating native in-game "fly text". The hook that fires when the game creates a fly text element. Disposes of managed and unmanaged resources. Plugin scoped version of FlyTextGui. Initializes a new instance of the class. Enum of FlyTextKind values. Val1 in serif font, Text2 in sans-serif as subtitle. Val1 in serif font, Text2 in sans-serif as subtitle. Does a bounce effect on appearance. Val1 in larger serif font with exclamation, with Text2 in sans-serif as subtitle. Does a bigger bounce effect on appearance. Val1 in even larger serif font with 2 exclamations, Text2 in sans-serif as subtitle. Does a large bounce effect on appearance. Does not scroll up or down the screen. Val1 in serif font, Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Val1 in serif font, Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Does a bounce effect on appearance. Val1 in larger serif font with exclamation, with Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Does a bigger bounce effect on appearance. Val1 in even larger serif font with 2 exclamations, Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Does a large bounce effect on appearance. Does not scroll up or down the screen. The text changes to DODGE under certain circumstances. All caps, serif MISS. Sans-serif Text1 next to all caps serif MISS. All caps serif DODGE. Sans-serif Text1 next to all caps serif DODGE. Icon next to sans-serif Text1. Icon next to sans-serif Text1. Serif Val1 with all caps condensed font EXP with Text2 in sans-serif as subtitle. Serif Val1 with all caps condensed font ISLAND EXP with Text2 in sans-serif as subtitle. Sans-serif Text1 next to serif Val1 with all caps condensed font MP with Text2 in sans-serif as subtitle. Currently not used by the game. Sans-serif Text1 next to serif Val1 with all caps condensed font TP with Text2 in sans-serif as subtitle. Val1 in serif font, Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Sans-serif Text1 next to serif Val1 with all caps condensed font MP with Text2 in sans-serif as subtitle. Currently not used by the game. Sans-serif Text1 next to serif Val1 with all caps condensed font TP with Text2 in sans-serif as subtitle. Sans-serif Text1 next to serif Val1 with all caps condensed font EP with Text2 in sans-serif as subtitle. Sans-serif Text1 next to serif Val1 with all caps condensed font CP with Text2 in sans-serif as subtitle. Sans-serif Text1 next to serif Val1 with all caps condensed font GP with Text2 in sans-serif as subtitle. Displays nothing. All caps serif INVULNERABLE. All caps sans-serif condensed font INTERRUPTED! Does a large bounce effect on appearance. Does not scroll up or down the screen. Val1 in serif font. Val1 in serif font. Val1 in larger serif font with exclamation, with Text2 in sans-serif as subtitle. Does a bigger bounce effect on appearance. Currently not used by the game. Val1 in serif font. CriticalHit with sans-serif Text1 to the left of the Val1 (2). Currently not used by the game. Same as DamageCrit with a MP in condensed font to the right of Val1. Does a jiggle effect to the right on appearance. Currently not used by the game. Same as DamageCrit with a TP in condensed font to the right of Val1. Does a jiggle effect to the right on appearance. Icon next to sans-serif Text1 with sans-serif "has no effect!" to the right. Icon next to sans-serif slightly faded Text1. Icon next to sans-serif slightly faded Text1. Text1 in sans-serif font. Icon next to sans-serif Text1 with sans-serif "(fully resisted)" to the right. All caps serif 'INCAPACITATED!'. Text1 with sans-serif "(fully resisted)" to the right. Text1 with sans-serif "has no effect!" to the right. Val1 in serif font, Text2 in sans-serif as subtitle with sans-serif Text1 to the left of the Val1. Currently not used by the game. Sans-serif Text1 next to serif Val1 with all caps condensed font MP with Text2 in sans-serif as subtitle. Currently not used by the game. Sans-serif Text1 next to serif Val1 with all caps condensed font TP with Text2 in sans-serif as subtitle. Icon next to sans-serif Text1 with serif "INVULNERABLE!" beneath the Text1. All caps serif RESIST. Icon with an item icon outline next to sans-serif Text1. Val1 in serif font. Val1 in larger serif font with exclamation, with Text2 in sans-serif as subtitle. Does a bigger bounce effect on appearance. All caps serif REFLECT. All caps serif REFLECTED. Val1 in serif font, Text2 in sans-serif as subtitle. Does a bounce effect on appearance. Currently not used by the game. Val1 in larger serif font with exclamation, with Text2 in sans-serif as subtitle. Does a bigger bounce effect on appearance. Val1 in even larger serif font with 2 exclamations, Text2 in sans-serif as subtitle. Does a large bounce effect on appearance. Does not scroll up or down the screen. A class handling many aspects of the in-game UI. Disables the hooks and submodules of this module. Indicates if the game is in the lobby scene (title screen, chara select, chara make, aesthetician etc.). A value indicating whether or not the game is in the lobby scene. Sets the current background music. The BGM row id. The BGM scene index. Defaults to MiniGame scene to avoid conflicts. Resets the current background music. The BGM scene index. Reset the stored "UI hide" state. Plugin-scoped version of a AddonLifecycle service. Initializes a new instance of the class. The address resolver for the class. Gets the address of the native HandleImm method. ActionKinds used in AgentActionDetail. These describe the possible kinds of actions being hovered. No action is hovered. A regular action is hovered. A crafting action is hovered. A general action is hovered. A companion order type of action is hovered. A main command type of action is hovered. An extras command type of action is hovered. A companion action is hovered. A pet order type of action is hovered. A trait is hovered. A buddy action is hovered. A company action is hovered. A mount is hovered. A chocobo race action is hovered. A chocobo race item is hovered. A deep dungeon equipment is hovered. A deep dungeon equipment 2 is hovered. A deep dungeon item is hovered. A quick chat is hovered. An action combo route is hovered. A pvp trait is hovered. A squadron action is hovered. A perform action is hovered. A deep dungeon magic stone is hovered. A deep dungeon demiclone is hovered. An eureka magia action is hovered. An island sanctuary temporary item is hovered. An ornament is hovered. Glasses are hovered. This class represents the hotbar action currently hovered over by the cursor. Gets or sets the base action ID. Gets or sets the action ID accounting for automatic upgrades. Gets or sets the type of action. Class used to modify the data used when rendering nameplates. The index for of the FullUpdate entry in the NamePlate number array. An empty null-terminated string pointer allocated in unmanaged memory, used to tag removed fields. Strips the surrounding quotes from a free company tag. If the quotes are not present in the expected location, no modifications will be made. A quoted free company tag. A span containing the free company tag without its surrounding quote characters. Strips the surrounding quotes from a title. If the quotes are not present in the expected location, no modifications will be made. A quoted title. A span containing the title without its surrounding quote characters. Plugin-scoped version of a AddonEventManager service. An address resolver for the class. Gets the address of the AddonNamePlate OnRequestedUpdate method. We need to use a hook for this because AddonNamePlate.Show calls OnRequestedUpdate directly, bypassing the AddonLifecycle callsite hook. Provides a read-only view of the nameplate info object data for a nameplate. Modifications to fields do not affect this data. Gets the displayed name for this nameplate according to the nameplate info object. Gets the displayed free company tag for this nameplate according to the nameplate info object. For this field, the quote characters which appear on either side of the title are NOT included. Gets the displayed free company tag for this nameplate according to the nameplate info object. For this field, the quote characters which appear on either side of the title ARE included. Gets the displayed title for this nameplate according to the nameplate info object. For this field, the quote characters which appear on either side of the title are NOT included. Gets the displayed title for this nameplate according to the nameplate info object. For this field, the quote characters which appear on either side of the title ARE included. Gets the displayed level text for this nameplate according to the nameplate info object. Gets the flags for this nameplate according to the nameplate info object. Gets a value indicating whether this nameplate is considered 'dirty' or not according to the nameplate info object. Gets a value indicating whether the title for this nameplate is a prefix title or not according to the nameplate info object. This value is derived from the field. Provides a read-only view of the nameplate info object data for a nameplate. Modifications to fields do not affect this data. Provides a read-only view of the nameplate info object data for a nameplate. Modifications to fields do not affect this data. An enum describing what kind of game object this nameplate represents. A player character. An event NPC or companion. A retainer. An enemy battle NPC. A friendly battle NPC. An event object. Treasure. A gathering point. A battle NPC with subkind 6. Something else. A container for parts. Initializes a new instance of the class. The currently executing update context. Gets a parts object for constructing a nameplate name. Gets a parts object for constructing a nameplate title. Gets a parts object for constructing a nameplate free company tag. Applies all container parts. The handler to apply the builders to. A part builder for constructing and setting quoted nameplate fields (i.e. free company tag and title). The field type which should be set. Whether or not this is a Free Company part. This class works as a lazy writer initialized with empty parts, where an empty part signifies no change should be performed. Only after all handler processing is complete does it write out any parts which were set to the associated field. Reading fields from this class is usually not what you want to do, as you'll only be reading the contents of parts which other plugins have written to. Prefer reading from the base handler's properties or using . A part builder for constructing and setting quoted nameplate fields (i.e. free company tag and title). The field type which should be set. Whether or not this is a Free Company part. This class works as a lazy writer initialized with empty parts, where an empty part signifies no change should be performed. Only after all handler processing is complete does it write out any parts which were set to the associated field. Reading fields from this class is usually not what you want to do, as you'll only be reading the contents of parts which other plugins have written to. Prefer reading from the base handler's properties or using . Gets or sets the opening and closing SeStrings which will wrap the entire contents, which can be used to apply colors or styling to the entire field. Gets or sets the opening quote string which appears before the text and opening text-wrap. Gets or sets the closing quote string which appears after the text and closing text-wrap. Gets or sets the opening and closing SeStrings which will wrap the text, which can be used to apply colors or styling to the field's text. Gets or sets this field's text. Applies the changes from this builder to the actual field. The handler to perform the changes on. A part builder for constructing and setting a simple (unquoted) nameplate field. The field type which should be set. This class works as a lazy writer initialized with empty parts, where an empty part signifies no change should be performed. Only after all handler processing is complete does it write out any parts which were set to the associated field. Reading fields from this class is usually not what you want to do, as you'll only be reading the contents of parts which other plugins have written to. Prefer reading from the base handler's properties or using . A part builder for constructing and setting a simple (unquoted) nameplate field. The field type which should be set. This class works as a lazy writer initialized with empty parts, where an empty part signifies no change should be performed. Only after all handler processing is complete does it write out any parts which were set to the associated field. Reading fields from this class is usually not what you want to do, as you'll only be reading the contents of parts which other plugins have written to. Prefer reading from the base handler's properties or using . Gets or sets the opening and closing SeStrings which will wrap the text, which can be used to apply colors or styling to the field's text. Gets or sets this field's text. Applies the changes from this builder to the actual field. The handler to perform the changes on. An enum describing the string fields available in nameplate data. The and various flags determine which fields will actually be rendered. The object's name. The object's title. The object's free company tag. The object's status prefix. The object's target suffix. The object's level prefix. Contains information related to the pending nameplate data update. This is only valid for a single frame and should not be kept across frames. Gets the number of active nameplates. The actual number visible may be lower than this in cases where some nameplates are hidden by default (based on in-game "Display Name Settings" and so on). Gets a value indicating whether the game is currently performing a full update of all active nameplates. Gets the address of the NamePlate addon. Gets the address of the NamePlate addon's number array data container. Gets the address of the NamePlate addon's string array data container. Gets the address of the first entry in the NamePlate addon's int array. Contains information related to the pending nameplate data update. This is only valid for a single frame and should not be kept across frames. Initializes a new instance of the class. An object table. Gets the number of active nameplates. The actual number visible may be lower than this in cases where some nameplates are hidden by default (based on in-game "Display Name Settings" and so on). Gets a value indicating whether the game is currently performing a full update of all active nameplates. Gets the address of the NamePlate addon. Gets the address of the NamePlate addon's number array data container. Gets the address of the NamePlate addon's string array data container. Gets the address of the first entry in the NamePlate addon's int array. Gets the RaptureAtkModule. Gets the Ui3DModule. Gets the ObjectTable. Gets a pointer to the NamePlate addon. Gets a pointer to the NamePlate addon's number array data container. Gets a pointer to the NamePlate addon's string array data container. Gets a pointer to the NamePlate addon's number array entries as a struct. Gets or sets a value indicating whether any handler in the current context has instantiated a part builder. Resets the state of the context based on the provided addon lifecycle arguments. A pointer to the addon. A pointer to the global number array data struct. A pointer to the global string array data struct. A class representing a single nameplate. Provides mechanisms to look up the game object associated with the nameplate and allows for modification of various backing fields in number and string array data, which in turn affect aspects of the nameplate's appearance when drawn. Instances of this class are only valid for a single frame and should not be kept across frames. Gets the GameObjectId of the game object associated with this nameplate. Gets the associated with this nameplate, if possible. Performs an object table scan and caches the result if successful. Gets a read-only view of the nameplate info object data for a nameplate. Modifications to fields do not affect fields in the returned view. Gets the index for this nameplate data in the backing number and string array data. This is not the same as the rendered or object index, which can be retrieved from . Gets the associated with this nameplate, if possible. Returns null if the nameplate has an associated , but that object cannot be assigned to . Gets the associated with this nameplate, if possible. Returns null if the nameplate has an associated , but that object cannot be assigned to . Gets the address of the nameplate info struct. Gets the address of the first entry associated with this nameplate in the NamePlate addon's int array. Gets a value indicating what kind of nameplate this is, based on the kind of object it is associated with. Gets the update flags for this nameplate. Gets or sets the overall text color for this nameplate. If this value is changed, the appropriate update flag will be set so that the game will reflect this change immediately. Gets or sets the overall text edge color for this nameplate. If this value is changed, the appropriate update flag will be set so that the game will reflect this change immediately. Gets or sets the icon ID for the nameplate's marker icon, which is the large icon used to indicate quest availability and so on. This value is read from and reset by the game every frame, not just when a nameplate changes. Setting this to 0 disables the icon. Gets or sets the icon ID for the nameplate's name icon, which is the small icon shown to the left of the name. Setting this to -1 disables the icon. Gets the nameplate index, which is the index used for rendering and looking up entries in the object array. For number and string array data, is used. Gets the draw flags for this nameplate. Gets or sets the visibility flags for this nameplate. Gets a value indicating whether this nameplate is undergoing a major update or not. This is usually true when a nameplate has just appeared or something meaningful about the entity has changed (e.g. its job or status). This flag is reset by the game during the update process (during requested update and before draw). Gets or sets a value indicating whether the title (when visible) will be displayed above the object's name (a prefix title) instead of below the object's name (a suffix title). Gets or sets a value indicating whether the title should be displayed at all. Gets or sets the name for this nameplate. Gets a builder which can be used to help cooperatively build a new name for this nameplate even when other plugins modifying the name are present. Specifically, this builder allows setting text and text-wrapping payloads (e.g. for setting text color) separately. Gets or sets the title for this nameplate. Gets a builder which can be used to help cooperatively build a new title for this nameplate even when other plugins modifying the title are present. Specifically, this builder allows setting text, text-wrapping payloads (e.g. for setting text color), and opening and closing quote sequences separately. Gets or sets the free company tag for this nameplate. Gets a builder which can be used to help cooperatively build a new FC tag for this nameplate even when other plugins modifying the FC tag are present. Specifically, this builder allows setting text, text-wrapping payloads (e.g. for setting text color), and opening and closing quote sequences separately. Gets or sets the status prefix for this nameplate. This prefix is used by the game to add BitmapFontIcon-based online status icons to player nameplates. Gets or sets the target suffix for this nameplate. This suffix is used by the game to add the squared-letter target tags to the end of combat target nameplates. Gets or sets the level prefix for this nameplate. This "Lv60" style prefix is added to enemy and friendly battle NPC nameplates to indicate the NPC level. Removes the contents of the name field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Removes the contents of the title field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Removes the contents of the FC tag field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Removes the contents of the status prefix field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Removes the contents of the target suffix field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Removes the contents of the level prefix field for this nameplate. This differs from simply setting the field to an empty string because it writes a special value to memory, and other setters (except SetField variants) will refuse to overwrite this value. Therefore, fields removed this way are more likely to stay removed. Gets a pointer to the string array value in the provided field. The field to read from. A pointer to a sequence of non-null bytes. Gets a byte span containing the string array value in the provided field. The field to read from. A ReadOnlySpan containing a sequence of non-null bytes. Gets a UTF8 string copy of the string array value in the provided field. The field to read from. A copy of the string array value as a string. Gets a parsed SeString copy of the string array value in the provided field. The field to read from. A copy of the string array value as a parsed SeString. Sets the string array value for the provided field. The field to write to. The string to write. Sets the string array value for the provided field. The field to write to. The SeString to write. Sets the string array value for the provided field. The provided byte sequence must be null-terminated. The field to write to. The ReadOnlySpan of bytes to write. Sets the string array value for the provided field. The provided byte sequence must be null-terminated. The field to write to. The pointer to a null-terminated sequence of bytes to write. Sets the string array value for the provided field to a fixed pointer to an empty string in unmanaged memory. Other methods may notice this fixed pointer and refuse to overwrite it, preserving the emptiness of the field. The field to write to. A class representing a single nameplate. Provides mechanisms to look up the game object associated with the nameplate and allows for modification of various backing fields in number and string array data, which in turn affect aspects of the nameplate's appearance when drawn. Instances of this class are only valid for a single frame and should not be kept across frames. Initializes a new instance of the class. The current update context. The index for this nameplate data in the backing number and string array data. This is not the same as the rendered index, which can be retrieved from . Gets or (lazily) creates a part builder container for this nameplate. Resets the state of this handler for re-use in a new update. Sets the string array value for the provided field, unless it was already set to the special empty string pointer used by the Remove methods. The field to write to. The SeString to write. The structure of the PartyFinder packet. Gets the size of this packet. The structure of an individual listing within a packet. This class handles interacting with the native PartyFinder window. Initializes a new instance of the class. Sig scanner to use. Dispose of managed and unmanaged resources. A scoped variant of the PartyFinderGui service. Initializes a new instance of the class. Condition flags for the class. No duty condition. The duty complete condition. The duty complete (weekly reward unclaimed) condition. This condition is only available for savage fights prior to echo release. The duty incomplete condition. Category flags for the class. The none category. The duty roulette category. The dungeons category. The guildhests category. The trials category. The raids category. The high-end duty category. The pvp category. The gold saucer category. The FATEs category. The treasure hunts category. The hunts category. The gathering forays category. The deep dungeons category. The field operations category. The variant and criterion dungeons category. Duty finder settings flags for the class. No duty finder settings. The undersized party setting. The minimum item level setting. The silence echo setting. Duty type flags for the class. No duty type. The roulette duty type. The normal duty type. Job flags for the class. Gladiator (GLD). Pugilist (PGL). Marauder (MRD). Lancer (LNC). Archer (ARC). Conjurer (CNJ). Thaumaturge (THM). Paladin (PLD). Monk (MNK). Warrior (WAR). Dragoon (DRG). Bard (BRD). White mage (WHM). Black mage (BLM). Arcanist (ACN). Summoner (SMN). Scholar (SCH). Rogue (ROG). Ninja (NIN). Machinist (MCH). Dark Knight (DRK). Astrologian (AST). Samurai (SAM). Red mage (RDM). Blue mage (BLM). Gunbreaker (GNB). Dancer (DNC). Reaper (RPR). Sage (SGE). Viper (VPR). Pictomancer (PCT). Extensions for the enum. Get the actual ClassJob from the in-game sheets for this JobFlags. A JobFlags enum member. A DataManager to get the ClassJob from. A ClassJob if found or null if not. Loot rule flags for the class. No loot rules. The greed only rule. The lootmaster rule. Objective flags for the class. No objective. The duty completion objective. The practice objective. The loot objective. A interface representing a single listing in party finder. Gets the objective of this listing. Gets the conditions of this listing. Gets the Duty Finder settings that will be used for this listing. Gets the loot rules that will be used for this listing. Gets where this listing is searching. Note that this is also used for denoting alliance raid listings and one player per job. Gets a list of player slots that the Party Finder is accepting. Gets a list of the classes/jobs that are currently present in the party. Gets the ID assigned to this listing by the game's server. Gets the player's unique content ID. Gets the name of the player hosting this listing. Gets the description of this listing as set by the host. May be multiple lines. Gets the world that this listing was created on. Gets the home world of the listing's host. Gets the current world of the listing's host. Gets the Party Finder category this listing is listed under. Gets the row ID of the duty this listing is for. May be 0 for non-duty listings. Gets the duty this listing is for. May be null for non-duty listings. Gets the type of duty this listing is for. Gets a value indicating whether if this listing is beginner-friendly. Shown with a sprout icon in-game. Gets how many seconds this listing will continue to be available for. It may end before this time if the party fills or the host ends it early. Gets the minimum item level required to join this listing. Gets the number of parties this listing is recruiting for. Gets the number of player slots this listing is recruiting for. Gets the number of player slots filled. Gets the time at which the server this listings is on last restarted for a patch/hotfix. Probably. Gets a list of the class/job IDs that are currently present in the party. Check if the given flag is present. The flag to check for. A value indicating whether the flag is present. Check if the given flag is present. The flag to check for. A value indicating whether the flag is present. Check if the given flag is present. The flag to check for. A value indicating whether the flag is present. Check if the given flag is present. The flag to check for. A value indicating whether the flag is present. Check if the given flag is present. The flag to check for. A value indicating whether the flag is present. A single listing in party finder. Initializes a new instance of the class. The interop listing data. A interface representing additional arguments passed by the game. Gets the batch number. Gets or sets a value indicating whether the listing is visible. This class represents additional arguments passed by the game. Initializes a new instance of the class. The batch number. A player slot in a Party Finder listing. Initializes a new instance of the class. The flag value of accepted jobs. Gets a list of jobs that this slot is accepting. Tests if this slot is accepting a job. Job to test. Search area flags for the class. Datacenter. Private. Alliance raid. World. One player per job. This class represents options that can be used with the class for the quest toast variant. Gets or sets the position of the toast on the screen. Gets or sets the ID of the icon that will appear in the toast. This may be 0 for no icon. Gets or sets a value indicating whether the toast will show a checkmark after appearing. Gets or sets a value indicating whether the toast will play a completion sound. This only works if is non-zero or is true. The alignment of native quest toast windows. The toast will be aligned screen centre. The toast will be aligned screen right. The toast will be aligned screen left. This class facilitates interacting with and creating native toast windows. Handles normal toasts. Handles quest toasts. Handles error toasts. Initializes a new instance of the class. Disposes of managed and unmanaged resources. Process the toast queue. Plugin scoped version of ToastGui. Initializes a new instance of the class. This class represents options that can be used with the class. Gets or sets the position of the toast on the screen. Gets or sets the speed of the toast. The positioning of native toast windows. The toast will be towards the bottom. The toast will be towards the top. The speed at which native toast windows will persist. The toast will take longer to disappear (around four seconds). The toast will disappear more quickly (around two seconds). This class disables anti-debug functionality in the game client. Finalizes an instance of the class. Gets a value indicating whether the anti-debugging is enabled. Enables the anti-debugging by overwriting code in memory. Disable the anti-debugging by reverting the overwritten code in memory. This class implements in-game Dalamud options in the in-game System menu. Finalizes an instance of the class. This class provides events for the players in-game inventory. Subscribe to events. The event target. Unsubscribe from events. The event target. A view of , so that the number of items contained within can be known in advance, and it can be enumerated multiple times. The type of elements being enumerated. Plugin-scoped version of a GameInventory service. Initializes a new instance of the class. Invoke . The data. Invoke . The data. Invoke the appropriate event handler. The data. Invoke the appropriate event handler. The data. Invoke the appropriate event handler. The data. Invoke the appropriate event handler. The data. Invoke the appropriate event handler. The data. Invoke the appropriate event handler. The data. Class representing a item's changelog state. A value indicating that there was no event.
You should not see this value, unless you explicitly used it yourself, or APIs using this enum say otherwise.
Item was added to an inventory. Item was removed from an inventory. Properties are changed for an item in an inventory. Item has been moved, possibly across different inventories. Item has been split into two stacks from one, possibly across different inventories. Item has been merged into one stack from two, possibly across different inventories. Dalamud wrapper around a ClientStructs InventoryItem. The actual data. The view of the backing data, in . Initializes a new instance of the struct. Inventory item to wrap. Gets a value indicating whether the this is empty. Gets the container inventory type. Gets the inventory slot index this item is in. Gets the item id. Gets the quantity of items in this item stack. Gets the spiritbond of this item. Gets the repair condition of this item. Gets a value indicating whether the item is High Quality. Gets a value indicating whether the item has a company crest applied. Gets a value indicating whether the item is a relic. Gets a value indicating whether the is a collectable. Gets the array of materia types. Gets the array of materia grades. Gets the address of native inventory item in the game.
Can be 0 if this instance of does not point to a valid set of container type and slot.
Note that this instance of can be a snapshot; it may not necessarily match the data you can query from the game using this address value.
Gets the color used for this item. Gets the glamour id for this item. Gets the items crafter's content id. NOTE: I'm not sure if this is a good idea to include or not in the dalamud api. Marked internal for now. Indicates whether the current object is equal to another object of the same type. An object to compare with this object. true if the current object is equal to the parameter; otherwise, false. Gets a view of s, wrapped as . The inventory type. The span. Enum representing various player inventories. First panel of main player inventory. Second panel of main player inventory. Third panel of main player inventory. Fourth panel of main player inventory. Items that are currently equipped by the player. Player currency container. ie, gil, serpent seals, sacks of nuts. Crystal container. Item attachments of a letter the player is currently composing. Item attachments of a letter the player is currently reading. Key item container. Quest item hand-in inventory. Repair window container. Examine window container. Estate Possession Retrieval container. Container for items when changing the exterior housing appearance. Container for items when changing the interior housing appearance. Doman Enclave Reconstruction Reclamation Box. Armory off-hand weapon container. Armory head container. Armory body container. Armory hand/gloves container. Armory waist container. This container should be unused as belt items were removed from the game in Shadowbringers. Armory legs/pants/skirt container. Armory feet/boots/shoes container. Armory earring container. Armory necklace container. Armory bracelet container. Armory ring container. Armory soul crystal container. Armory main-hand weapon container. First panel of saddelbag inventory. Second panel of Saddlebag inventory. First panel of premium saddlebag inventory. Second panel of premium saddlebag inventory. First panel of retainer inventory. Second panel of retainer inventory. Third panel of retainer inventory. Fourth panel of retainer inventory. Fifth panel of retainer inventory. Sixth panel of retainer inventory. Seventh panel of retainer inventory. Retainer equipment container. Retainer currency container. Retainer crystal container. Retainer market item container. First panel of Free Company inventory. Second panel of Free Company inventory. Third panel of Free Company inventory. Fourth panel of Free Company inventory. Fifth panel of Free Company inventory. Free Company currency container. Free Company crystal container. Housing exterior appearance container. Housing exterior placed items container. Housing interior appearance container. First panel of housing interior inventory. Second panel of housing interior inventory. Third panel of housing interior inventory. Fourth panel of housing interior inventory. Fifth panel of housing interior inventory. Sixth panel of housing interior inventory. Seventh panel of housing interior inventory. Eighth panel of housing interior inventory. Housing exterior storeroom inventory. First panel of housing interior storeroom inventory. Second panel of housing interior storeroom inventory. Third panel of housing interior storeroom inventory. Fourth panel of housing interior storeroom inventory. Fifth panel of housing interior storeroom inventory. Sixth panel of housing interior storeroom inventory. Seventh panel of housing interior storeroom inventory. Eighth panel of housing interior storeroom inventory. An invalid value. Represents the data associated with an item being affected across different slots, possibly in different containers. Initializes a new instance of the class. Type of the event. The item at before slot. The item at after slot. Gets the inventory this item was at. Gets the inventory this item now is. Gets the slot this item was at. Gets the slot this item now is. Gets the associated source event. Gets the associated target event. Abstract base class representing inventory changed events. Initializes a new instance of the class. Type of the event. Item about the event. Gets the type of event for these args. Gets the item associated with this event. This is a copy of the item data. Represents the data associated with an item being added to an inventory. Initializes a new instance of the class. The item. Gets the inventory this item was added to. Gets the slot this item was added to. Represents the data associated with an items properties being changed. This also includes an items stack count changing. Initializes a new instance of the class. The item before change. The item after change. Gets the inventory this item is in. Gets the inventory slot this item is in. Gets the state of the item from before it was changed. This is a copy of the item data. Represents the data associated with an item being merged from two stacks into one. Initializes a new instance of the class. The item at before slot. The item at after slot. Represents the data associated with an item being moved from one inventory and added to another. Initializes a new instance of the class. The item at before slot. The item at after slot. Represents the data associated with an item being removed from an inventory. Initializes a new instance of the class. The item. Gets the inventory this item was removed from. Gets the slot this item was removed from. Represents the data associated with an item being split from one stack into two. Initializes a new instance of the class. The item at before slot. The item at after slot. This class provides access to market board events. Initializes a new instance of the class. Plugin scoped version of MarketBoard. Initializes a new instance of the class. The plugin owning this service. This class handles interacting with game network events. Plugin-scoped version of a AddonLifecycle service. Initializes a new instance of the class. The address resolver for the class. Gets the address of the ProcessZonePacketUp method. An interface binding for the Universalis uploader. Upload data about an item. The item request data being uploaded. The uploaders ContentId. The uploaders WorldId. An async task. Upload tax rate data. The tax rate data being uploaded. The uploaders ContentId. The uploaders WorldId. An async task. Upload information about a purchase this client has made. The purchase handler data associated with the sale. The uploaders ContentId. The uploaders WorldId. An async task. This represents a submission to a marketboard aggregation website. Gets the request status. Nonzero statuses are errors. Known values: default=0; rate limited=0x70000003. Gets a value indicating whether or not this request was successful. Gets the amount to arrive. Gets or sets the offered catalog id used in this listing. Gets the offered item listings. Gets the historical item listings. Read a packet off the wire. Packet data. An object representing the data read. A Universalis API structure. Gets or sets a value indicating whether the item is HQ or not. Gets or sets the item price per unit. Gets or sets the quantity of items available. Gets or sets the name of the buyer. Gets or sets a value indicating whether this item was on a mannequin. Gets or sets the seller ID. Gets or sets the buyer ID. Gets or sets the timestamp of the transaction. Request payload for market board purchases. Gets or sets the object ID of the retainer associated with the sale. Gets or sets the object ID of the item listing. Gets or sets the quantity of the item that was purchased. Gets or sets the unit price of the item. Gets or sets the uploader ID. A Universalis API structure. Gets or sets the listing ID. Gets or sets a value indicating whether the item is HQ. Gets or sets the item price per unit. Gets or sets the item quantity. Gets or sets the name of the retainer selling the item. Gets or sets the ID of the retainer selling the item. Gets or sets the name of the user who created the entry. Gets or sets a value indicating whether the item is on a mannequin. Gets or sets the seller ID. Gets or sets the ID of the user who created the entry. Gets or sets the ID of the dye on the item. Gets or sets the city where the selling retainer resides. Gets or sets the last time the entry was reviewed. Gets or sets the materia attached to the item. A Universalis API structure. Gets or sets the world ID. Gets or sets the item ID. Gets or sets the list of available items. Gets or sets the uploader ID. A Universalis API structure. Gets or sets the item slot ID. Gets or sets the materia ID. A Universalis API structure. Gets or sets the world ID. Gets or sets the item ID. Gets or sets the list of available items. Gets or sets the list of available entries. Gets or sets the uploader ID. A Universalis API structure. Gets or sets Limsa Lominsa's current tax rate. Gets or sets Gridania's current tax rate. Gets or sets Ul'dah's current tax rate. Gets or sets Ishgard's current tax rate. Gets or sets Kugane's current tax rate. Gets or sets The Crystarium's current tax rate. Gets or sets Old Sharlayan's current tax rate. Gets or sets Tuliyollal's current tax rate. A Universalis API structure. Gets or sets the uploader's ID. Gets or sets the world to retrieve data from. Gets or sets tax data for each city's market. This class represents an uploader for contributing data to Universalis. Initializes a new instance of the class. An instance of . It may seem backwards that an upload only performs a delete request, however this is not trying to track the available listings, that is done via the listings packet. All this does is remove a listing, or delete it, when a purchase has been made. This class handles network notifications and uploading market board data. Event which gets fired when a duty is ready. Gets an observable to track marketboard purchase events. Gets an observable to track marketboard history events. Gets an observable to track marketboard tax events. Gets an observable to track marketboard item request events. Gets an observable to track marketboard offerings events. Gets an observable to track marketboard purchase request events. Disposes of managed and unmanaged resources. Disposes of managed and unmanaged resources. Whether or not to execute the disposal. Internal address resolver for the network handlers. Gets or sets the pointer to the method responsible for custom talk events. Necessary for marketboard tax data, as this isn't really exposed anywhere else. This class enables TCP optimizations in the game socket for better performance. Disposes of managed and unmanaged resources. This represents the direction of a network message. A zone down message. A zone up message. An interface that represents the current market board offerings. Gets the list of individual item listings. Gets the request ID. An interface that represents the current market board offering of a single item from the . Gets the artisan ID. Gets the item ID. Gets a value indicating whether the item is HQ. Gets the item quantity. Gets the listing ID. Gets the list of materia attached to this item. Gets the amount of attached materia. Gets a value indicating whether this item is on a mannequin. Gets the price per unit. Gets the city ID of the retainer selling the item. Gets the ID of the retainer selling the item. Gets the name of the retainer. Gets the first stain or applied dye of the item. Gets the second stain or applied dye of the item. Gets the total tax. An interface that represents the materia slotted to an . Gets the materia index. Gets the materia ID. An interface that represents the market board history from the game. Gets the item ID. Gets the list of individual item history listings. An interface that represents the market board history of a single item from . Gets the buyer's name. Gets a value indicating whether the item is HQ. Gets a value indicating whether the item is on a mannequin. Gets the time of purchase. Gets the quantity. Gets the sale price. An interface that represents market board purchase information. This message is received from the server when a purchase is made at a market board. Gets the item ID of the item that was purchased. Gets the quantity of the item that was purchased. An interface that represents market board purchase information. This message is sent from the client when a purchase is made at a market board. Gets the object ID of the retainer associated with the sale. Gets the object ID of the item listing. Gets the item ID of the item that was purchased. Gets the quantity of the item that was purchased. Gets the unit price of the item. Gets a value indicating whether the item is HQ. Gets the total tax. Gets the city ID of the retainer selling the item. An interface that represents the tax rates received by the client when interacting with a retainer vocate. Gets the category of this ResultDialog packet. Gets the tax rate in Limsa Lominsa. Gets the tax rate in Gridania. Gets the tax rate in Ul'dah. Gets the tax rate in Ishgard. Gets the tax rate in Kugane. Gets the tax rate in the Crystarium. Gets the tax rate in the Crystarium. Gets the tax rate in Tuliyollal. Gets until when these values are valid. Display group of a character. Used for friends. All display groups. No display group. Star display group. Circle display group. Triangle display group. Diamond display group. Heart display group. Spade display group. Club display group. Dalamud wrapper around a client structs . Initializes a new instance of the class. Character data to wrap. Gets the address of the in memory. Gets the content id of the character. Gets the status mask of the character. Gets the applicable statues of the character. Gets the display group of the character. Gets a value indicating whether the character's home world is different from the current world. Gets the sort order of the character. Gets the current world of the character. Gets the home world of the character. Gets the location of the character. Gets the grand company of the character. Gets the primary client language of the character. Gets the supported language mask of the character. Gets the supported languages the character supports. Gets the gender of the character. Gets the job of the character. Gets the name of the character. Gets the free company tag of the character. Gets the underlying struct. This class represents the current market board offerings from a game network packet. Gets the list of individual item listings. Gets the request ID. Gets or sets the internal read-write list of marketboard item listings. Read a object from memory. Address to read. A new object. This class represents the current market board offering of a single item from the network packet. Initializes a new instance of the class. Gets the artisan ID. Gets the catalog ID. Gets a value indicating whether the item is HQ. Gets the item quantity. Gets the listing ID. Gets the list of materia attached to this item. Gets the amount of attached materia. Gets a value indicating whether this item is on a mannequin. Gets the price per unit. Gets the city ID of the retainer selling the item. Gets the ID of the retainer selling the item. Gets the name of the retainer. Gets the ID of the retainer's owner. Gets the first stain or applied dye of the item. Gets the second stain or applied dye of the item. Gets the total tax. Gets or sets the time this offering was last reviewed. Gets the stain or applied dye of the item. Gets or sets the player name. This represents the materia slotted to an . Initializes a new instance of the class. Gets the materia index. Gets the materia ID. This class represents the market board history from a game network packet. Initializes a new instance of the class. Gets the catalog ID. Gets the ID (for EXD) for the item being sold. Gets the list of individual item listings. Gets or sets a list of individual item listings. Read a object from memory. Address to read. A new object. This class represents the market board history of a single item from the network packet. Initializes a new instance of the class. Gets the buyer's name. Gets a value indicating whether the item is HQ. Gets a value indicating whether the item is on a mannequin. Gets the time of purchase. Gets the quantity. Gets the sale price. Represents market board purchase information. This message is received from the server when a purchase is made at a market board. Gets the item ID of the item that was purchased. Gets the quantity of the item that was purchased. Reads market board purchase information from the struct at the provided pointer. A pointer to a struct containing market board purchase information from the server. An object representing the data read. Represents market board purchase information. This message is sent from the client when a purchase is made at a market board. Gets the object ID of the retainer associated with the sale. Gets the object ID of the item listing. Gets the item ID of the item that was purchased. Gets the quantity of the item that was purchased. Gets the unit price of the item. Gets a value indicating whether the item is HQ. Gets the total tax. Gets the city ID of the retainer selling the item. Reads market board purchase information from the struct at the provided pointer. A pointer to a struct containing market board purchase information from the client. An object representing the data read. This class represents the "Result Dialog" packet. This is also used e.g. for reduction results, but we only care about tax rates. We can do that by checking the "Category" field. Gets the category of this ResultDialog packet. Gets the tax rate in Limsa Lominsa. Gets the tax rate in Gridania. Gets the tax rate in Ul'dah. Gets the tax rate in Ishgard. Gets the tax rate in Kugane. Gets the tax rate in the Crystarium. Gets the tax rate in Sharlayan. Gets the tax rate in Tuliyollal. Gets until when these values are valid. Read a object from memory. Address to read. A new object. Generate a MarketTaxRates wrapper class from information located in a CustomTalk packet. The pointer to the relevant CustomTalk data. Returns a wrapped and ready-to-go MarketTaxRates record. A SigScanner facilitates searching for memory signatures in a given ProcessModule. Initializes a new instance of the class using the main module of the current process. Whether or not to copy the module upon initialization for search operations to use, as to not get disturbed by possible hooks. File used to cached signatures. Initializes a new instance of the class. The ProcessModule to be used for scanning. Whether or not to copy the module upon initialization for search operations to use, as to not get disturbed by possible hooks. File used to cached signatures. Gets or sets a value indicating whether this instance of is meant to be a Dalamud service. Scan memory for a signature. The base address to scan from. The amount of bytes to scan. The signature to search for. The found offset. Try scanning memory for a signature. The base address to scan from. The amount of bytes to scan. The signature to search for. The offset, if found. true if the signature was found. Scan for a .data address using a .text function. This is intended to be used with IDA sigs. Place your cursor on the line calling a static address, and create and IDA sig. The signature and offset should not break through instruction boundaries. The signature of the function using the data. The offset from function start of the instruction using the data. An IntPtr to the static memory location. Try scanning for a .data address using a .text function. This is intended to be used with IDA sigs. Place your cursor on the line calling a static address, and create and IDA sig. The signature of the function using the data. An IntPtr to the static memory location, if found. The offset from function start of the instruction using the data. true if the signature was found. Save the current state of the cache. Free the memory of the copied module search area on object disposal, if applicable. Helper for ScanText to get the correct address for IDA sigs that mark the first JMP or CALL location. The address the JMP or CALL sig resolved to. The real offset of the signature. A SigScanner facilitates searching for memory signatures in a given ProcessModule. Initializes a new instance of the class. Whether or not to copy the module upon initialization for search operations to use, as to not get disturbed by possible hooks. File used to cached signatures. Sanitize strings to remove soft hyphens and other special characters. Creates a sanitized string using current clientLanguage. An unsanitized string to sanitize. A sanitized string. Creates a sanitized string using request clientLanguage. An unsanitized string to sanitize. Target language for sanitized strings. A sanitized string. Creates a list of sanitized strings using current clientLanguage. List of unsanitized string to sanitize. A list of sanitized strings. Creates a list of sanitized strings using requested clientLanguage. List of unsanitized string to sanitize. Target language for sanitized strings. A list of sanitized strings. Sanitize strings to remove soft hyphens and other special characters. Initializes a new instance of the class. Default clientLanguage for sanitizing strings. Creates a sanitized string using current clientLanguage. An unsanitized string to sanitize. A sanitized string. Creates a sanitized string using request clientLanguage. An unsanitized string to sanitize. Target language for sanitized strings. A sanitized string. Creates a list of sanitized strings using current clientLanguage. List of unsanitized string to sanitize. A list of sanitized strings. Creates a list of sanitized strings using requested clientLanguage. List of unsanitized string to sanitize. Target language for sanitized strings. A list of sanitized strings. Special unicode characters with game-related symbols that work both in-game and in any dalamud window. The sprout icon unicode character. The item level icon unicode character. The auto translate open icon unicode character. The auto translate close icon unicode character. The high quality icon unicode character. The collectible icon unicode character. The clock icon unicode character. The gil icon unicode character. The Hydaelyn icon unicode character. The no mouse click icon unicode character. The left mouse click icon unicode character. The right mouse click icon unicode character. The left/right mouse click icon unicode character. The mouse wheel icon unicode character. The mouse with a 1 icon unicode character. The mouse with a 2 icon unicode character. The mouse with a 3 icon unicode character. The mouse with a 4 icon unicode character. The mouse with a 5 icon unicode character. The level English icon unicode character. The level German icon unicode character. The level French icon unicode character. The experience icon unicode character. The experience filled icon unicode character. The A.M. time icon unicode character. The P.M. time icon unicode character. The right arrow icon unicode character. The down arrow icon unicode character. The number 0 icon unicode character. The number 1 icon unicode character. The number 2 icon unicode character. The number 3 icon unicode character. The number 4 icon unicode character. The number 5 icon unicode character. The number 6 icon unicode character. The number 7 icon unicode character. The number 8 icon unicode character. The number 9 icon unicode character. The boxed number 0 icon unicode character. The boxed number 1 icon unicode character. The boxed number 2 icon unicode character. The boxed number 3 icon unicode character. The boxed number 4 icon unicode character. The boxed number 5 icon unicode character. The boxed number 6 icon unicode character. The boxed number 7 icon unicode character. The boxed number 8 icon unicode character. The boxed number 9 icon unicode character. The boxed number 10 icon unicode character. The boxed number 11 icon unicode character. The boxed number 12 icon unicode character. The boxed number 13 icon unicode character. The boxed number 14 icon unicode character. The boxed number 15 icon unicode character. The boxed number 16 icon unicode character. The boxed number 17 icon unicode character. The boxed number 18 icon unicode character. The boxed number 19 icon unicode character. The boxed number 20 icon unicode character. The boxed number 21 icon unicode character. The boxed number 22 icon unicode character. The boxed number 23 icon unicode character. The boxed number 24 icon unicode character. The boxed number 25 icon unicode character. The boxed number 26 icon unicode character. The boxed number 27 icon unicode character. The boxed number 28 icon unicode character. The boxed number 29 icon unicode character. The boxed number 30 icon unicode character. The boxed number 31 icon unicode character. The boxed plus icon unicode character. The bosed question mark icon unicode character. The boxed star icon unicode character. The boxed Roman numeral 1 (I) icon unicode character. The boxed Roman numeral 2 (II) icon unicode character. The boxed Roman numeral 3 (III) icon unicode character. The boxed Roman numeral 4 (IV) icon unicode character. The boxed Roman numeral 5 (V) icon unicode character. The boxed Roman numeral 6 (VI) icon unicode character. The boxed letter A icon unicode character. The boxed letter B icon unicode character. The boxed letter C icon unicode character. The boxed letter D icon unicode character. The boxed letter E icon unicode character. The boxed letter F icon unicode character. The boxed letter G icon unicode character. The boxed letter H icon unicode character. The boxed letter I icon unicode character. The boxed letter J icon unicode character. The boxed letter K icon unicode character. The boxed letter L icon unicode character. The boxed letter M icon unicode character. The boxed letter N icon unicode character. The boxed letter O icon unicode character. The boxed letter P icon unicode character. The boxed letter Q icon unicode character. The boxed letter R icon unicode character. The boxed letter S icon unicode character. The boxed letter T icon unicode character. The boxed letter U icon unicode character. The boxed letter V icon unicode character. The boxed letter W icon unicode character. The boxed letter X icon unicode character. The boxed letter Y icon unicode character. The boxed letter Z icon unicode character. The circle icon unicode character. The square icon unicode character. The cross icon unicode character. The triangle icon unicode character. The hexagon icon unicode character. The no-circle/prohobited icon unicode character. The dice icon unicode character. The debuff icon unicode character. The buff icon unicode character. The cross-world icon unicode character. The Eureka level icon unicode character. The link marker icon unicode character. The glamoured icon unicode character. The glamoured and dyed icon unicode character. The synced quest icon unicode character. The repeatable quest icon unicode character. The [あ] character indicating that the Japanese IME is in full-width Hiragana input mode. Half-width Hiragana exists as a Windows API constant, but the feature is unused, or at least unexposed to the end user via the IME. The [ア] character indicating that the Japanese IME is in full-width Katakana input mode. The [A] character indicating that Japanese or Korean IME is in full-width Latin character input mode. The [_ア] character indicating that the Japanese IME is in half-width Katakana input mode. The [_A] character indicating that Japanese or Korean IME is in half-width Latin character input mode. The [가] character indicating that the Korean IME is in Hangul input mode. Use and for alphanumeric input mode, toggled via Alt+=. The [中] character indicating that the Chinese IME is in Han character input mode. The [英] character indicating that the Chinese IME is in Latin character input mode. The instance (1) icon unicode character. The instance (2) icon unicode character. The instance (3) icon unicode character. The instance (4) icon unicode character. The instance (5) icon unicode character. The instance (6) icon unicode character. The instance (7) icon unicode character. The instance (8) icon unicode character. The instance (9) icon unicode character. The instance merged icon unicode character. The English local time icon unicode character. The English server time icon unicode character. The English Eorzea time icon unicode character. The German local time icon unicode character. The German server time icon unicode character. The German Eorzea time icon unicode character. The French local time icon unicode character. The French server time icon unicode character. The French Eorzea time icon unicode character. The Japanese local time icon unicode character. The Japanese server time icon unicode character. The Japanese Eorzea time icon unicode character. The boxed, outlined number 0 icon unicode character. The boxed, outlined number 1 icon unicode character. The boxed, outlined number 2 icon unicode character. The boxed, outlined number 3 icon unicode character. The boxed, outlined number 4 icon unicode character. The boxed, outlined number 5 icon unicode character. The boxed, outlined number 6 icon unicode character. The boxed, outlined number 7 icon unicode character. The boxed, outlined number 8 icon unicode character. The boxed, outlined number 9 icon unicode character. Extension methods for . Convert the SeIconChar to a type. The icon to convert. The converted icon. Conver the SeIconChar to a type. The icon to convert. The converted icon. This class represents special icons that can appear in chat naturally or as IconPayloads. No icon. The controller D-pad up icon. The controller D-pad down icon. The controller D-pad left icon. The controller D-pad right icon. The controller D-pad up/down icon. The controller D-pad left/right icon. The controller D-pad all directions icon. The controller button 0 icon (Xbox: B, PlayStation: Circle). The controller button 1 icon (XBox: A, PlayStation: Cross). The controller button 2 icon (XBox: X, PlayStation: Square). The controller button 3 icon (BBox: Y, PlayStation: Triangle). The controller left shoulder button icon. The controller right shoulder button icon. The controller left trigger button icon. The controller right trigger button icon. The controller left analog stick in icon. The controller right analog stick in icon. The controller start button icon. The controller back button icon. The controller left analog stick icon. The controller left analog stick up/down icon. The controller left analog stick left/right icon. The controller right analog stick icon. The controller right analog stick up/down icon. The controller right analog stick left/right icon. The La Noscea region icon. The Black Shroud region icon. The Thanalan region icon. The auto translate begin icon. The auto translate end icon. The fire element icon. The ice element icon. The wind element icon. The earth element icon. The lightning element icon. The water element icon. The level sync icon. The warning icon. The Ishgard region icon. The Aetheryte icon. The Aethernet icon. The gold star icon. The silver star icon. The green dot icon. The unsheathed sword icon. The sheathed sword icon. The dice icon. The flyable zone icon. The no-flying zone icon. The no-circle/prohibited icon. The sprout icon. The mentor icon. The PvE mentor icon. The crafting mentor icon. The PvP mentor icon. The tank role icon. The healer role icon. The DPS role icon. The crafter role icon. The gatherer role icon. The "any" role icon. The cross-world icon. The slay type Fate icon. The boss type Fate icon. The gather type Fate icon. The defend type Fate icon. The escort type Fate icon. The special type 1 Fate icon. The returner icon. The Far-East region icon. The Gyr Albania region icon. The special type 2 Fate icon. The priority world icon. The elemental level icon. The exclamation rectangle icon. The notorious monster icon. The recording icon. The alarm icon. The arrow up icon. The arrow down icon. The Crystarium region icon. The mentor problem icon. The unknown gold type Fate icon. The orange diamond icon. The crafting type Fate icon. The Fan Festival logo. The Sharlayan region icon. The Ilsabard region icon. The Garlemald region icon. The Island Sanctuary icon. The Physical Damage icon. The Magical Damage icon. The Special Damage icon. A gold star icon with an orange exclamation mark. A blue star icon. A blue star icon with an orange exclamation mark. The PlayStation Plus icon. The Disconnecting icon. The Do Not Disturb icon. The Meteor icon. The Role Playing icon. The Gladiator icon. The Pugilist icon. The Marauder icon. The Lancer icon. The Archer icon. The Conjurer icon. The Thaumaturge icon. The Carpenter icon. The Blacksmith icon. The Armorer icon. The Goldsmith icon. The Leatherworker icon. The Weaver icon. The Alchemist icon. The Culinarian icon. The Miner icon. The Botanist icon. The Fisher icon. The Paladin icon. The Monk icon. The Warrior icon. The Dragoon icon. The Bard icon. The White Mage icon. The Black Mage icon. The Arcanist icon. The Summoner icon. The Scholar icon. The Rogue icon. The Ninja icon. The Machinist icon. The Dark Knight icon. The Astrologian icon. The Samurai icon. The Red Mage icon. The Blue Mage icon. The Gunbreaker icon. The Dancer icon. The Reaper icon. The Sage icon. The Waiting For Duty Finder icon. The Tural flag icon. The Viper icon. The Pictomancer icon. The Venture Delivery Moogle icon. An interface binding for a payload that can provide readable Text. Gets the readable text. This class represents a parsed SeString payload. Parsing helpers. Gets the type of this payload. Gets or sets a value indicating whether whether this payload has been modified since the last Encode(). Decodes a binary representation of a payload into its corresponding nice object payload. A reader positioned at the start of the payload, and containing at least one entire payload. The constructed Payload-derived object that was decoded from the binary data. Encode this payload object into a byte[] useable in-game for things like the chat log. If true, ignores any cached value and forcibly reencodes the payload from its internal representation. A byte[] suitable for use with in-game handlers such as the chat log. Encodes the internal state of this payload into a byte[] suitable for sending to in-game handlers such as the chat log. Encoded binary payload data suitable for use with in-game handlers. Decodes a byte stream from the game into a payload object. A BinaryReader containing at least all the data for this payload. The location holding the end of the data for this payload. The start byte of a payload. The end byte of a payload. This represents the type of embedded info in a payload. A player's name. The link to an iteme. The link to a map position. The link to a quest. The link to the party finder search conditions. A status effect. The link to a party finder listing. A custom Dalamud link. A link terminator. It is not exactly clear what this is, but seems to always follow a link. This represents the type of payload and how it should be encoded. See the . See the class. See the class. See the class. See any of the link-type classes: , , , , , . See the class. See the class. See the class. Retrieve the packed integer from SE's native data format. The BinaryReader instance. An integer. Create a packed integer in Se's native data format. The value to pack. A packed integer. From a binary packed integer, get the high and low bytes. The BinaryReader instance. The high and low bytes. Create a packed integer from the given high and low bytes. The high order bytes. The low order bytes. A packed integer. An SeString Payload containing an auto-translation/completion chat message. Initializes a new instance of the class. Creates a new auto-translate payload. The group id for this message. The key/row id for this message. Which table this is in depends on the group id and details the Completion table. This table is somewhat complicated in structure, and so using this constructor may not be very nice. There is probably little use to create one of these, however. Initializes a new instance of the class. Gets the autotranslate group. Gets the autotranslate key. Gets the actual text displayed in-game for this payload. Value is evaluated lazily and cached. Returns a string that represents the current object. A string that represents the current object. This class represents a custom Dalamud clickable chat link. Gets the plugin command ID to be linked. Gets an optional extra integer value 1. Gets an optional extra integer value 2. Gets the plugin name to be linked. Gets an optional extra string. An SeString Payload containing information about enabling or disabling italics formatting on following text. As with other formatting payloads, this is only useful in a payload block, where it affects any subsequent text payloads. Initializes a new instance of the class. Creates an EmphasisItalicPayload. Whether italics formatting should be enabled or disabled for following text. Initializes a new instance of the class. Creates an EmphasisItalicPayload. Gets a payload representing enabling italics on following text. Gets a payload representing disabling italics on following text. Gets a value indicating whether this payload enables italics formatting for following text. SeString payload representing a bitmap icon from fontIcon. Initializes a new instance of the class. Create a Icon payload for the specified icon. The Icon. Initializes a new instance of the class. Create a Icon payload for the specified icon. Gets or sets the icon the payload represents. An SeString Payload representing an interactable item link. Initializes a new instance of the class. Creates a payload representing an interactable item link for the specified item. The id of the item. Whether or not the link should be for the high-quality variant of the item. An optional name to include in the item link. Typically this should be left as null, or set to the normal item name. Actual overrides are better done with the subsequent TextPayload that is a part of a full item link in chat. Initializes a new instance of the class. Creates a payload representing an interactable item link for the specified item. The id of the item. Kind of item to encode. An optional name to include in the item link. Typically this should be left as null, or set to the normal item name. Actual overrides are better done with the subsequent TextPayload that is a part of a full item link in chat. Initializes a new instance of the class. Creates a payload representing an interactable item link for the specified item. Kinds of items that can be fetched from this payload. Normal items. Collectible Items. High-Quality items. Event/Key items. Gets or sets the displayed name for this item link. Note that incoming links only sometimes have names embedded, often the name is only present in a following text payload. Gets the actual item ID of this payload. Gets the raw, unadjusted item ID of this payload. Gets the underlying Lumina data represented by this payload. This is either a Item or EventItem . Gets a value indicating whether or not this item link is for a high-quality version of the item. Gets or sets the kind of item represented by this payload. Initializes a new instance of the class. Creates a payload representing an interactable item link for the specified item. The raw, unadjusted id of the item. An optional name to include in the item link. Typically this should be left as null, or set to the normal item name. Actual overrides are better done with the subsequent TextPayload that is a part of a full item link in chat. The created item payload. An SeString Payload representing an interactable map position link. Initializes a new instance of the class. Creates an interactable MapLinkPayload from a human-readable position. The id of the TerritoryType entry for this link. The id of the Map entry for this link. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. Initializes a new instance of the class. Creates an interactable MapLinkPayload from a raw position. The id of the TerritoryType entry for this link. The id of the Map entry for this link. The internal raw x-coordinate for this link. The internal raw y-coordinate for this link. Initializes a new instance of the class. Creates an interactable MapLinkPayload from a human-readable position. Gets the Map specified for this map link. Gets the TerritoryType specified for this map link. Gets the internal x-coordinate for this map position. Gets the internal y-coordinate for this map position. Gets the readable x-coordinate position for this map link. This value is approximate and unrounded. Gets the readable y-coordinate position for this map link. This value is approximate and unrounded. Gets the printable map coordinates for this link. This value tries to match the in-game printable text as closely as possible but is an approximation and may be slightly off for some positions. Gets the region name for this map link. This corresponds to the upper zone name found in the actual in-game map UI. eg, "La Noscea". Gets the place name for this map link. This corresponds to the lower zone name found in the actual in-game map UI. eg, "Limsa Lominsa Upper Decks". Gets the data string for this map link, for use by internal game functions that take a string variant and not a binary payload. A wrapped newline character. Gets an instance of NewLinePayload. Gets the text of this payload, evaluates to Environment.NewLine. An SeString Payload representing an interactable party finder link. Delimiting byte for party finder payload flags. Initializes a new instance of the class. Creates a payload representing an interactable party finder link for the specified party finder listing. The listing ID of the party finder listing. The party finder link type that should be encoded with this link. Initializes a new instance of the class. Creates a payload representing an interactable party finder notification link. Represents the flags in a party finder link. Indicates that the party finder link is for a party that is limited to the host's home world. Indicates that the party finder link is for the "Display advanced search results in log." option. Indicates that the party finder link type was unspecified. Only for internal use. Not used by SE and omitted from encoding. Gets the party finder listing ID. Gets the link type. An SeString Payload representing a player link. Initializes a new instance of the class. Create a PlayerPayload link for the specified player. The player's displayed name. The player's home server id. Initializes a new instance of the class. Create a PlayerPayload link for the specified player. Gets the Lumina object representing the player's home server. Gets or sets the player's displayed name. This does not contain the server name. Gets the text representation of this player link matching how it might appear in-game. The world name will always be present. An SeString Payload representing an interactable quest link. Initializes a new instance of the class. Creates a payload representing an interactable quest link for the specified quest. The id of the quest. Initializes a new instance of the class. Creates a payload representing an interactable quest link for the specified quest. Gets the underlying Lumina Quest represented by this payload. An SeString Payload representing unhandled raw payload data. Mainly useful for constructing unhandled hardcoded payloads, or forwarding any unknown payloads without modification. Initializes a new instance of the class. The payload data. Initializes a new instance of the class. The chunk type. Gets a fixed Payload representing a common link-termination sequence, found in many payload chains. Gets the entire payload byte sequence for this payload. The returned data is a clone and modifications will not be persisted. A wrapped '–'. Gets an instance of SeHyphenPayload. Gets the text, just a '–'. An SeString Payload representing an interactable status link. Initializes a new instance of the class. Creates a new StatusPayload for the given status id. The id of the Status for this link. Initializes a new instance of the class. Creates a new StatusPayload for the given status id. Gets the Lumina Status object represented by this payload. An SeString Payload representing a plain text string. Initializes a new instance of the class. Creates a new TextPayload for the given text. The text to include for this payload. Initializes a new instance of the class. Creates a new TextPayload for the given text. Gets or sets the text contained in this payload. This may contain SE's special unicode characters. An SeString Payload representing a UI foreground color applied to following text payloads. Initializes a new instance of the class. Creates a new UIForegroundPayload for the given UIColor key. A UIColor key. Initializes a new instance of the class. Creates a new UIForegroundPayload for the given UIColor key. Gets a payload representing disabling foreground color on following text. Gets a value indicating whether or not this payload represents applying a foreground color, or disabling one. Gets a Lumina UIColor object representing this payload. The actual color data is at UIColor.UIForeground. Gets or sets the color key used as a lookup in the UIColor table for this foreground color. Gets the Red/Green/Blue/Alpha values for this foreground color, encoded as a typical hex color. Gets the ABGR value for this foreground color, as ImGui requires it in PushColor. An SeString Payload representing a UI glow color applied to following text payloads. Initializes a new instance of the class. Creates a new UIForegroundPayload for the given UIColor key. A UIColor key. Initializes a new instance of the class. Creates a new UIForegroundPayload for the given UIColor key. Gets a payload representing disabling glow color on following text. Gets or sets the color key used as a lookup in the UIColor table for this glow color. Gets a value indicating whether or not this payload represents applying a glow color, or disabling one. Gets the Red/Green/Blue/Alpha values for this glow color, encoded as a typical hex color. Gets the ABGR value for this glow color, as ImGui requires it in PushColor. Gets a Lumina UIColor object representing this payload. The actual color data is at UIColor.UIGlow. All parsed types of SeString payloads. An unknown SeString. An SeString payload representing a player link. An SeString payload representing an Item link. An SeString payload representing an Status Effect link. An SeString payload representing raw, typed text. An SeString payload representing a text foreground color. An SeString payload representing a text glow color. An SeString payload representing a map position link, such as from <flag> or <pos>. An SeString payload representing an auto-translate dictionary entry. An SeString payload representing italic emphasis formatting on text. An SeString payload representing a bitmap icon. A SeString payload representing a quest link. A SeString payload representing a custom clickable link for dalamud plugins. An SeString payload representing a newline character. An SeString payload representing a doublewide SE hypen. An SeString payload representing a party finder link. This class represents a parsed SeString. Initializes a new instance of the class. Creates a new SeString from an ordered list of payloads. Initializes a new instance of the class. Creates a new SeString from an ordered list of payloads. The Payload objects to make up this string. Initializes a new instance of the class. Creates a new SeString from an ordered list of payloads. The Payload objects to make up this string. Gets a list of Payloads necessary to display the arrow link marker icon in chat with the appropriate glow and coloring. A list of all the payloads required to insert the link marker. Gets an empty SeString. Gets the ordered list of payloads included in this SeString. Gets all of the raw text from a message as a single joined string. All the raw text from the contained payloads, joined into a single string. Implicitly convert a string into a SeString containing a . string to convert. Equivalent SeString. Implicitly convert a string into a SeString containing a . string to convert. Equivalent SeString. Parse a binary game message into an SeString. Pointer to the string's data in memory. Length of the string's data in memory. An SeString containing parsed Payload objects for each payload in the data. Parse a binary game message into an SeString. Binary message payload data in SE's internal format. An SeString containing parsed Payload objects for each payload in the data. Parse a binary game message into an SeString. Binary message payload data in SE's internal format. An SeString containing parsed Payload objects for each payload in the data. Parse a binary game message into an SeString. Pointer to the string's data in memory. Needs to be null-terminated. An SeString containing parsed Payload objects for each payload in the data. Creates an SeString representing an entire Payload chain that can be used to link an item in the chat log. The id of the item to link. Whether to link the high-quality variant of the item. An optional name override to display, instead of the actual item name. An SeString containing all the payloads necessary to display an item link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link an item in the chat log. The id of the item to link. The kind of item to link. An optional name override to display, instead of the actual item name. An SeString containing all the payloads necessary to display an item link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link an item in the chat log. The Lumina Item to link. Whether to link the high-quality variant of the item. An optional name override to display, instead of the actual item name. An SeString containing all the payloads necessary to display an item link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log. The id of the TerritoryType for this map link. The id of the Map for this map link. The raw x-coordinate for this link. The raw y-coordinate for this link.. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log. The id of the TerritoryType for this map link. The id of the Map for this map link. An optional area instance number to be included in this link. The raw x-coordinate for this link. The raw y-coordinate for this link.. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log. The id of the TerritoryType for this map link. The id of the Map for this map link. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log. The id of the TerritoryType for this map link. The id of the Map for this map link. An optional area instance number to be included in this link. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log, matching a specified zone name. Returns null if no corresponding PlaceName was found. The name of the location for this link. This should be exactly the name as seen in a displayed map link in-game for the same zone. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire Payload chain that can be used to link a map position in the chat log, matching a specified zone name. Returns null if no corresponding PlaceName was found. The name of the location for this link. This should be exactly the name as seen in a displayed map link in-game for the same zone. An optional area instance number to be included in this link. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. An SeString containing all of the payloads necessary to display a map link in the chat log. Creates an SeString representing an entire payload chain that can be used to link party finder listings in the chat log. The listing ID of the party finder entry. The name of the recruiter. Whether the listing is limited to the current world or not. An SeString containing all the payloads necessary to display a party finder link in the chat log. Creates an SeString representing an entire payload chain that can be used to link the party finder search conditions. The text that should be displayed for the link. An SeString containing all the payloads necessary to display a link to the party finder search conditions. Creates a SeString from a json. (For testing - not recommended for production use.) A serialized SeString produced by ToJson() . A SeString initialized with values from the json. Serializes the SeString to json. An json representation of this object. Appends the contents of one SeString to this one. The SeString to append to this one. This object. Appends a list of payloads to this SeString. The Payloads to append. This object. Appends a single payload to this SeString. The payload to append. This object. Encodes the Payloads in this SeString into a binary representation suitable for use by in-game handlers, such as the chat log. The binary encoded payload data. Encodes the Payloads in this SeString into a binary representation suitable for use by in-game handlers, such as the chat log. Includes a null terminator at the end of the string. The binary encoded payload data. Get the text value of this SeString. The TextValue property. Helper class to build SeStrings using a builder pattern. Gets the built SeString. Append another SeString to the builder. The SeString to append. The current builder. Append raw text to the builder. The raw text. The current builder. Append payloads to the builder. A list of payloads. The current builder. Append raw text to the builder. The raw text. The current builder. Start colored text in the current builder. The text color. The current builder. Turn off a previous colored text. The current builder. Add colored text to the current builder. The raw text. The text color. The current builder. Start an UiGlow in the current builder. The glow color. The current builder. Turn off a previous UiGlow. The current builder. Add glowing text to the current builder. The raw text. The glow color. The current builder. Add an icon to the builder. The icon to add. The current builder. Add an item link to the builder. The item ID. Whether or not the item is high quality. Override for the item's name. The current builder. Add an item link to the builder. The item ID. Kind of item to encode. Override for the item's name. The current builder. Add an item link to the builder. The raw item ID. The current builder. To terminate this item link, add a . Add italicized raw text to the builder. The raw text. The current builder. Turn italics on. The current builder. Turn italics off. The current builder. Add a map link payload to the builder. The id of the TerritoryType entry for this link. The id of the Map entry for this link. The internal raw x-coordinate for this link. The internal raw y-coordinate for this link. The current builder. Add a map link payload to the builder. The id of the TerritoryType entry for this link. The id of the Map entry for this link. The human-readable x-coordinate for this link. The human-readable y-coordinate for this link. An optional offset to account for rounding and truncation errors; it is best to leave this untouched in most cases. The current builder. Add a quest link to the builder. The quest ID. The current builder. Add a status effect link to the builder. The status effect ID. The current builder. Add a link to the party finder search conditions to the builder. The current builder. Add a party finder listing link to the builder. The listing ID of the party finder listing. Whether the listing is limited to the recruiting world. The current builder. Add a payload to the builder. The payload to add. The current builder. Return the built string. The built string. Encode the built string to bytes. The built string, encoded to UTF-8 bytes. Return the text representation of this string. The text representation of this string. This class represents a single chat log entry. Gets or sets the type of entry. Gets or sets the message timestamp. Gets or sets the sender name. Gets or sets the message. Gets or sets the name payloads. Gets or sets the message payloads. Gets or sets a value indicating whether new message sounds should be silenced or not. The FFXIV chat types as seen in the LogKind excel sheet. No chat type. The debug chat type. The urgent chat type. The notice chat type. The say chat type. The shout chat type. The outgoing tell chat type. The incoming tell chat type. The party chat type. The alliance chat type. The linkshell 1 chat type. The linkshell 2 chat type. The linkshell 3 chat type. The linkshell 4 chat type. The linkshell 5 chat type. The linkshell 6 chat type. The linkshell 7 chat type. The linkshell 8 chat type. The free company chat type. The novice network chat type. The custom emotes chat type. The standard emotes chat type. The yell chat type. The cross-world party chat type. The PvP team chat type. The cross-world linkshell chat type. The echo chat type. The system error chat type. The system message chat type. The system message (gathering) chat type. The error message chat type. The NPC Dialogue chat type. The NPC Dialogue (Announcements) chat type. The retainer sale chat type. This might be used for other purposes. The cross-world linkshell 2 chat type. The cross-world linkshell 3 chat type. The cross-world linkshell 4 chat type. The cross-world linkshell 5 chat type. The cross-world linkshell 6 chat type. The cross-world linkshell 7 chat type. The cross-world linkshell 8 chat type. Extension methods for the type. Get the InfoAttribute associated with this chat type. The chat type. The info attribute. Storage for relevant information associated with the chat type. Initializes a new instance of the class. The fancy name. The name slug. The default color. Gets the "fancy" name of the type. Gets the type name slug or short-form. Gets the type default color. A SigScanner facilitates searching for memory signatures in a given ProcessModule. Gets a value indicating whether or not the search on this module is performed on a copy. Gets a value indicating whether or not the ProcessModule is 32-bit. Gets the base address of the search area. When copied, this will be the address of the copy. Gets the base address of the .text section search area. Gets the offset of the .text section from the base of the module. Gets the size of the text section. Gets the base address of the .data section search area. Gets the offset of the .data section from the base of the module. Gets the size of the .data section. Gets the base address of the .rdata section search area. Gets the offset of the .rdata section from the base of the module. Gets the size of the .rdata section. Gets the ProcessModule on which the search is performed. Scan for a .data address using a .text function. This is intended to be used with IDA sigs. Place your cursor on the line calling a static address, and create and IDA sig. The signature and offset should not break through instruction boundaries. The signature of the function using the data. The offset from function start of the instruction using the data. An IntPtr to the static memory location. Try scanning for a .data address using a .text function. This is intended to be used with IDA sigs. Place your cursor on the line calling a static address, and create and IDA sig. The signature of the function using the data. An IntPtr to the static memory location, if found. The offset from function start of the instruction using the data. true if the signature was found. Scan for a byte signature in the .data section. The signature. The real offset of the found signature. Try scanning for a byte signature in the .data section. The signature. The real offset of the signature, if found. true if the signature was found. Scan for a byte signature in the whole module search area. The signature. The real offset of the found signature. Try scanning for a byte signature in the whole module search area. The signature. The real offset of the signature, if found. true if the signature was found. Resolve a RVA address. The address of the next instruction. The relative offset. The calculated offset. Scan for a byte signature in the .text section. The signature. The real offset of the found signature. Try scanning for a byte signature in the .text section. The signature. The real offset of the signature, if found. true if the signature was found. Scan for all matching byte signatures in the .text section. The Signature. The list of real offsets of the found elements based on signature. Scan for all matching byte signatures in the .text section. The Signature. Cancellation token. Enumerable yielding the real offsets of the found elements based on signature. Manages a hook which can be used to intercept a call to native function. This class is basically a thin wrapper around the LocalHook type to provide helper functions. Initializes a new instance of the class. This is an assembly hook and should not be used for except under unique circumstances. Hook is not activated until Enable() method is called. A memory address to install a hook. Assembly code representing your hook. The name of what you are hooking, since a delegate is not required. How the hook is inserted into the execution flow. Initializes a new instance of the class. This is an assembly hook and should not be used for except under unique circumstances. Hook is not activated until Enable() method is called. A memory address to install a hook. FASM syntax assembly code representing your hook. The first line should be use64. The name of what you are hooking, since a delegate is not required. How the hook is inserted into the execution flow. Gets a memory address of the target function. Hook is already disposed. Gets a value indicating whether or not the hook is enabled. Gets a value indicating whether or not the hook has been disposed. Remove a hook from the current process. Starts intercepting a call to the function. Stops intercepting a call to the function. Check if this object has been disposed already. Defines the behaviour used by the Dalamud.Hooking.AsmHook. This is equivalent to the same enumeration in Reloaded and is included so you do not have to reference the assembly. Executes your assembly code before the original. Executes your assembly code after the original. Do not execute original replaced code (Dangerous!). Manages a hook which can be used to intercept a call to native function. This class is basically a thin wrapper around the LocalHook type to provide helper functions. Delegate type to represents a function prototype. This must be the same prototype as original function do. Initializes a new instance of the class. A memory address to install a hook. Gets a memory address of the target function. Hook is already disposed. Gets a delegate function that can be used to call the actual function as if function is not hooked yet. Hook is already disposed. Gets a delegate function that can be used to call the actual function as if function is not hooked yet. This can be called even after Dispose. Gets a value indicating whether or not the hook is enabled. Gets a value indicating whether or not the hook has been disposed. Remove a hook from the current process. Starts intercepting a call to the function. Stops intercepting a call to the function. Creates a hook by rewriting import table address. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. The hook with the supplied parameters. Creates a hook by rewriting import table address. Module to check for. Current process' main module if null. Name of the DLL, including the extension. Decorated name of the function. Hint or ordinal. 0 to unspecify. Callback function. Delegate must have a same original function prototype. The hook with the supplied parameters. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. A name of the module currently loaded in the memory. (e.g. ws2_32.dll). A name of the exported function name (e.g. send). Callback function. Delegate must have a same original function prototype. The hook with the supplied parameters. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A name of the module currently loaded in the memory. (e.g. ws2_32.dll). A name of the exported function name (e.g. send). Callback function. Delegate must have a same original function prototype. Use the MinHook hooking library instead of Reloaded. The hook with the supplied parameters. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Use the MinHook hooking library instead of Reloaded. The hook with the supplied parameters. Check if this object has been disposed already. Interface describing a generic hook. Gets the address to hook. Gets a value indicating whether or not the hook is enabled. Gets a value indicating whether or not the hook is disposed. Gets the name of the hooking backend used for the hook. This class represents a callsite hook. Only the specific address's instructions are replaced with this hook. This is a destructive operation, no other callsite hooks can coexist at the same address. There's no .Original for this hook type. This is only intended for be for functions where the parameters provided allow you to invoke the original call. This class was specifically added for hooking virtual function callsites. Only the specific callsite hooked is modified, if the game calls the virtual function from other locations this hook will not be triggered. Delegate signature for this hook. Initializes a new instance of the class. Address of the instruction to replace. Delegate to invoke. Gets a value indicating whether or not the hook is enabled. Starts intercepting a call to the function. Stops intercepting a call to the function. Remove a hook from the current process. Manages a hook with MinHook. Delegate type to represents a function prototype. This must be the same prototype as original function do. Initializes a new instance of the class. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Calling assembly. Plugin-scoped version of service used to create hooks. Initializes a new instance of the class. Plugin this instance belongs to. SigScanner instance for target module. Class containing information about registered hooks. Initializes a new instance of the class. The tracked hook. The hook delegate. The assembly implementing the hook. Gets the RVA of the hook. Gets the tracked hook. Gets the tracked delegate. Gets the assembly implementing the hook. This class manages the final disposition of hooks, cleaning up any that have not reverted their changes. Logger shared with . Gets sync root object for hook enabling/disabling. Gets a static list of tracked and registered hooks. Gets a static dictionary of unhookers for a hooked address. Gets a static dictionary of the number of hooks on a given address. Creates a new Unhooker instance for the provided address if no such unhooker was already registered, or returns an existing instance if the address was registered previously. By default, the unhooker will restore between 0 and 0x32 bytes depending on the detected size of the hook. To specify the minimum and maximum bytes restored manually, use . The address of the instruction. A new Unhooker instance. Creates a new Unhooker instance for the provided address if no such unhooker was already registered, or returns an existing instance if the address was registered previously. The address of the instruction. The minimum amount of bytes to restore when unhooking. The maximum amount of bytes to restore when unhooking. A new Unhooker instance. Follow a JMP or Jcc instruction to the next logical location. Address of the instruction. The address referenced by the jmp. Manages a hook with MinHook. Delegate type to represents a function prototype. This must be the same prototype as original function do. Initializes a new instance of the class. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Calling assembly. Manages a hook that works by replacing the vtable of target object. Extra data for overriden vtable entries, primarily for keeping references to delegates that are used with . Initializes a new instance of the class. Address to vtable. Usually the address of the object itself. Number of methods in this vtable. Initializes a new instance of the class. Address to vtable. Usually the address of the object itself. Number of methods in this vtable. Finalizes an instance of the class. Gets the span view of original vtable. Gets the span view of overriden vtable. Gets the address of the pointer to the vtable. Gets the address of the original vtable. Gets the address of the overriden vtable. Disables the hook. Enables the hook. Gets the original method address of the given method index. Index of the method. Address of the original method. Gets the original method of the given method index, as a delegate of given type. Index of the method. Type of delegate. Delegate to the original method. Resets a method to the original function. Index of the method. Sets a method in vtable to the given address of function. Index of the method. Address of the detour function. Additional reference to keep in memory. Sets a method in vtable to the given delegate. Index of the method. Detour delegate. Type of delegate. Sets a method in vtable to the given delegate. Index of the method. Detour delegate. Original method delegate. Type of delegate. Creates a new instance of that manages one entry in the vtable hook. Index of the method. Detour delegate. Type of delegate. A new instance of . Even if a single hook is enabled, without , the hook will remain disabled. Typed version of . VTable struct. Initializes a new instance of the class. Address to vtable. Usually the address of the object itself. Gets the original vtable. Gets the overriden vtable. Gets the index of the method by method name. Name of the method. Index of the method. Gets the original method address of the given method index. Name of the method. Address of the original method. Gets the original method of the given method index, as a delegate of given type. Name of the method. Type of delegate. Delegate to the original method. Resets a method to the original function. Name of the method. Sets a method in vtable to the given address of function. Name of the method. Address of the detour function. Additional reference to keep in memory. Sets a method in vtable to the given delegate. Name of the method. Detour delegate. Type of delegate. Sets a method in vtable to the given delegate. Name of the method. Detour delegate. Original method delegate. Type of delegate. Creates a new instance of that manages one entry in the vtable hook. Name of the method. Detour delegate. Type of delegate. A new instance of . Even if a single hook is enabled, without , the hook will remain disabled. Reserved for future use. Reserved for future use. Reserved for future use. Reserved for future use. The section should not be padded to the next boundary. This flag is obsolete and is replaced by IMAGE_SCN_ALIGN_1BYTES. This is valid only for object files. Reserved for future use. The section contains executable code. The section contains initialized data. The section contains uninitialized data. Reserved for future use. The section contains comments or other information. The .drectve section has this type. This is valid for object files only. Reserved for future use. The section will not become part of the image. This is valid only for object files. The section contains COMDAT data. For more information, see section 5.5.6, COMDAT Sections (Object Only). This is valid only for object files. Reset speculative exceptions handling bits in the TLB entries for this section. The section contains data referenced through the global pointer (GP). Reserved for future use. Reserved for future use. Reserved for future use. Reserved for future use. Align data on a 1-byte boundary. Valid only for object files. Align data on a 2-byte boundary. Valid only for object files. Align data on a 4-byte boundary. Valid only for object files. Align data on an 8-byte boundary. Valid only for object files. Align data on a 16-byte boundary. Valid only for object files. Align data on a 32-byte boundary. Valid only for object files. Align data on a 64-byte boundary. Valid only for object files. Align data on a 128-byte boundary. Valid only for object files. Align data on a 256-byte boundary. Valid only for object files. Align data on a 512-byte boundary. Valid only for object files. Align data on a 1024-byte boundary. Valid only for object files. Align data on a 2048-byte boundary. Valid only for object files. Align data on a 4096-byte boundary. Valid only for object files. Align data on an 8192-byte boundary. Valid only for object files. The section contains extended relocations. The section can be discarded as needed. The section cannot be cached. The section is not pageable. The section can be shared in memory. The section can be executed as code. The section can be read. The section can be written to. Class facilitating hooks via reloaded. Delegate of the hook. Initializes a new instance of the class. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Calling assembly. A class which stores a copy of the bytes at a location which will be hooked in the future, such that those bytes can be restored later to "unhook" the function. Initializes a new instance of the class. Upon creation, the Unhooker stores a copy of the bytes stored at the provided address, and can be used to restore these bytes when the hook should be removed. As such this class should be instantiated before the function is actually hooked. The address which will be hooked. The minimum amount of bytes to restore when unhooking. The maximum amount of bytes to restore when unhooking. When called after a hook is created, checks the pre-hook original bytes and post-hook modified bytes, trimming the original bytes stored and removing unmodified bytes from the end of the byte sequence. Assuming no concurrent actions modified the same address space, this should result in storing only the minimum bytes required to unhook the function. Attempts to unhook the function by replacing the hooked bytes with the original bytes. If was called, the trimmed original bytes stored at that time will be used for unhooking. Otherwise, a naive algorithm which only restores bytes until the first unchanged byte will be used in order to avoid overwriting adjacent data. Event arguments for , and the manager for individual WndProc hook. Initializes a new instance of the class. The owner. The handle of the target window of the message. The viewport ID. Gets the handle of the target window of the message. Gets the ImGui viewport ID. Gets or sets the message. Gets or sets the WPARAM. Gets or sets the LPARAM. Gets or sets a value indicating whether to suppress calling the next WndProc in the chain.
Does nothing if changed from .
Gets or sets the return value.
Has the return value from next window procedure, if accessed from .
Sets to true and sets . The new return value. Sets to true and sets from the result of . Delegate for overriding WndProc. The arguments. Manages WndProc hooks for game main window and extra ImGui viewport windows. Called before WndProc. Called after WndProc. Invokes . The arguments. Invokes . The arguments. Removes from the list of known WndProc overrides. Object to remove. Detour for . Used to discover new windows to hook. The message. The original return value. Class providing helper functions when facilitating animations. Lerp between two floats. The first float. The second float. The point to lerp to. The lerped value. Lerp between two vectors. The first vector. The second float. The point to lerp to. The lerped vector. Base class facilitating the implementation of easing functions. Initializes a new instance of the class with the specified duration. The animation duration. Gets or sets the origin point of the animation. Gets or sets the destination point of the animation. Gets the resulting point at the current timestep. Gets or sets a value indicating whether the result of the easing should be inversed. Gets or sets the current value of the animation, from 0 to 1. Gets or sets the duration of the animation. Gets a value indicating whether or not the animation is running. Gets a value indicating whether or not the animation is done. Gets the progress of the animation, from 0 to 1. Starts the animation from where it was last stopped, or from the start if it was never started before. Stops the animation at the current point. Restarts the animation. Resets the animation. Updates the animation. Class providing an "InCirc" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InCubic" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InElastic" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InOutCirc" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InOutCubic" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InOutCirc" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InOutQuint" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InOutSine" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InQuint" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "InSine" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "OutCirc" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "OutCubic" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "OutElastic" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "OutQuint" easing animation. Initializes a new instance of the class. The duration of the animation. Class providing an "OutSine" easing animation. Initializes a new instance of the class. The duration of the animation. Class containing various methods for manipulating colors. Pack a vector4 color into a uint for use in ImGui APIs. The color to pack. The packed color. Convert a RGBA color in the range of 0.f to 1.f to a uint. The color to pack. The packed color. Convert a RGBA color in the range of 0.f to 1.f to a HSV color. The color to convert. The color in a HSV representation. Convert a HSV color to a RGBA color in the range of 0.f to 1.f. The color to convert. The RGB color. Performs a swap of endianness Exmaple: (FFXIV) RGBA to ABGR (ImGui). Color value in byte order X Y Z W. Endian swapped color value with new byte order W Z Y X. Lighten a color. The color to lighten. The amount to lighten. The lightened color. Lighten a color. The color to lighten. The amount to lighten. The lightened color. Darken a color. The color to lighten. The amount to lighten. The darkened color. Darken a color. The color to lighten. The amount to lighten. The darkened color. Saturate a color. The color to lighten. The amount to lighten. The saturated color. Saturate a color. The color to lighten. The amount to lighten. The saturated color. Desaturate a color. The color to lighten. The amount to lighten. The desaturated color. Desaturate a color. The color to lighten. The amount to lighten. The desaturated color. Applies the given opacity value ranging from 0 to 1 to an uint value containing a RGBA value. RGBA value to transform. Opacity to apply. Transformed value. Swaps red and blue channels of a given color in ARGB(BB GG RR AA) and ABGR(RR GG BB AA). Color to process. Swapped color. Fade a color. The color to lighten. The amount to lighten. The faded color. Set alpha of a color. The color. The alpha value to set. The color with the set alpha value. Fade a color. The color to lighten. The amount to lighten. The faded color. Convert a KnownColor to a RGBA vector with values between 0.0f and 1.0f. Known Color to convert. RGBA Vector with values between 0.0f and 1.0f. Normalizes a Vector4 with RGBA 255 color values to values between 0.0f and 1.0f If values are out of RGBA 255 range, the original value is returned. The color vector to convert. A vector with values between 0.0f and 1.0f. A struct representing a color using HSVA coordinates. The hue represented by this struct. The saturation represented by this struct. The value represented by this struct. The alpha represented by this struct. A struct representing a color using HSVA coordinates. The hue represented by this struct. The saturation represented by this struct. The value represented by this struct. The alpha represented by this struct. The hue represented by this struct. The saturation represented by this struct. The value represented by this struct. The alpha represented by this struct. Class containing frequently used colors for easier reference. Gets red used in dalamud. Gets grey used in dalamud. Gets grey used in dalamud. Gets grey used in dalamud. Gets white used in dalamud. Gets white used in dalamud. Gets orange used in dalamud. Gets yellow used in dalamud. Gets violet used in dalamud. Gets tank blue (UIColor37). Gets healer green (UIColor504). Gets dps red (UIColor545). Gets parsed grey. Gets parsed green. Gets parsed blue. Gets parsed purple. Gets parsed orange. Gets parsed pink. Gets parsed gold. Class containing various methods providing ImGui components. Class containing various methods providing ImGui components. Class containing various methods providing ImGui components. Class containing various methods providing ImGui components. Class containing various methods providing ImGui components. ImGui component used to create a radio-like input that uses icon buttons. Class containing various methods providing ImGui components. Class containing various methods providing ImGui components. Component for toggle buttons. ColorPicker with palette. Id for the color picker. The description of the color picker. The current color. Selected color. ColorPicker with palette with color picker options. Id for the color picker. The description of the color picker. The current color. Flags to customize color picker. Selected color. Alpha modified IconButton component to use an icon as a button with alpha and color options. The icon for the button. The ID of the button. The default color of the button. The color of the button when active. The color of the button when hovered. A multiplier for the current alpha levels. Indicator if button is clicked. Alpha modified Button component to use as a disabled button with alpha and color options. The button label with ID. The default color of the button. The color of the button when active. The color of the button when hovered. A multiplier for the current alpha levels. Indicator if button is clicked. HelpMarker component to add a help icon with text on hover. The text to display on hover. HelpMarker component to add a custom icon with text on hover. The text to display on hover. The icon to use. The color of the icon. IconButton component to use an icon as a button. The icon for the button. Indicator if button is clicked. IconButton component to use an icon as a button. The icon for the button. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button. The icon for the button. The default color of the button. The color of the button when active. The color of the button when hovered. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button. The ID of the button. The icon for the button. Indicator if button is clicked. IconButton component to use an icon as a button. The ID of the button. The icon for the button. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button with color options. The ID of the button. The icon for the button. The default color of the button. The color of the button when active. The color of the button when hovered. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button. The ID of the button. The icon for the button. Indicator if button is clicked. IconButton component to use an icon as a button. The ID of the button. The icon for the button. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button with color options. The ID of the button. The icon for the button. The default color of the button. The color of the button when active. The color of the button when hovered. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button. Text already containing the icon string. Indicator if button is clicked. IconButton component to use an icon as a button. Text already containing the icon string. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button with color options. Text already containing the icon string. The default color of the button. The color of the button when active. The color of the button when hovered. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon. Indicator if button is clicked. IconButton component to use an icon as a button with color options. Icon to show. Text to show. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon and text. Indicator if button is clicked. IconButton component to use an icon as a button with color options. Icon to show. Text to show. The default color of the button. The color of the button when active. The color of the button when hovered. Sets the size of the button. If either dimension is set to 0, that dimension will conform to the size of the icon and text. Indicator if button is clicked. Get width of IconButtonWithText component. Icon to use. Text to use. Width. A radio-like input that uses icon buttons. The type of the value being set. Text that will be used to generate individual labels for the buttons. The value to set. The icons that will be displayed on each button. The options that each button will apply. Arranges the buttons in a grid with the given number of columns. 0 = ignored (all buttons drawn in one row). Sets the size of all buttons. If either dimension is set to 0, that dimension will conform to the size of the icon. The default color of the button range. The color of the actively-selected button. The color of the buttons when hovered. True if any button is clicked. A radio-like input that uses icon buttons. The type of the value being set. Text that will be used to generate individual labels for the buttons. The value to set. A list of all icon/option pairs. Arranges the buttons in a grid with the given number of columns. 0 = ignored (all buttons drawn in one row). Sets the size of all buttons. If either dimension is set to 0, that dimension will conform to the size of the icon. The default color of the button range. The color of the actively-selected button. The color of the buttons when hovered. True if any button is clicked. Test component to demonstrate how ImGui components work. TextWithLabel component to show labeled text. The label for text. The text value. The hint to show on hover. Draw a toggle button. The id of the button. The state of the switch. If the button has been interacted with this frame. Draw a disabled toggle button. The id of the button. The state of the switch. Enum describing pages the plugin installer can be opened to. Open to the "All Plugins" page. Open to the "Installed Plugins" page. Open to the "Can be updated" page. Open to the "Changelogs" page. Enum describing tabs the settings window can be opened to. Open to the "General" page. Open to the "Look & Feel" page. Open to the "Auto Updates" page. Open to the "Server Info Bar" page. Open to the "Experimental" page. Open to the "About" page. Implements interop enums and function calls to interact with external drag and drop. A manager that keeps state of external windows drag and drop events, and can be used to create ImGui drag and drop sources and targets for those external events. Implements the IDropTarget interface to interact with external drag and dropping. Gets a value indicating whether external drag and drop is available at all. Gets a value indicating whether a valid external drag and drop is currently active and hovering over any FFXIV-related viewport. Gets a value indicating whether there are any files or directories currently being dragged, or stored from the last drop. Gets the list of file paths currently being dragged from an external application over any FFXIV-related viewport, or stored from the last drop. Gets a set of all extensions available in the paths currently being dragged from an external application over any FFXIV-related viewport or stored from the last drop. Gets the list of directory paths currently being dragged from an external application over any FFXIV-related viewport or stored from the last drop. Enable external drag and drop. Disable external drag and drop. Create the drag and drop formats we accept. Invoked whenever a drag and drop process drags files into any FFXIV-related viewport. The drag and drop data. The mouse button used to drag as well as key modifiers. The global cursor position. Effects that can be used with this drag and drop process. Invoked every windows update-frame as long as the drag and drop process keeps hovering over an FFXIV-related viewport. The mouse button used to drag as well as key modifiers. The global cursor position. Effects that can be used with this drag and drop process. Can be invoked more often than once a XIV frame, so we are keeping track of frames to skip unnecessary updates. Invoked whenever a drag and drop process that hovered over any FFXIV-related viewport leaves all FFXIV-related viewports. Invoked whenever a drag process ends by dropping over any FFXIV-related viewport. The drag and drop data. The mouse button used to drag as well as key modifiers. The global cursor position. Effects that can be used with this drag and drop process. A service to handle external drag and drop from WinAPI. Gets a value indicating whether Drag and Drop functionality is available at all. Gets a value indicating whether anything is being dragged from an external application and over any of the games viewports. Gets the list of files currently being dragged from an external application over any of the games viewports. Gets the set of file types by extension currently being dragged from an external application over any of the games viewports. Gets the list of directories currently being dragged from an external application over any of the games viewports. Create an ImGui drag and drop source that is active only if anything is being dragged from an external source. The label used for the drag and drop payload. A function returning whether the current status is relevant for this source. Checked before creating the source but only if something is being dragged. Create an ImGui drag and drop source that is active only if anything is being dragged from an external source. The label used for the drag and drop payload. A function returning whether the current status is relevant for this source. Checked before creating the source but only if something is being dragged. Executes ImGui functions to build a tooltip. Should return true if it creates any tooltip and false otherwise. If multiple sources are active, only the first non-empty tooltip type drawn in a frame will be used. Create an ImGui drag and drop target on the last ImGui object. The label used for the drag and drop payload. On success, contains the list of file paths dropped onto the target. On success, contains the list of directory paths dropped onto the target. True if items were dropped onto the target this frame, false otherwise. Set categories associated with a font awesome icon. Initializes a new instance of the class. categories for enum member. Gets or sets categories. Extension methods for . Convert the FontAwesomeIcon to a type. The icon to convert. The converted icon. Convert the FontAwesomeIcon to a type. The icon to convert. The converted icon. Get FontAwesome search terms. The icon to pull search terms from. string array of search terms or empty array if none. Get FontAwesome categories. The icon to pull categories from. string array of categories or empty array if none. Class containing various helper methods for use with Font Awesome inside Dalamud. Get all non-obsolete icons. list of font awesome icons. Get all categories available on non-obsolete icons. list of font awesome icons. Get icons by search term. search term string. name of category to filter by. list array of font awesome icons matching search term. Font Awesome unicode characters for use with the font. No icon. The Font Awesome "rectangle-ad" icon unicode character. The Font Awesome "address-book" icon unicode character. The Font Awesome "address-card" icon unicode character. The Font Awesome "circle-half-stroke" icon unicode character. The Font Awesome "spray-can-sparkles" icon unicode character. The Font Awesome "align-center" icon unicode character. The Font Awesome "align-justify" icon unicode character. The Font Awesome "align-left" icon unicode character. The Font Awesome "align-right" icon unicode character. The Font Awesome "hand-dots" icon unicode character. The Font Awesome "truck-medical" icon unicode character. The Font Awesome "hands-asl-interpreting" icon unicode character. The Font Awesome "anchor" icon unicode character. The Font Awesome "anchor-circle-check" icon unicode character. The Font Awesome "anchor-circle-exclamation" icon unicode character. The Font Awesome "anchor-circle-xmark" icon unicode character. The Font Awesome "anchor-lock" icon unicode character. The Font Awesome "angles-down" icon unicode character. The Font Awesome "angles-left" icon unicode character. The Font Awesome "angles-right" icon unicode character. The Font Awesome "angles-up" icon unicode character. The Font Awesome "angle-down" icon unicode character. The Font Awesome "angle-left" icon unicode character. The Font Awesome "angle-right" icon unicode character. The Font Awesome "angle-up" icon unicode character. The Font Awesome "face-angry" icon unicode character. The Font Awesome "ankh" icon unicode character. The Font Awesome "apple-whole" icon unicode character. The Font Awesome "box-archive" icon unicode character. The Font Awesome "archway" icon unicode character. The Font Awesome "circle-down" icon unicode character. The Font Awesome "circle-left" icon unicode character. The Font Awesome "circle-right" icon unicode character. The Font Awesome "circle-up" icon unicode character. The Font Awesome "circle-arrow-down" icon unicode character. The Font Awesome "circle-arrow-left" icon unicode character. The Font Awesome "circle-arrow-right" icon unicode character. The Font Awesome "circle-arrow-up" icon unicode character. The Font Awesome "arrow-down" icon unicode character. The Font Awesome "arrow-down-long" icon unicode character. The Font Awesome "arrow-down-up-across-line" icon unicode character. The Font Awesome "arrow-down-up-lock" icon unicode character. The Font Awesome "arrow-left" icon unicode character. The Font Awesome "arrow-left-long" icon unicode character. The Font Awesome "arrow-right" icon unicode character. The Font Awesome "arrow-right-arrow-left" icon unicode character. The Font Awesome "arrow-right-from-bracket" icon unicode character. The Font Awesome "arrow-right-long" icon unicode character. The Font Awesome "arrow-right-to-bracket" icon unicode character. The Font Awesome "arrow-right-to-city" icon unicode character. The Font Awesome "up-down-left-right" icon unicode character. The Font Awesome "left-right" icon unicode character. The Font Awesome "up-down" icon unicode character. The Font Awesome "arrows-down-to-line" icon unicode character. The Font Awesome "arrows-down-to-people" icon unicode character. The Font Awesome "arrows-left-right" icon unicode character. The Font Awesome "arrows-left-right-to-line" icon unicode character. The Font Awesome "arrows-spin" icon unicode character. The Font Awesome "arrows-split-up-and-left" icon unicode character. The Font Awesome "arrows-to-circle" icon unicode character. The Font Awesome "arrows-to-dot" icon unicode character. The Font Awesome "arrows-to-eye" icon unicode character. The Font Awesome "arrows-turn-right" icon unicode character. The Font Awesome "arrows-turn-to-dots" icon unicode character. The Font Awesome "arrows-up-down" icon unicode character. The Font Awesome "arrows-up-down-left-right" icon unicode character. The Font Awesome "arrows-up-to-line" icon unicode character. The Font Awesome "arrow-trend-down" icon unicode character. The Font Awesome "arrow-trend-up" icon unicode character. The Font Awesome "arrow-turn-down" icon unicode character. The Font Awesome "arrow-turn-up" icon unicode character. The Font Awesome "arrow-up" icon unicode character. The Font Awesome "arrow-up-from-bracket" icon unicode character. The Font Awesome "arrow-up-from-ground-water" icon unicode character. The Font Awesome "arrow-up-from-water-pump" icon unicode character. The Font Awesome "arrow-up-long" icon unicode character. The Font Awesome "arrow-up-right-dots" icon unicode character. The Font Awesome "arrow-up-right-from-square" icon unicode character. The Font Awesome "ear-listen" icon unicode character. The Font Awesome "asterisk" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x2A. The Font Awesome "at" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x40. The Font Awesome "book-atlas" icon unicode character. The Font Awesome "atom" icon unicode character. The Font Awesome "audio-description" icon unicode character. The Font Awesome "austral-sign" icon unicode character. The Font Awesome "award" icon unicode character. The Font Awesome "baby" icon unicode character. The Font Awesome "baby-carriage" icon unicode character. The Font Awesome "delete-left" icon unicode character. The Font Awesome "backward" icon unicode character. The Font Awesome "bacon" icon unicode character. The Font Awesome "bacteria" icon unicode character. The Font Awesome "bacterium" icon unicode character. The Font Awesome "bahai" icon unicode character. The Font Awesome "baht-sign" icon unicode character. The Font Awesome "scale-balanced" icon unicode character. The Font Awesome "scale-unbalanced" icon unicode character. The Font Awesome "scale-unbalanced-flip" icon unicode character. The Font Awesome "ban" icon unicode character. The Font Awesome "bandage" icon unicode character. The Font Awesome "bangladeshi-taka-sign" icon unicode character. The Font Awesome "barcode" icon unicode character. The Font Awesome "bars" icon unicode character. The Font Awesome "bars-progress" icon unicode character. The Font Awesome "baseball" icon unicode character. The Font Awesome "baseball-bat-ball" icon unicode character. The Font Awesome "basketball" icon unicode character. The Font Awesome "bath" icon unicode character. The Font Awesome "battery-empty" icon unicode character. The Font Awesome "battery-full" icon unicode character. The Font Awesome "battery-half" icon unicode character. The Font Awesome "battery-quarter" icon unicode character. The Font Awesome "battery-three-quarters" icon unicode character. The Font Awesome "bed" icon unicode character. The Font Awesome "beer-mug-empty" icon unicode character. The Font Awesome "bell" icon unicode character. The Font Awesome "bell-slash" icon unicode character. The Font Awesome "bezier-curve" icon unicode character. The Font Awesome "book-bible" icon unicode character. The Font Awesome "bicycle" icon unicode character. The Font Awesome "person-biking" icon unicode character. The Font Awesome "binoculars" icon unicode character. The Font Awesome "biohazard" icon unicode character. The Font Awesome "cake-candles" icon unicode character. The Font Awesome "bitcoin-sign" icon unicode character. The Font Awesome "blender" icon unicode character. The Font Awesome "blender-phone" icon unicode character. The Font Awesome "person-walking-with-cane" icon unicode character. The Font Awesome "blog" icon unicode character. The Font Awesome "bold" icon unicode character. The Font Awesome "bolt" icon unicode character. The Font Awesome "bolt-lightning" icon unicode character. The Font Awesome "bomb" icon unicode character. The Font Awesome "bone" icon unicode character. The Font Awesome "bong" icon unicode character. The Font Awesome "book" icon unicode character. The Font Awesome "book-bookmark" icon unicode character. The Font Awesome "book-skull" icon unicode character. The Font Awesome "bookmark" icon unicode character. The Font Awesome "book-medical" icon unicode character. The Font Awesome "book-open" icon unicode character. The Font Awesome "book-open-reader" icon unicode character. The Font Awesome "book-tanakh" icon unicode character. The Font Awesome "border-all" icon unicode character. The Font Awesome "border-none" icon unicode character. The Font Awesome "border-top-left" icon unicode character. The Font Awesome "bore-hole" icon unicode character. The Font Awesome "bottle-droplet" icon unicode character. The Font Awesome "bottle-water" icon unicode character. The Font Awesome "bowl-food" icon unicode character. The Font Awesome "bowling-ball" icon unicode character. The Font Awesome "bowl-rice" icon unicode character. The Font Awesome "box" icon unicode character. The Font Awesome "boxes-stacked" icon unicode character. The Font Awesome "boxes-packing" icon unicode character. The Font Awesome "box-open" icon unicode character. The Font Awesome "box-tissue" icon unicode character. The Font Awesome "braille" icon unicode character. The Font Awesome "brain" icon unicode character. The Font Awesome "brazilian-real-sign" icon unicode character. The Font Awesome "bread-slice" icon unicode character. The Font Awesome "bridge" icon unicode character. The Font Awesome "bridge-circle-check" icon unicode character. The Font Awesome "bridge-circle-exclamation" icon unicode character. The Font Awesome "bridge-circle-xmark" icon unicode character. The Font Awesome "bridge-lock" icon unicode character. The Font Awesome "bridge-water" icon unicode character. The Font Awesome "briefcase" icon unicode character. The Font Awesome "briefcase-medical" icon unicode character. The Font Awesome "tower-broadcast" icon unicode character. The Font Awesome "broom" icon unicode character. The Font Awesome "brush" icon unicode character. The Font Awesome "bucket" icon unicode character. The Font Awesome "bug" icon unicode character. The Font Awesome "bugs" icon unicode character. The Font Awesome "bug-slash" icon unicode character. The Font Awesome "building" icon unicode character. The Font Awesome "building-circle-arrow-right" icon unicode character. The Font Awesome "building-circle-check" icon unicode character. The Font Awesome "building-circle-exclamation" icon unicode character. The Font Awesome "building-circle-xmark" icon unicode character. The Font Awesome "building-flag" icon unicode character. The Font Awesome "building-lock" icon unicode character. The Font Awesome "building-ngo" icon unicode character. The Font Awesome "building-shield" icon unicode character. The Font Awesome "building-un" icon unicode character. The Font Awesome "building-user" icon unicode character. The Font Awesome "building-wheat" icon unicode character. The Font Awesome "bullhorn" icon unicode character. The Font Awesome "bullseye" icon unicode character. The Font Awesome "fire-flame-simple" icon unicode character. The Font Awesome "burst" icon unicode character. The Font Awesome "bus" icon unicode character. The Font Awesome "bus-simple" icon unicode character. The Font Awesome "business-time" icon unicode character. The Font Awesome "calculator" icon unicode character. The Font Awesome "calendar" icon unicode character. The Font Awesome "calendar-days" icon unicode character. The Font Awesome "calendar-check" icon unicode character. The Font Awesome "calendar-day" icon unicode character. The Font Awesome "calendar-minus" icon unicode character. The Font Awesome "calendar-plus" icon unicode character. The Font Awesome "calendar-xmark" icon unicode character. The Font Awesome "calendar-week" icon unicode character. The Font Awesome "camera" icon unicode character. The Font Awesome "camera-retro" icon unicode character. The Font Awesome "camera-rotate" icon unicode character. The Font Awesome "campground" icon unicode character. The Font Awesome "candy-cane" icon unicode character. The Font Awesome "cannabis" icon unicode character. The Font Awesome "capsules" icon unicode character. The Font Awesome "car" icon unicode character. The Font Awesome "car-rear" icon unicode character. The Font Awesome "caravan" icon unicode character. The Font Awesome "car-battery" icon unicode character. The Font Awesome "car-burst" icon unicode character. The Font Awesome "caret-down" icon unicode character. The Font Awesome "caret-left" icon unicode character. The Font Awesome "caret-right" icon unicode character. The Font Awesome "square-caret-down" icon unicode character. The Font Awesome "square-caret-left" icon unicode character. The Font Awesome "square-caret-right" icon unicode character. The Font Awesome "square-caret-up" icon unicode character. The Font Awesome "caret-up" icon unicode character. The Font Awesome "car-on" icon unicode character. The Font Awesome "carrot" icon unicode character. The Font Awesome "car-side" icon unicode character. The Font Awesome "cart-arrow-down" icon unicode character. The Font Awesome "cart-plus" icon unicode character. The Font Awesome "car-tunnel" icon unicode character. The Font Awesome "cash-register" icon unicode character. The Font Awesome "cat" icon unicode character. The Font Awesome "cedi-sign" icon unicode character. The Font Awesome "cent-sign" icon unicode character. The Font Awesome "certificate" icon unicode character. The Font Awesome "chair" icon unicode character. The Font Awesome "chalkboard" icon unicode character. The Font Awesome "chalkboard-user" icon unicode character. The Font Awesome "charging-station" icon unicode character. The Font Awesome "chart-area" icon unicode character. The Font Awesome "chart-bar" icon unicode character. The Font Awesome "chart-column" icon unicode character. The Font Awesome "chart-gantt" icon unicode character. The Font Awesome "chart-line" icon unicode character. The Font Awesome "chart-pie" icon unicode character. The Font Awesome "chart-simple" icon unicode character. The Font Awesome "check" icon unicode character. The Font Awesome "circle-check" icon unicode character. The Font Awesome "check-double" icon unicode character. The Font Awesome "square-check" icon unicode character. The Font Awesome "cheese" icon unicode character. The Font Awesome "chess" icon unicode character. The Font Awesome "chess-bishop" icon unicode character. The Font Awesome "chess-board" icon unicode character. The Font Awesome "chess-king" icon unicode character. The Font Awesome "chess-knight" icon unicode character. The Font Awesome "chess-pawn" icon unicode character. The Font Awesome "chess-queen" icon unicode character. The Font Awesome "chess-rook" icon unicode character. The Font Awesome "circle-chevron-down" icon unicode character. The Font Awesome "circle-chevron-left" icon unicode character. The Font Awesome "circle-chevron-right" icon unicode character. The Font Awesome "circle-chevron-up" icon unicode character. The Font Awesome "chevron-down" icon unicode character. The Font Awesome "chevron-left" icon unicode character. The Font Awesome "chevron-right" icon unicode character. The Font Awesome "chevron-up" icon unicode character. The Font Awesome "child" icon unicode character. The Font Awesome "child-combatant" icon unicode character. The Font Awesome "child-dress" icon unicode character. The Font Awesome "child-reaching" icon unicode character. The Font Awesome "children" icon unicode character. The Font Awesome "church" icon unicode character. The Font Awesome "circle" icon unicode character. The Font Awesome "circle-nodes" icon unicode character. The Font Awesome "circle-notch" icon unicode character. The Font Awesome "city" icon unicode character. The Font Awesome "clapperboard" icon unicode character. The Font Awesome "house-chimney-medical" icon unicode character. The Font Awesome "clipboard" icon unicode character. The Font Awesome "clipboard-check" icon unicode character. The Font Awesome "clipboard-list" icon unicode character. The Font Awesome "clipboard-question" icon unicode character. The Font Awesome "clipboard-user" icon unicode character. The Font Awesome "clock" icon unicode character. The Font Awesome "clone" icon unicode character. The Font Awesome "closed-captioning" icon unicode character. The Font Awesome "cloud" icon unicode character. The Font Awesome "cloud-bolt" icon unicode character. The Font Awesome "cloud-arrow-down" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF0ED. The Font Awesome "cloud-meatball" icon unicode character. The Font Awesome "cloud-moon" icon unicode character. The Font Awesome "cloud-moon-rain" icon unicode character. The Font Awesome "cloud-rain" icon unicode character. The Font Awesome "cloud-showers-heavy" icon unicode character. The Font Awesome "cloud-showers-water" icon unicode character. The Font Awesome "cloud-sun" icon unicode character. The Font Awesome "cloud-sun-rain" icon unicode character. The Font Awesome "cloud-arrow-up" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF0EE. The Font Awesome "clover" icon unicode character. The Font Awesome "martini-glass-citrus" icon unicode character. The Font Awesome "code" icon unicode character. The Font Awesome "code-branch" icon unicode character. The Font Awesome "code-commit" icon unicode character. The Font Awesome "code-compare" icon unicode character. The Font Awesome "code-fork" icon unicode character. The Font Awesome "code-merge" icon unicode character. The Font Awesome "code-pull-request" icon unicode character. The Font Awesome "mug-saucer" icon unicode character. The Font Awesome "gear" icon unicode character. The Font Awesome "gears" icon unicode character. The Font Awesome "coins" icon unicode character. The Font Awesome "colon-sign" icon unicode character. The Font Awesome "table-columns" icon unicode character. The Font Awesome "comment" icon unicode character. The Font Awesome "message" icon unicode character. The Font Awesome "comment-dollar" icon unicode character. The Font Awesome "comment-dots" icon unicode character. The Font Awesome "comment-medical" icon unicode character. The Font Awesome "comments" icon unicode character. The Font Awesome "comments-dollar" icon unicode character. The Font Awesome "comment-slash" icon unicode character. The Font Awesome "compact-disc" icon unicode character. The Font Awesome "compass" icon unicode character. The Font Awesome "compress" icon unicode character. The Font Awesome "down-left-and-up-right-to-center" icon unicode character. The Font Awesome "minimize" icon unicode character. The Font Awesome "computer" icon unicode character. The Font Awesome "bell-concierge" icon unicode character. The Font Awesome "cookie" icon unicode character. The Font Awesome "cookie-bite" icon unicode character. The Font Awesome "copy" icon unicode character. The Font Awesome "copyright" icon unicode character. The Font Awesome "couch" icon unicode character. The Font Awesome "cow" icon unicode character. The Font Awesome "credit-card" icon unicode character. The Font Awesome "crop" icon unicode character. The Font Awesome "crop-simple" icon unicode character. The Font Awesome "cross" icon unicode character. The Font Awesome "crosshairs" icon unicode character. The Font Awesome "crow" icon unicode character. The Font Awesome "crown" icon unicode character. The Font Awesome "crutch" icon unicode character. The Font Awesome "cruzeiro-sign" icon unicode character. The Font Awesome "cube" icon unicode character. The Font Awesome "cubes" icon unicode character. The Font Awesome "cubes-stacked" icon unicode character. The Font Awesome "scissors" icon unicode character. The Font Awesome "database" icon unicode character. The Font Awesome "ear-deaf" icon unicode character. The Font Awesome "democrat" icon unicode character. The Font Awesome "desktop" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF390. The Font Awesome "dharmachakra" icon unicode character. The Font Awesome "person-dots-from-line" icon unicode character. The Font Awesome "diagram-next" icon unicode character. The Font Awesome "diagram-predecessor" icon unicode character. The Font Awesome "diagram-successor" icon unicode character. The Font Awesome "diamond" icon unicode character. The Font Awesome "dice" icon unicode character. The Font Awesome "dice-d20" icon unicode character. The Font Awesome "dice-d6" icon unicode character. The Font Awesome "dice-five" icon unicode character. The Font Awesome "dice-four" icon unicode character. The Font Awesome "dice-one" icon unicode character. The Font Awesome "dice-six" icon unicode character. The Font Awesome "dice-three" icon unicode character. The Font Awesome "dice-two" icon unicode character. The Font Awesome "tachograph-digital" icon unicode character. The Font Awesome "diamond-turn-right" icon unicode character. The Font Awesome "disease" icon unicode character. The Font Awesome "display" icon unicode character. The Font Awesome "divide" icon unicode character. The Font Awesome "face-dizzy" icon unicode character. The Font Awesome "dna" icon unicode character. The Font Awesome "dog" icon unicode character. The Font Awesome "dollar-sign" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x24. The Font Awesome "dolly" icon unicode character. The Font Awesome "cart-flatbed" icon unicode character. The Font Awesome "circle-dollar-to-slot" icon unicode character. The Font Awesome "dong-sign" icon unicode character. The Font Awesome "door-closed" icon unicode character. The Font Awesome "door-open" icon unicode character. The Font Awesome "circle-dot" icon unicode character. The Font Awesome "dove" icon unicode character. The Font Awesome "download" icon unicode character. The Font Awesome "compass-drafting" icon unicode character. The Font Awesome "dragon" icon unicode character. The Font Awesome "draw-polygon" icon unicode character. The Font Awesome "drum" icon unicode character. The Font Awesome "drum-steelpan" icon unicode character. The Font Awesome "drumstick-bite" icon unicode character. The Font Awesome "dumbbell" icon unicode character. The Font Awesome "dumpster" icon unicode character. The Font Awesome "dumpster-fire" icon unicode character. The Font Awesome "dungeon" icon unicode character. The Font Awesome "earth-oceania" icon unicode character. The Font Awesome "pen-to-square" icon unicode character. The Font Awesome "egg" icon unicode character. The Font Awesome "eject" icon unicode character. The Font Awesome "elevator" icon unicode character. The Font Awesome "ellipsis" icon unicode character. The Font Awesome "ellipsis-vertical" icon unicode character. The Font Awesome "envelope" icon unicode character. The Font Awesome "envelope-circle-check" icon unicode character. The Font Awesome "envelope-open" icon unicode character. The Font Awesome "envelope-open-text" icon unicode character. The Font Awesome "square-envelope" icon unicode character. The Font Awesome "equals" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x3D. The Font Awesome "eraser" icon unicode character. The Font Awesome "ethernet" icon unicode character. The Font Awesome "euro-sign" icon unicode character. The Font Awesome "right-left" icon unicode character. The Font Awesome "exclamation" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x21. The Font Awesome "circle-exclamation" icon unicode character. The Font Awesome "triangle-exclamation" icon unicode character. The Font Awesome "expand" icon unicode character. The Font Awesome "up-right-and-down-left-from-center" icon unicode character. The Font Awesome "maximize" icon unicode character. The Font Awesome "explosion" icon unicode character. The Font Awesome "up-right-from-square" icon unicode character. The Font Awesome "square-up-right" icon unicode character. The Font Awesome "eye" icon unicode character. The Font Awesome "eye-dropper" icon unicode character. The Font Awesome "eye-slash" icon unicode character. The Font Awesome "fan" icon unicode character. The Font Awesome "backward-fast" icon unicode character. The Font Awesome "forward-fast" icon unicode character. The Font Awesome "faucet" icon unicode character. The Font Awesome "faucet-drip" icon unicode character. The Font Awesome "fax" icon unicode character. The Font Awesome "feather" icon unicode character. The Font Awesome "feather-pointed" icon unicode character. The Font Awesome "person-dress" icon unicode character. The Font Awesome "ferry" icon unicode character. The Font Awesome "jet-fighter" icon unicode character. The Font Awesome "file" icon unicode character. The Font Awesome "file-lines" icon unicode character. The Font Awesome "file-zipper" icon unicode character. The Font Awesome "file-audio" icon unicode character. The Font Awesome "file-circle-check" icon unicode character. The Font Awesome "file-circle-exclamation" icon unicode character. The Font Awesome "file-circle-minus" icon unicode character. The Font Awesome "file-circle-plus" icon unicode character. The Font Awesome "file-circle-question" icon unicode character. The Font Awesome "file-circle-xmark" icon unicode character. The Font Awesome "file-code" icon unicode character. The Font Awesome "file-contract" icon unicode character. The Font Awesome "file-csv" icon unicode character. The Font Awesome "file-arrow-down" icon unicode character. The Font Awesome "file-excel" icon unicode character. The Font Awesome "file-export" icon unicode character. The Font Awesome "file-image" icon unicode character. The Font Awesome "file-import" icon unicode character. The Font Awesome "file-invoice" icon unicode character. The Font Awesome "file-invoice-dollar" icon unicode character. The Font Awesome "file-medical" icon unicode character. The Font Awesome "file-waveform" icon unicode character. The Font Awesome "file-pdf" icon unicode character. The Font Awesome "file-pen" icon unicode character. The Font Awesome "file-powerpoint" icon unicode character. The Font Awesome "file-prescription" icon unicode character. The Font Awesome "file-shield" icon unicode character. The Font Awesome "file-signature" icon unicode character. The Font Awesome "file-arrow-up" icon unicode character. The Font Awesome "file-video" icon unicode character. The Font Awesome "file-word" icon unicode character. The Font Awesome "fill" icon unicode character. The Font Awesome "fill-drip" icon unicode character. The Font Awesome "film" icon unicode character. The Font Awesome "filter" icon unicode character. The Font Awesome "filter-circle-xmark" icon unicode character. The Font Awesome "fingerprint" icon unicode character. The Font Awesome "fire" icon unicode character. The Font Awesome "fire-flame-curved" icon unicode character. The Font Awesome "fire-burner" icon unicode character. The Font Awesome "fire-extinguisher" icon unicode character. The Font Awesome "kit-medical" icon unicode character. The Font Awesome "fish" icon unicode character. The Font Awesome "fish-fins" icon unicode character. The Font Awesome "hand-fist" icon unicode character. The Font Awesome "flag" icon unicode character. The Font Awesome "flag-checkered" icon unicode character. The Font Awesome "flag-usa" icon unicode character. The Font Awesome "flask" icon unicode character. The Font Awesome "flask-vial" icon unicode character. The Font Awesome "florin-sign" icon unicode character. The Font Awesome "face-flushed" icon unicode character. The Font Awesome "folder" icon unicode character. The Font Awesome "folder-closed" icon unicode character. The Font Awesome "folder-minus" icon unicode character. The Font Awesome "folder-open" icon unicode character. The Font Awesome "folder-plus" icon unicode character. The Font Awesome "folder-tree" icon unicode character. The Font Awesome "font" icon unicode character. The Font Awesome "font-awesome" icon unicode character. The Font Awesome "font-awesome" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF2B4. The Font Awesome "font-awesome" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF2B4. The Font Awesome "football" icon unicode character. The Font Awesome "forward" icon unicode character. The Font Awesome "franc-sign" icon unicode character. The Font Awesome "frog" icon unicode character. The Font Awesome "face-frown" icon unicode character. The Font Awesome "face-frown-open" icon unicode character. The Font Awesome "filter-circle-dollar" icon unicode character. The Font Awesome "futbol" icon unicode character. The Font Awesome "gamepad" icon unicode character. The Font Awesome "gas-pump" icon unicode character. The Font Awesome "gauge" icon unicode character. The Font Awesome "gauge-simple" icon unicode character. The Font Awesome "gauge-simple-high" icon unicode character. The Font Awesome "gavel" icon unicode character. The Font Awesome "gem" icon unicode character. The Font Awesome "genderless" icon unicode character. The Font Awesome "ghost" icon unicode character. The Font Awesome "gift" icon unicode character. The Font Awesome "gifts" icon unicode character. The Font Awesome "champagne-glasses" icon unicode character. The Font Awesome "glasses" icon unicode character. The Font Awesome "martini-glass-empty" icon unicode character. The Font Awesome "martini-glass" icon unicode character. The Font Awesome "glass-water" icon unicode character. The Font Awesome "glass-water-droplet" icon unicode character. The Font Awesome "whiskey-glass" icon unicode character. The Font Awesome "globe" icon unicode character. The Font Awesome "earth-africa" icon unicode character. The Font Awesome "earth-americas" icon unicode character. The Font Awesome "earth-asia" icon unicode character. The Font Awesome "earth-europe" icon unicode character. The Font Awesome "golf-ball-tee" icon unicode character. The Font Awesome "gopuram" icon unicode character. The Font Awesome "graduation-cap" icon unicode character. The Font Awesome "greater-than" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x3E. The Font Awesome "greater-than-equal" icon unicode character. The Font Awesome "face-grimace" icon unicode character. The Font Awesome "face-grin" icon unicode character. The Font Awesome "face-grin-wide" icon unicode character. The Font Awesome "face-grin-beam" icon unicode character. The Font Awesome "face-grin-beam-sweat" icon unicode character. The Font Awesome "face-grin-hearts" icon unicode character. The Font Awesome "face-grin-squint" icon unicode character. The Font Awesome "face-grin-squint-tears" icon unicode character. The Font Awesome "face-grin-stars" icon unicode character. The Font Awesome "face-grin-tears" icon unicode character. The Font Awesome "face-grin-tongue" icon unicode character. The Font Awesome "face-grin-tongue-squint" icon unicode character. The Font Awesome "face-grin-tongue-wink" icon unicode character. The Font Awesome "face-grin-wink" icon unicode character. The Font Awesome "grip" icon unicode character. The Font Awesome "grip-lines" icon unicode character. The Font Awesome "grip-lines-vertical" icon unicode character. The Font Awesome "grip-vertical" icon unicode character. The Font Awesome "group-arrows-rotate" icon unicode character. The Font Awesome "guarani-sign" icon unicode character. The Font Awesome "guitar" icon unicode character. The Font Awesome "gun" icon unicode character. The Font Awesome "burger" icon unicode character. The Font Awesome "hammer" icon unicode character. The Font Awesome "hamsa" icon unicode character. The Font Awesome "handcuffs" icon unicode character. The Font Awesome "hand-holding" icon unicode character. The Font Awesome "hand-holding-droplet" icon unicode character. The Font Awesome "hand-holding-hand" icon unicode character. The Font Awesome "hand-holding-heart" icon unicode character. The Font Awesome "hand-holding-medical" icon unicode character. The Font Awesome "hand-holding-dollar" icon unicode character. The Font Awesome "hand-lizard" icon unicode character. The Font Awesome "hand-middle-finger" icon unicode character. The Font Awesome "hand" icon unicode character. The Font Awesome "hand-peace" icon unicode character. The Font Awesome "hand-point-down" icon unicode character. The Font Awesome "hand-pointer" icon unicode character. The Font Awesome "hand-point-left" icon unicode character. The Font Awesome "hand-point-right" icon unicode character. The Font Awesome "hand-point-up" icon unicode character. The Font Awesome "hand-back-fist" icon unicode character. The Font Awesome "hands-holding" icon unicode character. The Font Awesome "hands-bound" icon unicode character. The Font Awesome "hands-bubbles" icon unicode character. The Font Awesome "hand-scissors" icon unicode character. The Font Awesome "hands-clapping" icon unicode character. The Font Awesome "handshake" icon unicode character. The Font Awesome "handshake-simple" icon unicode character. The Font Awesome "handshake-simple-slash" icon unicode character. The Font Awesome "handshake-slash" icon unicode character. The Font Awesome "handshake-angle" icon unicode character. The Font Awesome "hands-holding-child" icon unicode character. The Font Awesome "hands-holding-circle" icon unicode character. The Font Awesome "hand-sparkles" icon unicode character. The Font Awesome "hand-spock" icon unicode character. The Font Awesome "hanukiah" icon unicode character. The Font Awesome "helmet-safety" icon unicode character. The Font Awesome "hashtag" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x23. The Font Awesome "hat-cowboy" icon unicode character. The Font Awesome "hat-cowboy-side" icon unicode character. The Font Awesome "hat-wizard" icon unicode character. The Font Awesome "hard-drive" icon unicode character. The Font Awesome "heading" icon unicode character. The Font Awesome "headphones" icon unicode character. The Font Awesome "headphones-simple" icon unicode character. The Font Awesome "headset" icon unicode character. The Font Awesome "head-side-cough" icon unicode character. The Font Awesome "head-side-cough-slash" icon unicode character. The Font Awesome "head-side-mask" icon unicode character. The Font Awesome "head-side-virus" icon unicode character. The Font Awesome "heart" icon unicode character. The Font Awesome "heart-pulse" icon unicode character. The Font Awesome "heart-crack" icon unicode character. The Font Awesome "heart-circle-bolt" icon unicode character. The Font Awesome "heart-circle-check" icon unicode character. The Font Awesome "heart-circle-exclamation" icon unicode character. The Font Awesome "heart-circle-minus" icon unicode character. The Font Awesome "heart-circle-plus" icon unicode character. The Font Awesome "heart-circle-xmark" icon unicode character. The Font Awesome "helicopter" icon unicode character. The Font Awesome "helicopter-symbol" icon unicode character. The Font Awesome "helmet-un" icon unicode character. The Font Awesome "highlighter" icon unicode character. The Font Awesome "person-hiking" icon unicode character. The Font Awesome "hill-avalanche" icon unicode character. The Font Awesome "hill-rockslide" icon unicode character. The Font Awesome "hippo" icon unicode character. The Font Awesome "clock-rotate-left" icon unicode character. The Font Awesome "hockey-puck" icon unicode character. The Font Awesome "holly-berry" icon unicode character. The Font Awesome "house" icon unicode character. The Font Awesome "horse" icon unicode character. The Font Awesome "horse-head" icon unicode character. The Font Awesome "hospital" icon unicode character. The Font Awesome "hospital" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF0F8. The Font Awesome "circle-h" icon unicode character. The Font Awesome "hospital-user" icon unicode character. The Font Awesome "hotdog" icon unicode character. The Font Awesome "hotel" icon unicode character. The Font Awesome "hot-tub-person" icon unicode character. The Font Awesome "hourglass" icon unicode character. The Font Awesome "hourglass-end" icon unicode character. The Font Awesome "hourglass-half" icon unicode character. The Font Awesome "hourglass-start" icon unicode character. The Font Awesome "house-chimney" icon unicode character. The Font Awesome "house-chimney-user" icon unicode character. The Font Awesome "house-chimney-window" icon unicode character. The Font Awesome "house-circle-check" icon unicode character. The Font Awesome "house-circle-exclamation" icon unicode character. The Font Awesome "house-circle-xmark" icon unicode character. The Font Awesome "house-crack" icon unicode character. The Font Awesome "house-chimney-crack" icon unicode character. The Font Awesome "house-fire" icon unicode character. The Font Awesome "house-flag" icon unicode character. The Font Awesome "house-flood-water" icon unicode character. The Font Awesome "house-flood-water-circle-arrow-right" icon unicode character. The Font Awesome "house-laptop" icon unicode character. The Font Awesome "house-lock" icon unicode character. The Font Awesome "house-medical" icon unicode character. The Font Awesome "house-medical-circle-check" icon unicode character. The Font Awesome "house-medical-circle-exclamation" icon unicode character. The Font Awesome "house-medical-circle-xmark" icon unicode character. The Font Awesome "house-medical-flag" icon unicode character. The Font Awesome "house-signal" icon unicode character. The Font Awesome "house-tsunami" icon unicode character. The Font Awesome "house-user" icon unicode character. The Font Awesome "hryvnia-sign" icon unicode character. The Font Awesome "square-h" icon unicode character. The Font Awesome "hurricane" icon unicode character. The Font Awesome "ice-cream" icon unicode character. The Font Awesome "icicles" icon unicode character. The Font Awesome "icons" icon unicode character. The Font Awesome "i-cursor" icon unicode character. The Font Awesome "id-badge" icon unicode character. The Font Awesome "id-card" icon unicode character. The Font Awesome "id-card-clip" icon unicode character. The Font Awesome "igloo" icon unicode character. The Font Awesome "image" icon unicode character. The Font Awesome "images" icon unicode character. The Font Awesome "inbox" icon unicode character. The Font Awesome "indent" icon unicode character. The Font Awesome "indian-rupee-sign" icon unicode character. The Font Awesome "industry" icon unicode character. The Font Awesome "infinity" icon unicode character. The Font Awesome "info" icon unicode character. The Font Awesome "circle-info" icon unicode character. The Font Awesome "italic" icon unicode character. The Font Awesome "jar" icon unicode character. The Font Awesome "jar-wheat" icon unicode character. The Font Awesome "jedi" icon unicode character. The Font Awesome "jet-fighter-up" icon unicode character. The Font Awesome "joint" icon unicode character. The Font Awesome "book-journal-whills" icon unicode character. The Font Awesome "jug-detergent" icon unicode character. The Font Awesome "kaaba" icon unicode character. The Font Awesome "key" icon unicode character. The Font Awesome "keyboard" icon unicode character. The Font Awesome "khanda" icon unicode character. The Font Awesome "kip-sign" icon unicode character. The Font Awesome "face-kiss" icon unicode character. The Font Awesome "face-kiss-beam" icon unicode character. The Font Awesome "face-kiss-wink-heart" icon unicode character. The Font Awesome "kitchen-set" icon unicode character. The Font Awesome "kiwi-bird" icon unicode character. The Font Awesome "landmark" icon unicode character. The Font Awesome "landmark-dome" icon unicode character. The Font Awesome "landmark-flag" icon unicode character. The Font Awesome "land-mine-on" icon unicode character. The Font Awesome "language" icon unicode character. The Font Awesome "laptop" icon unicode character. The Font Awesome "laptop-code" icon unicode character. The Font Awesome "laptop-file" icon unicode character. The Font Awesome "laptop-medical" icon unicode character. The Font Awesome "lari-sign" icon unicode character. The Font Awesome "face-laugh" icon unicode character. The Font Awesome "face-laugh-beam" icon unicode character. The Font Awesome "face-laugh-squint" icon unicode character. The Font Awesome "face-laugh-wink" icon unicode character. The Font Awesome "layer-group" icon unicode character. The Font Awesome "leaf" icon unicode character. The Font Awesome "lemon" icon unicode character. The Font Awesome "less-than" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x3C. The Font Awesome "less-than-equal" icon unicode character. The Font Awesome "turn-down" icon unicode character. The Font Awesome "turn-up" icon unicode character. The Font Awesome "life-ring" icon unicode character. The Font Awesome "lightbulb" icon unicode character. The Font Awesome "lines-leaning" icon unicode character. The Font Awesome "link" icon unicode character. The Font Awesome "lira-sign" icon unicode character. The Font Awesome "list" icon unicode character. The Font Awesome "rectangle-list" icon unicode character. The Font Awesome "list-ol" icon unicode character. The Font Awesome "list-ul" icon unicode character. The Font Awesome "litecoin-sign" icon unicode character. The Font Awesome "location-arrow" icon unicode character. The Font Awesome "location-crosshairs" icon unicode character. The Font Awesome "location-pin-lock" icon unicode character. The Font Awesome "lock" icon unicode character. The Font Awesome "lock-open" icon unicode character. The Font Awesome "locust" icon unicode character. The Font Awesome "down-long" icon unicode character. The Font Awesome "left-long" icon unicode character. The Font Awesome "right-long" icon unicode character. The Font Awesome "up-long" icon unicode character. The Font Awesome "eye-low-vision" icon unicode character. The Font Awesome "cart-flatbed-suitcase" icon unicode character. The Font Awesome "lungs" icon unicode character. The Font Awesome "lungs-virus" icon unicode character. The Font Awesome "wand-magic" icon unicode character. The Font Awesome "magnet" icon unicode character. The Font Awesome "magnifying-glass-arrow-right" icon unicode character. The Font Awesome "magnifying-glass-chart" icon unicode character. The Font Awesome "envelopes-bulk" icon unicode character. The Font Awesome "person" icon unicode character. The Font Awesome "manat-sign" icon unicode character. The Font Awesome "map" icon unicode character. The Font Awesome "map-location" icon unicode character. The Font Awesome "map-location-dot" icon unicode character. The Font Awesome "location-pin" icon unicode character. The Font Awesome "location-dot" icon unicode character. The Font Awesome "map-pin" icon unicode character. The Font Awesome "signs-post" icon unicode character. The Font Awesome "marker" icon unicode character. The Font Awesome "mars" icon unicode character. The Font Awesome "mars-and-venus-burst" icon unicode character. The Font Awesome "mars-double" icon unicode character. The Font Awesome "mars-stroke" icon unicode character. The Font Awesome "mars-stroke-right" icon unicode character. The Font Awesome "mars-stroke-up" icon unicode character. The Font Awesome "mask" icon unicode character. The Font Awesome "mask-face" icon unicode character. The Font Awesome "mask-ventilator" icon unicode character. The Font Awesome "mattress-pillow" icon unicode character. The Font Awesome "medal" icon unicode character. The Font Awesome "suitcase-medical" icon unicode character. The Font Awesome "face-meh" icon unicode character. The Font Awesome "face-meh-blank" icon unicode character. The Font Awesome "face-rolling-eyes" icon unicode character. The Font Awesome "memory" icon unicode character. The Font Awesome "menorah" icon unicode character. The Font Awesome "mercury" icon unicode character. The Font Awesome "meteor" icon unicode character. The Font Awesome "microchip" icon unicode character. The Font Awesome "microphone" icon unicode character. The Font Awesome "microphone-lines" icon unicode character. The Font Awesome "microphone-lines-slash" icon unicode character. The Font Awesome "microphone-slash" icon unicode character. The Font Awesome "microscope" icon unicode character. The Font Awesome "mill-sign" icon unicode character. The Font Awesome "minus" icon unicode character. The Font Awesome "circle-minus" icon unicode character. The Font Awesome "square-minus" icon unicode character. The Font Awesome "mitten" icon unicode character. The Font Awesome "mobile" icon unicode character. The Font Awesome "mobile-screen-button" icon unicode character. The Font Awesome "mobile-button" icon unicode character. The Font Awesome "mobile-retro" icon unicode character. The Font Awesome "mobile-screen" icon unicode character. The Font Awesome "money-bill" icon unicode character. The Font Awesome "money-bill-1" icon unicode character. The Font Awesome "money-bills" icon unicode character. The Font Awesome "money-bill-transfer" icon unicode character. The Font Awesome "money-bill-trend-up" icon unicode character. The Font Awesome "money-bill-wave" icon unicode character. The Font Awesome "money-bill-1-wave" icon unicode character. The Font Awesome "money-bill-wheat" icon unicode character. The Font Awesome "money-check" icon unicode character. The Font Awesome "money-check-dollar" icon unicode character. The Font Awesome "monument" icon unicode character. The Font Awesome "moon" icon unicode character. The Font Awesome "mortar-pestle" icon unicode character. The Font Awesome "mosque" icon unicode character. The Font Awesome "mosquito" icon unicode character. The Font Awesome "mosquito-net" icon unicode character. The Font Awesome "motorcycle" icon unicode character. The Font Awesome "mound" icon unicode character. The Font Awesome "mountain" icon unicode character. The Font Awesome "mountain-city" icon unicode character. The Font Awesome "mountain-sun" icon unicode character. The Font Awesome "computer-mouse" icon unicode character. The Font Awesome "arrow-pointer" icon unicode character. The Font Awesome "mug-hot" icon unicode character. The Font Awesome "music" icon unicode character. The Font Awesome "naira-sign" icon unicode character. The Font Awesome "network-wired" icon unicode character. The Font Awesome "neuter" icon unicode character. The Font Awesome "newspaper" icon unicode character. The Font Awesome "notdef" icon unicode character. The Font Awesome "not-equal" icon unicode character. The Font Awesome "notes-medical" icon unicode character. The Font Awesome "object-group" icon unicode character. The Font Awesome "object-ungroup" icon unicode character. The Font Awesome "oil-can" icon unicode character. The Font Awesome "oil-well" icon unicode character. The Font Awesome "om" icon unicode character. The Font Awesome "otter" icon unicode character. The Font Awesome "outdent" icon unicode character. The Font Awesome "pager" icon unicode character. The Font Awesome "paintbrush" icon unicode character. The Font Awesome "paint-roller" icon unicode character. The Font Awesome "palette" icon unicode character. The Font Awesome "pallet" icon unicode character. The Font Awesome "panorama" icon unicode character. The Font Awesome "paperclip" icon unicode character. The Font Awesome "paper-plane" icon unicode character. The Font Awesome "parachute-box" icon unicode character. The Font Awesome "paragraph" icon unicode character. The Font Awesome "square-parking" icon unicode character. The Font Awesome "passport" icon unicode character. The Font Awesome "spaghetti-monster-flying" icon unicode character. The Font Awesome "paste" icon unicode character. The Font Awesome "pause" icon unicode character. The Font Awesome "circle-pause" icon unicode character. The Font Awesome "paw" icon unicode character. The Font Awesome "peace" icon unicode character. The Font Awesome "pen" icon unicode character. The Font Awesome "pen-clip" icon unicode character. The Font Awesome "pencil" icon unicode character. The Font Awesome "pen-ruler" icon unicode character. The Font Awesome "pen-fancy" icon unicode character. The Font Awesome "pen-nib" icon unicode character. The Font Awesome "square-pen" icon unicode character. The Font Awesome "people-arrows" icon unicode character. The Font Awesome "people-carry-box" icon unicode character. The Font Awesome "people-group" icon unicode character. The Font Awesome "people-line" icon unicode character. The Font Awesome "people-pulling" icon unicode character. The Font Awesome "people-robbery" icon unicode character. The Font Awesome "people-roof" icon unicode character. The Font Awesome "pepper-hot" icon unicode character. The Font Awesome "percent" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x25. The Font Awesome "percent" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x25. The Font Awesome "person-arrow-down-to-line" icon unicode character. The Font Awesome "person-arrow-up-from-line" icon unicode character. The Font Awesome "person-booth" icon unicode character. The Font Awesome "person-breastfeeding" icon unicode character. The Font Awesome "person-burst" icon unicode character. The Font Awesome "person-cane" icon unicode character. The Font Awesome "person-chalkboard" icon unicode character. The Font Awesome "person-circle-check" icon unicode character. The Font Awesome "person-circle-exclamation" icon unicode character. The Font Awesome "person-circle-minus" icon unicode character. The Font Awesome "person-circle-plus" icon unicode character. The Font Awesome "person-circle-question" icon unicode character. The Font Awesome "person-circle-xmark" icon unicode character. The Font Awesome "person-digging" icon unicode character. The Font Awesome "person-dress-burst" icon unicode character. The Font Awesome "person-drowning" icon unicode character. The Font Awesome "person-falling" icon unicode character. The Font Awesome "person-falling-burst" icon unicode character. The Font Awesome "person-half-dress" icon unicode character. The Font Awesome "person-harassing" icon unicode character. The Font Awesome "person-military-pointing" icon unicode character. The Font Awesome "person-military-rifle" icon unicode character. The Font Awesome "person-military-to-person" icon unicode character. The Font Awesome "person-pregnant" icon unicode character. The Font Awesome "person-rays" icon unicode character. The Font Awesome "person-rifle" icon unicode character. The Font Awesome "person-shelter" icon unicode character. The Font Awesome "person-through-window" icon unicode character. The Font Awesome "person-walking-arrow-loop-left" icon unicode character. The Font Awesome "person-walking-arrow-right" icon unicode character. The Font Awesome "person-walking-dashed-line-arrow-right" icon unicode character. The Font Awesome "person-walking-luggage" icon unicode character. The Font Awesome "peseta-sign" icon unicode character. The Font Awesome "peso-sign" icon unicode character. The Font Awesome "phone" icon unicode character. The Font Awesome "phone-flip" icon unicode character. The Font Awesome "phone-slash" icon unicode character. The Font Awesome "square-phone" icon unicode character. The Font Awesome "square-phone-flip" icon unicode character. The Font Awesome "phone-volume" icon unicode character. The Font Awesome "photo-film" icon unicode character. The Font Awesome "piggy-bank" icon unicode character. The Font Awesome "pills" icon unicode character. The Font Awesome "pizza-slice" icon unicode character. The Font Awesome "place-of-worship" icon unicode character. The Font Awesome "plane" icon unicode character. The Font Awesome "plane-arrival" icon unicode character. The Font Awesome "plane-circle-check" icon unicode character. The Font Awesome "plane-circle-exclamation" icon unicode character. The Font Awesome "plane-circle-xmark" icon unicode character. The Font Awesome "plane-departure" icon unicode character. The Font Awesome "plane-lock" icon unicode character. The Font Awesome "plane-slash" icon unicode character. The Font Awesome "plane-up" icon unicode character. The Font Awesome "plant-wilt" icon unicode character. The Font Awesome "plate-wheat" icon unicode character. The Font Awesome "play" icon unicode character. The Font Awesome "circle-play" icon unicode character. The Font Awesome "plug" icon unicode character. The Font Awesome "plug-circle-bolt" icon unicode character. The Font Awesome "plug-circle-check" icon unicode character. The Font Awesome "plug-circle-exclamation" icon unicode character. The Font Awesome "plug-circle-minus" icon unicode character. The Font Awesome "plug-circle-plus" icon unicode character. The Font Awesome "plug-circle-xmark" icon unicode character. The Font Awesome "plus" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x2B. The Font Awesome "circle-plus" icon unicode character. The Font Awesome "plus-minus" icon unicode character. The Font Awesome "square-plus" icon unicode character. The Font Awesome "podcast" icon unicode character. The Font Awesome "square-poll-vertical" icon unicode character. The Font Awesome "square-poll-horizontal" icon unicode character. The Font Awesome "poo" icon unicode character. The Font Awesome "poop" icon unicode character. The Font Awesome "poo-storm" icon unicode character. The Font Awesome "image-portrait" icon unicode character. The Font Awesome "sterling-sign" icon unicode character. The Font Awesome "power-off" icon unicode character. The Font Awesome "person-praying" icon unicode character. The Font Awesome "hands-praying" icon unicode character. The Font Awesome "prescription" icon unicode character. The Font Awesome "prescription-bottle" icon unicode character. The Font Awesome "prescription-bottle-medical" icon unicode character. The Font Awesome "print" icon unicode character. The Font Awesome "bed-pulse" icon unicode character. The Font Awesome "diagram-project" icon unicode character. The Font Awesome "pump-medical" icon unicode character. The Font Awesome "pump-soap" icon unicode character. The Font Awesome "puzzle-piece" icon unicode character. The Font Awesome "qrcode" icon unicode character. The Font Awesome "question" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0x3F. The Font Awesome "circle-question" icon unicode character. The Font Awesome "broom-ball" icon unicode character. The Font Awesome "quote-left" icon unicode character. The Font Awesome "quote-right" icon unicode character. The Font Awesome "book-quran" icon unicode character. The Font Awesome "radiation" icon unicode character. The Font Awesome "circle-radiation" icon unicode character. The Font Awesome "radio" icon unicode character. The Font Awesome "rainbow" icon unicode character. The Font Awesome "shuffle" icon unicode character. The Font Awesome "ranking-star" icon unicode character. The Font Awesome "receipt" icon unicode character. The Font Awesome "record-vinyl" icon unicode character. The Font Awesome "recycle" icon unicode character. The Font Awesome "arrow-rotate-right" icon unicode character. The Font Awesome "rotate-right" icon unicode character. The Font Awesome "registered" icon unicode character. The Font Awesome "text-slash" icon unicode character. The Font Awesome "repeat" icon unicode character. The Font Awesome "reply" icon unicode character. The Font Awesome "reply-all" icon unicode character. The Font Awesome "republican" icon unicode character. The Font Awesome "restroom" icon unicode character. The Font Awesome "retweet" icon unicode character. The Font Awesome "ribbon" icon unicode character. The Font Awesome "ring" icon unicode character. The Font Awesome "road" icon unicode character. The Font Awesome "road-barrier" icon unicode character. The Font Awesome "road-bridge" icon unicode character. The Font Awesome "road-circle-check" icon unicode character. The Font Awesome "road-circle-exclamation" icon unicode character. The Font Awesome "road-circle-xmark" icon unicode character. The Font Awesome "road-lock" icon unicode character. The Font Awesome "road-spikes" icon unicode character. The Font Awesome "robot" icon unicode character. The Font Awesome "rocket" icon unicode character. The Font Awesome "route" icon unicode character. The Font Awesome "rss" icon unicode character. The Font Awesome "square-rss" icon unicode character. The Font Awesome "ruble-sign" icon unicode character. The Font Awesome "rug" icon unicode character. The Font Awesome "ruler" icon unicode character. The Font Awesome "ruler-combined" icon unicode character. The Font Awesome "ruler-horizontal" icon unicode character. The Font Awesome "ruler-vertical" icon unicode character. The Font Awesome "person-running" icon unicode character. The Font Awesome "rupee-sign" icon unicode character. The Font Awesome "rupiah-sign" icon unicode character. The Font Awesome "sack-dollar" icon unicode character. The Font Awesome "sack-xmark" icon unicode character. The Font Awesome "face-sad-cry" icon unicode character. The Font Awesome "face-sad-tear" icon unicode character. The Font Awesome "sailboat" icon unicode character. The Font Awesome "satellite" icon unicode character. The Font Awesome "satellite-dish" icon unicode character. The Font Awesome "floppy-disk" icon unicode character. The Font Awesome "school" icon unicode character. The Font Awesome "school-circle-check" icon unicode character. The Font Awesome "school-circle-exclamation" icon unicode character. The Font Awesome "school-circle-xmark" icon unicode character. The Font Awesome "school-flag" icon unicode character. The Font Awesome "school-lock" icon unicode character. The Font Awesome "screwdriver" icon unicode character. The Font Awesome "scroll" icon unicode character. The Font Awesome "sd-card" icon unicode character. The Font Awesome "magnifying-glass" icon unicode character. The Font Awesome "magnifying-glass-dollar" icon unicode character. The Font Awesome "magnifying-glass-location" icon unicode character. The Font Awesome "magnifying-glass-minus" icon unicode character. The Font Awesome "magnifying-glass-plus" icon unicode character. The Font Awesome "section" icon unicode character. The Font Awesome "seedling" icon unicode character. The Font Awesome "server" icon unicode character. The Font Awesome "shapes" icon unicode character. The Font Awesome "share" icon unicode character. The Font Awesome "share-nodes" icon unicode character. The Font Awesome "square-share-nodes" icon unicode character. The Font Awesome "share-from-square" icon unicode character. The Font Awesome "sheet-plastic" icon unicode character. The Font Awesome "shekel-sign" icon unicode character. The Font Awesome "shield" icon unicode character. The Font Awesome "shield-halved" icon unicode character. The Font Awesome "shield-cat" icon unicode character. The Font Awesome "shield-dog" icon unicode character. The Font Awesome "shield-heart" icon unicode character. The Font Awesome "shield-virus" icon unicode character. The Font Awesome "ship" icon unicode character. The Font Awesome "truck-fast" icon unicode character. The Font Awesome "shoe-prints" icon unicode character. The Font Awesome "shop-lock" icon unicode character. The Font Awesome "bag-shopping" icon unicode character. The Font Awesome "basket-shopping" icon unicode character. The Font Awesome "cart-shopping" icon unicode character. The Font Awesome "shop-slash" icon unicode character. The Font Awesome "shower" icon unicode character. The Font Awesome "shrimp" icon unicode character. The Font Awesome "van-shuttle" icon unicode character. The Font Awesome "sign-hanging" icon unicode character. The Font Awesome "signal" icon unicode character. The Font Awesome "signature" icon unicode character. The Font Awesome "right-to-bracket" icon unicode character. The Font Awesome "hands" icon unicode character. The Font Awesome "right-from-bracket" icon unicode character. The Font Awesome "sim-card" icon unicode character. The Font Awesome "sink" icon unicode character. The Font Awesome "sitemap" icon unicode character. The Font Awesome "person-skating" icon unicode character. The Font Awesome "person-skiing" icon unicode character. The Font Awesome "person-skiing-nordic" icon unicode character. The Font Awesome "skull" icon unicode character. The Font Awesome "skull-crossbones" icon unicode character. The Font Awesome "slash" icon unicode character. The Font Awesome "sleigh" icon unicode character. The Font Awesome "sliders" icon unicode character. The Font Awesome "face-smile" icon unicode character. The Font Awesome "face-smile-beam" icon unicode character. The Font Awesome "face-smile-wink" icon unicode character. The Font Awesome "smog" icon unicode character. The Font Awesome "smoking" icon unicode character. The Font Awesome "ban-smoking" icon unicode character. The Font Awesome "comment-sms" icon unicode character. The Font Awesome "person-snowboarding" icon unicode character. The Font Awesome "snowflake" icon unicode character. The Font Awesome "snowman" icon unicode character. The Font Awesome "snowplow" icon unicode character. The Font Awesome "soap" icon unicode character. The Font Awesome "socks" icon unicode character. The Font Awesome "solar-panel" icon unicode character. The Font Awesome "sort" icon unicode character. The Font Awesome "arrow-down-a-z" icon unicode character. The Font Awesome "arrow-down-z-a" icon unicode character. The Font Awesome "arrow-up-a-z" icon unicode character. The Font Awesome "arrow-up-z-a" icon unicode character. The Font Awesome "arrow-down-wide-short" icon unicode character. The Font Awesome "arrow-down-short-wide" icon unicode character. The Font Awesome "arrow-up-wide-short" icon unicode character. The Font Awesome "arrow-up-short-wide" icon unicode character. The Font Awesome "sort-down" icon unicode character. The Font Awesome "arrow-down-1-9" icon unicode character. The Font Awesome "arrow-down-9-1" icon unicode character. The Font Awesome "arrow-up-1-9" icon unicode character. The Font Awesome "arrow-up-9-1" icon unicode character. The Font Awesome "sort-up" icon unicode character. The Font Awesome "spa" icon unicode character. The Font Awesome "shuttle-space" icon unicode character. The Font Awesome "spell-check" icon unicode character. The Font Awesome "spider" icon unicode character. The Font Awesome "spinner" icon unicode character. The Font Awesome "splotch" icon unicode character. The Font Awesome "spray-can" icon unicode character. The Font Awesome "square" icon unicode character. The Font Awesome "square-arrow-up-right" icon unicode character. The Font Awesome "square-full" icon unicode character. The Font Awesome "square-nfi" icon unicode character. The Font Awesome "square-person-confined" icon unicode character. The Font Awesome "square-root-variable" icon unicode character. The Font Awesome "square-virus" icon unicode character. The Font Awesome "square-xmark" icon unicode character. The Font Awesome "staff-snake" icon unicode character. The Font Awesome "stairs" icon unicode character. The Font Awesome "stamp" icon unicode character. The Font Awesome "stapler" icon unicode character. The Font Awesome "star" icon unicode character. The Font Awesome "star-and-crescent" icon unicode character. The Font Awesome "star-half" icon unicode character. The Font Awesome "star-half-stroke" icon unicode character. The Font Awesome "star-of-david" icon unicode character. The Font Awesome "star-of-life" icon unicode character. The Font Awesome "backward-step" icon unicode character. The Font Awesome "forward-step" icon unicode character. The Font Awesome "stethoscope" icon unicode character. The Font Awesome "note-sticky" icon unicode character. The Font Awesome "stop" icon unicode character. The Font Awesome "circle-stop" icon unicode character. The Font Awesome "stopwatch" icon unicode character. The Font Awesome "stopwatch-20" icon unicode character. The Font Awesome "store" icon unicode character. The Font Awesome "shop" icon unicode character. The Font Awesome "store-slash" icon unicode character. The Font Awesome "bars-staggered" icon unicode character. The Font Awesome "street-view" icon unicode character. The Font Awesome "strikethrough" icon unicode character. The Font Awesome "stroopwafel" icon unicode character. The Font Awesome "subscript" icon unicode character. The Font Awesome "train-subway" icon unicode character. The Font Awesome "suitcase" icon unicode character. The Font Awesome "suitcase-rolling" icon unicode character. The Font Awesome "sun" icon unicode character. The Font Awesome "sun-plant-wilt" icon unicode character. The Font Awesome "superscript" icon unicode character. The Font Awesome "face-surprise" icon unicode character. The Font Awesome "swatchbook" icon unicode character. The Font Awesome "person-swimming" icon unicode character. The Font Awesome "water-ladder" icon unicode character. The Font Awesome "synagogue" icon unicode character. The Font Awesome "arrows-rotate" icon unicode character. The Font Awesome "rotate" icon unicode character. The Font Awesome "syringe" icon unicode character. The Font Awesome "table" icon unicode character. The Font Awesome "tablet" icon unicode character. The Font Awesome "tablet-screen-button" icon unicode character. The Font Awesome "tablet-button" icon unicode character. The Font Awesome "table-tennis-paddle-ball" icon unicode character. The Font Awesome "tablets" icon unicode character. The Font Awesome "gauge-high" icon unicode character. Uses a legacy unicode value for backwards compatability. The current unicode value is 0xF625. The Font Awesome "tag" icon unicode character. The Font Awesome "tags" icon unicode character. The Font Awesome "tape" icon unicode character. The Font Awesome "tarp" icon unicode character. The Font Awesome "tarp-droplet" icon unicode character. The Font Awesome "list-check" icon unicode character. The Font Awesome "taxi" icon unicode character. The Font Awesome "teeth" icon unicode character. The Font Awesome "teeth-open" icon unicode character. The Font Awesome "temperature-arrow-down" icon unicode character. The Font Awesome "temperature-arrow-up" icon unicode character. The Font Awesome "temperature-high" icon unicode character. The Font Awesome "temperature-low" icon unicode character. The Font Awesome "tenge-sign" icon unicode character. The Font Awesome "tent" icon unicode character. The Font Awesome "tent-arrow-down-to-line" icon unicode character. The Font Awesome "tent-arrow-left-right" icon unicode character. The Font Awesome "tent-arrows-down" icon unicode character. The Font Awesome "tent-arrow-turn-left" icon unicode character. The Font Awesome "tents" icon unicode character. The Font Awesome "terminal" icon unicode character. The Font Awesome "text-height" icon unicode character. The Font Awesome "text-width" icon unicode character. The Font Awesome "table-cells" icon unicode character. The Font Awesome "masks-theater" icon unicode character. The Font Awesome "thermometer" icon unicode character. The Font Awesome "temperature-empty" icon unicode character. The Font Awesome "temperature-full" icon unicode character. The Font Awesome "temperature-half" icon unicode character. The Font Awesome "temperature-quarter" icon unicode character. The Font Awesome "temperature-three-quarters" icon unicode character. The Font Awesome "table-cells-large" icon unicode character. The Font Awesome "table-list" icon unicode character. The Font Awesome "thumbs-down" icon unicode character. The Font Awesome "thumbs-up" icon unicode character. The Font Awesome "thumbtack" icon unicode character. The Font Awesome "ticket" icon unicode character. The Font Awesome "ticket-simple" icon unicode character. The Font Awesome "timeline" icon unicode character. The Font Awesome "xmark" icon unicode character. The Font Awesome "circle-xmark" icon unicode character. The Font Awesome "droplet" icon unicode character. The Font Awesome "droplet-slash" icon unicode character. The Font Awesome "face-tired" icon unicode character. The Font Awesome "toggle-off" icon unicode character. The Font Awesome "toggle-on" icon unicode character. The Font Awesome "toilet" icon unicode character. The Font Awesome "toilet-paper" icon unicode character. The Font Awesome "toilet-paper-slash" icon unicode character. The Font Awesome "toilet-portable" icon unicode character. The Font Awesome "toilets-portable" icon unicode character. The Font Awesome "toolbox" icon unicode character. The Font Awesome "screwdriver-wrench" icon unicode character. The Font Awesome "tooth" icon unicode character. The Font Awesome "scroll-torah" icon unicode character. The Font Awesome "torii-gate" icon unicode character. The Font Awesome "tornado" icon unicode character. The Font Awesome "tower-cell" icon unicode character. The Font Awesome "tower-observation" icon unicode character. The Font Awesome "tractor" icon unicode character. The Font Awesome "trademark" icon unicode character. The Font Awesome "traffic-light" icon unicode character. The Font Awesome "train" icon unicode character. The Font Awesome "train-tram" icon unicode character. The Font Awesome "cable-car" icon unicode character. The Font Awesome "mars-and-venus" icon unicode character. The Font Awesome "transgender" icon unicode character. The Font Awesome "trash" icon unicode character. The Font Awesome "trash-can" icon unicode character. The Font Awesome "trash-arrow-up" icon unicode character. The Font Awesome "trash-can-arrow-up" icon unicode character. The Font Awesome "tree" icon unicode character. The Font Awesome "tree-city" icon unicode character. The Font Awesome "trophy" icon unicode character. The Font Awesome "trowel" icon unicode character. The Font Awesome "trowel-bricks" icon unicode character. The Font Awesome "truck" icon unicode character. The Font Awesome "truck-arrow-right" icon unicode character. The Font Awesome "truck-droplet" icon unicode character. The Font Awesome "truck-field" icon unicode character. The Font Awesome "truck-field-un" icon unicode character. The Font Awesome "truck-front" icon unicode character. The Font Awesome "truck-ramp-box" icon unicode character. The Font Awesome "truck-monster" icon unicode character. The Font Awesome "truck-moving" icon unicode character. The Font Awesome "truck-pickup" icon unicode character. The Font Awesome "truck-plane" icon unicode character. The Font Awesome "shirt" icon unicode character. The Font Awesome "tty" icon unicode character. The Font Awesome "turkish-lira-sign" icon unicode character. The Font Awesome "tv" icon unicode character. The Font Awesome "umbrella" icon unicode character. The Font Awesome "umbrella-beach" icon unicode character. The Font Awesome "underline" icon unicode character. The Font Awesome "arrow-rotate-left" icon unicode character. The Font Awesome "rotate-left" icon unicode character. The Font Awesome "universal-access" icon unicode character. The Font Awesome "building-columns" icon unicode character. The Font Awesome "link-slash" icon unicode character. The Font Awesome "unlock" icon unicode character. The Font Awesome "unlock-keyhole" icon unicode character. The Font Awesome "upload" icon unicode character. The Font Awesome "user" icon unicode character. The Font Awesome "user-large" icon unicode character. The Font Awesome "user-large-slash" icon unicode character. The Font Awesome "user-astronaut" icon unicode character. The Font Awesome "user-check" icon unicode character. The Font Awesome "circle-user" icon unicode character. The Font Awesome "user-clock" icon unicode character. The Font Awesome "user-gear" icon unicode character. The Font Awesome "user-pen" icon unicode character. The Font Awesome "user-group" icon unicode character. The Font Awesome "user-graduate" icon unicode character. The Font Awesome "user-injured" icon unicode character. The Font Awesome "user-lock" icon unicode character. The Font Awesome "user-doctor" icon unicode character. The Font Awesome "user-minus" icon unicode character. The Font Awesome "user-ninja" icon unicode character. The Font Awesome "user-nurse" icon unicode character. The Font Awesome "user-plus" icon unicode character. The Font Awesome "users" icon unicode character. The Font Awesome "users-between-lines" icon unicode character. The Font Awesome "users-gear" icon unicode character. The Font Awesome "user-secret" icon unicode character. The Font Awesome "user-shield" icon unicode character. The Font Awesome "user-slash" icon unicode character. The Font Awesome "users-line" icon unicode character. The Font Awesome "users-rays" icon unicode character. The Font Awesome "users-rectangle" icon unicode character. The Font Awesome "users-slash" icon unicode character. The Font Awesome "users-viewfinder" icon unicode character. The Font Awesome "user-tag" icon unicode character. The Font Awesome "user-tie" icon unicode character. The Font Awesome "user-xmark" icon unicode character. The Font Awesome "utensils" icon unicode character. The Font Awesome "spoon" icon unicode character. The Font Awesome "vault" icon unicode character. The Font Awesome "vector-square" icon unicode character. The Font Awesome "venus" icon unicode character. The Font Awesome "venus-double" icon unicode character. The Font Awesome "venus-mars" icon unicode character. The Font Awesome "vest" icon unicode character. The Font Awesome "vest-patches" icon unicode character. The Font Awesome "vial" icon unicode character. The Font Awesome "vial-circle-check" icon unicode character. The Font Awesome "vials" icon unicode character. The Font Awesome "vial-virus" icon unicode character. The Font Awesome "video" icon unicode character. The Font Awesome "video-slash" icon unicode character. The Font Awesome "vihara" icon unicode character. The Font Awesome "virus" icon unicode character. The Font Awesome "virus-covid" icon unicode character. The Font Awesome "virus-covid-slash" icon unicode character. The Font Awesome "viruses" icon unicode character. The Font Awesome "virus-slash" icon unicode character. The Font Awesome "voicemail" icon unicode character. The Font Awesome "volcano" icon unicode character. The Font Awesome "volleyball" icon unicode character. The Font Awesome "volume-low" icon unicode character. The Font Awesome "volume-xmark" icon unicode character. The Font Awesome "volume-off" icon unicode character. The Font Awesome "volume-high" icon unicode character. The Font Awesome "check-to-slot" icon unicode character. The Font Awesome "vr-cardboard" icon unicode character. The Font Awesome "walkie-talkie" icon unicode character. The Font Awesome "person-walking" icon unicode character. The Font Awesome "wallet" icon unicode character. The Font Awesome "wand-magic-sparkles" icon unicode character. The Font Awesome "wand-sparkles" icon unicode character. The Font Awesome "warehouse" icon unicode character. The Font Awesome "water" icon unicode character. The Font Awesome "wave-square" icon unicode character. The Font Awesome "weight-scale" icon unicode character. The Font Awesome "weight-hanging" icon unicode character. The Font Awesome "wheat-awn" icon unicode character. The Font Awesome "wheat-awn-circle-exclamation" icon unicode character. The Font Awesome "wheelchair" icon unicode character. The Font Awesome "wheelchair-move" icon unicode character. The Font Awesome "wifi" icon unicode character. The Font Awesome "wind" icon unicode character. The Font Awesome "rectangle-xmark" icon unicode character. The Font Awesome "window-maximize" icon unicode character. The Font Awesome "window-minimize" icon unicode character. The Font Awesome "window-restore" icon unicode character. The Font Awesome "wine-bottle" icon unicode character. The Font Awesome "wine-glass" icon unicode character. The Font Awesome "wine-glass-empty" icon unicode character. The Font Awesome "won-sign" icon unicode character. The Font Awesome "worm" icon unicode character. The Font Awesome "wrench" icon unicode character. The Font Awesome "xmarks-lines" icon unicode character. The Font Awesome "x-ray" icon unicode character. The Font Awesome "yen-sign" icon unicode character. The Font Awesome "yin-yang" icon unicode character. Set search terms associated with a font awesome icon. Initializes a new instance of the class. search terms for enum member. Gets or sets search terms. Represents a font from Dalamud assets. Initializes a new instance of the class. The font asset. Gets the font asset. Represents the default Dalamud font. The shared instance of . Represents a font from the game. Initializes a new instance of the class. The game font family. Gets the game font family. Represents a font family identifier.
Not intended for plugins to implement.
Gets the list of fonts under this family. Finds the index of the font inside that best matches the given parameters. The weight of the font. The stretch of the font. The style of the font. The index of the font. Guaranteed to be a valid index. Gets the list of Dalamud-provided fonts. The list of fonts. Gets the list of Game-provided fonts. The list of fonts. Gets the list of System-provided fonts. If true, try to refresh the list. The list of fonts. Represents a font identifier.
Not intended for plugins to implement.
Gets the associated font family. Gets the font weight, ranging from 1 to 999. Gets the font stretch, ranging from 1 to 9. Gets the font style. Treat as an opaque value. Adds this font to the given font build toolkit. The font build toolkit. The font configuration. Some parameters may be ignored. The added font. Represents a user's choice of font(s).
Not intended for plugins to implement.
Gets the font size in pixels. Gets the font size in points. Gets the line height in pixels. Creates a font handle corresponding to this font specification. The atlas to bind this font handle to. Optional callback to be called after creating the font handle. The new font handle. will be set when is invoked. Adds this font to the given font build toolkit. The font build toolkit. The font to merge to. The added font. Represents this font specification, preferrably in the requested locale. The locale code. Must be in lowercase(invariant). The value. Represents an object with localizable names. Gets the name, preferrably in English. Gets the names per locales. Gets the name in the requested locale if available; otherwise, . The locale code. Must be in lowercase(invariant). The value. Resolves all names per locales. The names. A new dictionary mapping from locale code to localized names. Represents a user's choice of a single font. Gets the font id. Gets the line height ratio to the font size. Gets the glyph offset in pixels. Gets the letter spacing in pixels. Gets the glyph ranges. Represents a font from system. Initializes a new instance of the class. The font name in English. The localized font name for display purposes. Initializes a new instance of the class. The localized font name for display purposes. Create a new instance of from an . The family. The new instance. Represents a font installed in the system. Initializes a new instance of the class. The parent font family. The font. Gets the file containing this font, and the font index within. The path and index. Reference member view of a .fdt file data. Initializes a new instance of the struct. Pointer to the data. Length of the data. Gets the file header. Gets the font header. Gets the glyphs. Gets the kerning header. Gets the number of kerning entries. Gets the kerning entries. Gets the maximum texture index. Finds the glyph index for the corresponding codepoint. Unicode codepoint (UTF-32 value). Corresponding index, or a negative number according to . Create a glyph range for use with . Merge two ranges into one if distance is below the value specified in this parameter. Glyph ranges. Parses a game font file. Initializes a new instance of the class. Content of a FDT file. Gets the header of this file. Gets the font header of this file. Gets the kerning table header of this file. Gets all the glyphs defined in this file. Gets all the kerning entries defined in this file. Finds the glyph index for the corresponding codepoint. Unicode codepoint (UTF-32 value). Corresponding index, or a negative number according to . Finds glyph definition for corresponding codepoint. Unicode codepoint (UTF-32 value). Corresponding FontTableEntry, or null if not found. Returns glyph definition for corresponding codepoint. Unicode codepoint (UTF-32 value). Corresponding FontTableEntry, or that of a fallback character. Returns distance adjustment between two adjacent characters. Left character. Right character. Supposed distance adjustment between given characters. Translates a UTF-32 codepoint to a containing a UTF-8 character. The codepoint. The uint. Header of game font file format. Signature: "fcsv". Offset to FontTableHeader. Offset to KerningTableHeader. Unused/unknown. Header of glyph table. Signature: "fthd". Number of glyphs defined in this file. Number of kerning informations defined in this file. Unused/unknown. Width of backing texture. Height of backing texture. Size of the font defined from this file, in points unit. Line height of the font defined forom this file, in pixels unit. Ascent of the font defined from this file, in pixels unit. Gets descent of the font defined from this file, in pixels unit. Glyph table entry. Mapping of texture channel index to byte index. Integer representation of a Unicode character in UTF-8 in reverse order, read in little endian. Integer representation of a Shift_JIS character in reverse order, read in little endian. Index of backing texture. Horizontal offset of glyph image in the backing texture. Vertical offset of glyph image in the backing texture. Bounding width of this glyph. Bounding height of this glyph. Distance adjustment for drawing next character. Distance adjustment for drawing current character. Gets the index of the file among all the backing texture files. Gets the channel index in the backing texture file. Gets the byte index in a multichannel pixel corresponding to the channel. Gets the advance width of this character. Gets the Unicode codepoint of the character for this entry in int type. Gets the Unicode codepoint of the character for this entry in char type. Header of kerning table. Signature: "knhd". Number of kerning entries in this table. Unused/unknown. Kerning table entry. Integer representation of a Unicode character in UTF-8 in reverse order, read in little endian, for the left character. Integer representation of a Unicode character in UTF-8 in reverse order, read in little endian, for the right character. Integer representation of a Shift_JIS character in reverse order, read in little endian, for the left character. Integer representation of a Shift_JIS character in reverse order, read in little endian, for the right character. Horizontal offset adjustment for the right character. Gets the Unicode codepoint of the character for this entry in int type. Gets the Unicode codepoint of the character for this entry in char type. Gets the Unicode codepoint of the character for this entry in int type. Gets the Unicode codepoint of the character for this entry in char type. Enum of available game font families. Placeholder meaning unused. Sans-serif fonts used for the whole UI. Contains Japanese characters in addition to Latin characters. Serif fonts used for job names. Contains Latin characters. Digit-only serif fonts used for flying texts. Contains numbers. Digit-only sans-serif horizontally wide fonts used for HP/MP/IL numbers. Sans-serif horizontally wide font used for names of gauges. Contains Latin characters. Sans-serif horizontally narrow font used for addon titles. Contains Latin characters. Enum of available game fonts in specific sizes. Placeholder meaning unused. AXIS (9.6pt) Contains Japanese characters in addition to Latin characters. Used in game for the whole UI. AXIS (12pt) Contains Japanese characters in addition to Latin characters. Used in game for the whole UI. AXIS (14pt) Contains Japanese characters in addition to Latin characters. Used in game for the whole UI. AXIS (18pt) Contains Japanese characters in addition to Latin characters. Used in game for the whole UI. AXIS (36pt) Contains Japanese characters in addition to Latin characters. Used in game for the whole UI. Jupiter (16pt) Serif font. Contains mostly ASCII range. Used in game for job names. Jupiter (20pt) Serif font. Contains mostly ASCII range. Used in game for job names. Jupiter (23pt) Serif font. Contains mostly ASCII range. Used in game for job names. Jupiter (45pt) Serif font. Contains mostly numbers. Used in game for flying texts. Jupiter (46pt) Serif font. Contains mostly ASCII range. Used in game for job names. Jupiter (90pt) Serif font. Contains mostly numbers. Used in game for flying texts. Meidinger (16pt) Horizontally wide. Contains mostly numbers. Used in game for HP/MP/IL stuff. Meidinger (20pt) Horizontally wide. Contains mostly numbers. Used in game for HP/MP/IL stuff. Meidinger (40pt) Horizontally wide. Contains mostly numbers. Used in game for HP/MP/IL stuff. MiedingerMid (10pt) Horizontally wide. Contains mostly ASCII range. MiedingerMid (12pt) Horizontally wide. Contains mostly ASCII range. MiedingerMid (14pt) Horizontally wide. Contains mostly ASCII range. MiedingerMid (18pt) Horizontally wide. Contains mostly ASCII range. MiedingerMid (36pt) Horizontally wide. Contains mostly ASCII range. TrumpGothic (18.4pt) Horizontally narrow. Contains mostly ASCII range. Used for addon titles. TrumpGothic (23pt) Horizontally narrow. Contains mostly ASCII range. Used for addon titles. TrumpGothic (34pt) Horizontally narrow. Contains mostly ASCII range. Used for addon titles. TrumpGothic (688pt) Horizontally narrow. Contains mostly ASCII range. Used for addon titles. Marks the path for an enum value. Initializes a new instance of the class. Inner path of the file. the file path format for the relevant .tex files. Horizontal offset of the corresponding font. Gets the path. Gets the file path format for the relevant .tex files.
Used for (, ).
Gets the horizontal offset of the corresponding font. Plan on how glyphs will be rendered. Horizontal alignment. Align to left. Align to center. Align to right. Gets the associated ImFontPtr. Gets the size in points of the text. Gets the x offset of the leftmost glyph. Gets the width of the text. Gets the height of the text. Gets the list of plannen elements. Draws font to ImGui. Target ImDrawList. Position. Color. Plan on how each glyph will be rendered. Gets the original codepoint. Gets the corresponding or fallback glyph. Gets the X offset of this glyph. Gets the Y offset of this glyph. Gets a value indicating whether whether this codepoint is a control character. Gets a value indicating whether whether this codepoint is a space. Gets a value indicating whether whether this codepoint is a line break character. Gets a value indicating whether whether this codepoint is a chinese character. Gets a value indicating whether whether this codepoint is a good position to break word after. Build a GameFontLayoutPlan. Initializes a new instance of the class. Corresponding ImFontPtr. FDT file to base on. Text. Sets the size of resulting text. Size in pixels. This. Sets the maximum width of the text. Maximum width in pixels. This. Sets the horizontal alignment of the text. Horizontal alignment. This. Builds the layout plan. Newly created layout plan. Describes a font based on game resource file. Font family of the font. Size of the font in pixels unit. Weight of the font. 0 is unaltered. Any value greater than 0 will make it bolder. Skewedness of the font. 0 is unaltered. Greater than 1 will make upper part go rightwards. Less than 1 will make lower part go rightwards. Initializes a new instance of the struct. Font family. Size in pixels. Initializes a new instance of the struct. Font family and size. Gets or sets the size of the font in points unit. Gets or sets the base skew strength. Gets the font family. Gets the corresponding GameFontFamilyAndSize but with minimum possible font sizes. Gets the base font size in point unit. Gets the base font size in pixel unit. Gets or sets a value indicating whether this font is bold. Gets or sets a value indicating whether this font is italic. Gets the recommend GameFontFamilyAndSize given family and size. Font family. Font size in points. Recommended GameFontFamilyAndSize. Creates a new scaled instance of struct. The scale. The scaled instance. Calculates the adjustment to width resulting fron Weight and SkewStrength. Font header. Glyph. Width adjustment in pixel unit. Calculates the adjustment to width resulting fron Weight and SkewStrength. Font information. Glyph. Width adjustment in pixel unit. Unicode glyph ranges for the Japanese language. Gets the unicode glyph ranges for the Japanese language. A drive list loader. Thread-safety guaranteed. Initializes a new instance of the class. Gets the drive list. This may be incomplete if the loader is still loading. Gets a value indicating whether or not the loader is loading. Loads the drive list, asynchronously. A representing the asynchronous operation. A file or folder picker. A file or folder picker. A file or folder picker. A file or folder picker. A file or folder picker. A file or folder picker. The flags used to draw the file picker window. Initializes a new instance of the class. A unique id for the dialog. The text which is shown at the top of the dialog. Which file extension filters to apply. This should be left blank to select directories. The directory which the dialog should start inside of. The default file or directory name. The default extension when creating new files. The maximum amount of files or directories which can be selected. Set to 0 for an infinite number. Whether the dialog should be a modal popup. Settings flags for the dialog, see . Shows the dialog. Hides the dialog. Gets whether a file or folder was successfully selected. The success state. Will be false if the selection was canceled or was otherwise unsuccessful. Gets the result of the selection. The list of selected paths. Gets the current path of the dialog. The path of the directory which the dialog is current viewing. Set or remove a quick access folder for the navigation panel. The displayed name of the folder. If this name already exists, it will be overwritten. The new linked path. If this is empty, no link will be added and existing links will be removed. The FontAwesomeIcon-ID of the icon displayed before the name. An optional position at which to insert the new link. If the link is updated, having this less than zero will keep its position. Otherwise, invalid indices will insert it at the end. Draws the dialog. Whether a selection or cancel action was performed. A manager for the class. Additional quick access items for the side bar. Additional flags with which to draw the window. Create a dialog which selects an already existing folder. The header title of the dialog. The action to execute when the dialog is finished. Create a dialog which selects an already existing folder. The header title of the dialog. The action to execute when the dialog is finished. The directory which the dialog should start inside of. The last path this manager was in is used if this is null. Whether the dialog should be a modal popup. Create a dialog which selects an already existing folder or new folder. The header title of the dialog. The default name to use when creating a new folder. The action to execute when the dialog is finished. Create a dialog which selects an already existing folder or new folder. The header title of the dialog. The default name to use when creating a new folder. The action to execute when the dialog is finished. The directory which the dialog should start inside of. The last path this manager was in is used if this is null. Whether the dialog should be a modal popup. Create a dialog which selects a single, already existing file. The header title of the dialog. Which files to show in the dialog. The action to execute when the dialog is finished. Create a dialog which selects already existing files. The header title of the dialog. Which files to show in the dialog. The action to execute when the dialog is finished. The maximum amount of files or directories which can be selected. Set to 0 for an infinite number. The directory which the dialog should start inside of. The last path this manager was in is used if this is null. Whether the dialog should be a modal popup. Create a dialog which selects an already existing folder or new file. The header title of the dialog. Which files to show in the dialog. The default name to use when creating a new file. The extension to use when creating a new file. The action to execute when the dialog is finished. Create a dialog which selects an already existing folder or new file. The header title of the dialog. Which files to show in the dialog. The default name to use when creating a new file. The extension to use when creating a new file. The action to execute when the dialog is finished. The directory which the dialog should start inside of. The last path this manager was in is used if this is null. Whether the dialog should be a modal popup. Draws the current dialog, if any, and executes the callback if it is finished. Removes the current dialog, if any. Settings flags for the class. None. Confirm the selection when choosing a file which already exists. Only allow selection of files or folders which currently exist. Hide files or folders which start with a period. Disable the creation of new folders within the dialog. Hide the type column. Hide the file size column. Hide the last modified date column. Hide the quick access sidebar. A dialog for choosing a font and its size. Initializes a new instance of the class. The relevant instance of UiBuilder. Whether the fonts in the atlas is global scaled. Atlas name for debugging purposes. The passed is only used for creating a temporary font atlas. It will not automatically register a hander for . Consider using for automatic registration and unregistration of event handler in addition to automatic disposal of this class and the temporary font atlas for this font chooser dialog. Initializes a new instance of the class. An instance of . The temporary atlas name. Initializes a new instance of the class. A new instance of created using as its auto-rebuild mode. The passed instance of will be disposed after use. If you pass an atlas that is already being used, then all the font handles under the passed atlas will be invalidated upon disposing this font chooser. Consider using for automatic handling of font atlas derived from a , or even for automatic registration and unregistration of event handler in addition to automatic disposal of this class and the temporary font atlas for this font chooser dialog. Called when the selected font spec has changed. Gets or sets the title of this font chooser dialog popup. Gets or sets the preview text. A text too long may be truncated on assignment. Gets the task that resolves upon choosing a font or cancellation. Gets or sets the selected family and font. Gets or sets the font family exclusion filter predicate. Gets or sets a value indicating whether to ignore the global scale on preview text input. Gets or sets a value indicating whether this popup should be modal, blocking everything behind from being interacted. If true, then will be used. Otherwise, will be used. Gets or sets the window flags. Gets or sets the popup window position. Setting the position only works before the first call to . If any of the coordinates are , default position will be used. The position will be clamped into the work area of the selected monitor. Gets or sets the popup window size. Setting the size only works before the first call to . If any of the coordinates are , default size will be used. The size will be clamped into the work area of the selected monitor. Creates a new instance of that will automatically draw and dispose itself as needed; calling and are handled automatically. An instance of . The new instance of . Gets the default popup size before clamping to monitor work area. The default popup size. Cancels this dialog. Sets and to be at the center of the current window being drawn. The preferred popup size. Sets and to be at the center of the current window being drawn. Draws this dialog. Arguments for use with . Not to be implemented by plugins. Gets the notification being clicked. Arguments for use with . Not to be implemented by plugins. Gets the notification being dismissed. Gets the dismiss reason. Arguments for use with . Not to be implemented by plugins. Gets the notification being drawn. Gets the top left coordinates of the area being drawn. Gets the bottom right coordinates of the area being drawn. Note that can be , in which case there is no vertical limits to the drawing region. Represents an active notification. Not to be implemented by plugins. The counter for field. Invoked upon dismissing the notification. The event callback will not be called, if it gets dismissed after plugin unload. Invoked upon clicking on the notification. Note that this function may be called even after has been invoked. Invoked upon drawing the action bar of the notification. Note that this function may be called even after has been invoked. Gets the ID of this notification. This value does not change. Gets the time of creating this notification. This value does not change. Gets the effective expiry time. Contains if the notification does not expire. This value will change depending on property changes and user interactions. Gets the reason how this notification got dismissed. null if not dismissed. This includes when the hide animation is being played. Dismisses this notification. If the notification has already been dismissed, this function does nothing. Extends this notifiation. The extension time. This does not override . Sets the icon from , overriding the icon. The new texture wrap to use, or null to clear and revert back to the icon specified from . The texture passed will be disposed when the notification is dismissed or a new different texture is set via another call to this function or overwriting the property. You do not have to dispose it yourself. If is not null, then calling this function will simply dispose the passed without actually updating the icon. Sets the icon from , overriding the icon, once the given task completes. The task that will result in a new texture wrap to use, or null to clear and revert back to the icon specified from . The texture resulted from the passed will be disposed when the notification is dismissed or a new different texture is set via another call to this function over overwriting the property. You do not have to dispose the resulted instance of yourself. If the task fails for any reason, the exception will be silently ignored and the icon specified from will be used instead. If is not null, then calling this function will simply dispose the result of the passed without actually updating the icon. Sets the icon from , overriding the icon. The new texture wrap to use, or null to clear and revert back to the icon specified from . Whether to keep the passed not disposed. If is false, the texture passed will be disposed when the notification is dismissed or a new different texture is set via another call to this function. You do not have to dispose it yourself. If is not null and is false, then calling this function will simply dispose the passed without actually updating the icon. Sets the icon from , overriding the icon, once the given task completes. The task that will result in a new texture wrap to use, or null to clear and revert back to the icon specified from . Whether to keep the result from the passed not disposed. If is false, the texture resulted from the passed will be disposed when the notification is dismissed or a new different texture is set via another call to this function. You do not have to dispose the resulted instance of yourself. If the task fails for any reason, the exception will be silently ignored and the icon specified from will be used instead. If is not null, then calling this function will simply dispose the result of the passed without actually updating the icon. Generates a new value to use for . The new value. Represents a notification. Not to be implemented by plugins. Gets or sets the content body of the notification. Gets or sets the title of the notification. Gets or sets the text to display when the notification is minimized. Gets or sets the type of the notification. Gets or sets the icon source, in case is not set or the task has faulted. Gets or sets a texture wrap that will be used in place of if set. A texture wrap set via this property will NOT be disposed when the notification is dismissed. Use or to use a texture, after calling . Call either of those functions with null to revert the effective icon back to this property. This property and are bound together. If the task is not null but is false (because the task is still in progress or faulted,) the property will return null. Setting this property will set to a new completed with the new value as its result. Gets or sets a task that results in a texture wrap that will be used in place of if available. A texture wrap set via this property will NOT be disposed when the notification is dismissed. Use or to use a texture, after calling . Call either of those functions with null to revert the effective icon back to this property. This property and are bound together. Gets or sets the hard expiry. Setting this value will override and , in that the notification will be dismissed when this expiry expires.
Set to to make only take effect.
If both and are MaxValue, then the notification will not expire after a set time. It must be explicitly dismissed by the user or via calling .
Updating this value will reset the dismiss timer.
Gets or sets the initial duration. Set to to make only take effect. Updating this value will reset the dismiss timer, but the remaining duration will still be calculated based on . Gets or sets the new duration for this notification once the mouse cursor leaves the window and the window is no longer focused. If set to or less, then this feature is turned off, and hovering the mouse on the notification or focusing on it will not make the notification stay.
Updating this value will reset the dismiss timer.
Gets or sets a value indicating whether to show an indeterminate expiration animation if is set to . Gets or sets a value indicating whether to respect the current UI visibility state. Gets or sets a value indicating whether the notification has been minimized. Gets or sets a value indicating whether the user can dismiss the notification by themselves. Consider adding a cancel button to . Gets or sets the progress for the background progress bar of the notification. The progress should be in the range between 0 and 1. Icon source for . Plugins implementing this interface are left to their own on managing the resources contained by the instance of their implementation of . In other words, they should not expect to have called if their implementation is an . Dalamud will not call on any instance of . On plugin unloads, the icon may be reverted back to the default, if the instance of is not provided by Dalamud. Gets a new instance of that will source the icon from an . The icon character. A new instance of that should be disposed after use. Gets a new instance of that will source the icon from an . The icon character. A new instance of that should be disposed after use. Gets a new instance of that will source the icon from a texture file shipped as a part of the game resources. The path to a texture file in the game virtual file system. A new instance of that should be disposed after use. If any errors are thrown, the default icon will be displayed instead. Gets a new instance of that will source the icon from an image file from the file system. The path to an image file in the file system. A new instance of that should be disposed after use. If any errors are thrown, the default icon will be displayed instead. Draws the icon. The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. The foreground color. true if anything has been drawn. Represents an active notification. Represents an active notification. Represents an active notification. Represents an active notification. Represents an active notification. Whether to call on . Gets the time of starting to count the timer for the expiration. Gets the extended expiration time from . The plugin that initiated this notification. Whether has been unloaded. The progress before for the progress bar animation with . Used for calculating correct dismissal progressbar animation (left edge). Used for calculating correct dismissal progressbar animation (right edge). New progress value to be updated on next call to . New minimized value to be updated on next call to . Initializes a new instance of the class. The underlying notification. The initiator plugin. Use null if originated by Dalamud. Gets the eased progress. Gets the string for the initiator field. Gets the effective text to display when minimized. Dismisses this notification. Multiple calls will be ignored. The reason of dismissal. Removes non-Dalamud invocation targets from events. This is done to prevent references of plugins being unloaded from outliving the plugin itself. Anything that can contain plugin-provided types and functions count, which effectively means that events and interface/object-typed fields need to be scrubbed. As a notification can be marked as non-user-dismissable, in which case after removing event handlers there will be no way to remove the notification, we force the notification to become user-dismissable, and reset the expiry to the default duration on unload. Updates the state of this notification, and release the relevant resource if this notification is no longer in use. true if the notification is over and relevant resources are released. Intended to be called from the main thread only. Clears the resources associated with this instance of . Draws this notification. The maximum width of the notification window. The offset from the bottom. The height of the notification. Calculates the effective expiry, taking ImGui window state into account. Notification will not dismiss while this paramter is true. The calculated effective expiry. Expected to be called BETWEEN and . Constants for drawing notification windows. The string to measure size of, to decide the width of notification windows. Probably not worth localizing. The ratio of maximum notification window width w.r.t. main viewport width. The size of the icon. The background opacity of a notification window. The duration of indeterminate progress bar loop in milliseconds. The duration of indeterminate pie loop in milliseconds. Note that this value is applicable when reduced motion configuration is on. The duration of the progress wave animation in milliseconds. The time ratio of a progress wave loop where the animation is idle. The time ratio of a non-idle portion of the progress wave loop where the color is the most opaque. Default duration of the notification. Duration of show animation. Duration of hide animation. Duration of progress change animation. Duration of expando animation. Text color for the rectangular border when the notification is focused. Text color for the when. Text color for the close button [X]. Text color for the title. Text color for the name of the initiator. Text color for the body. Color for the background progress bar (determinate progress only). Color for the background progress bar (determinate progress only). Gets the scaled padding of the window (dot(.) in the above diagram). Gets the distance from the right bottom border of the viewport to the right bottom border of a notification window. Gets the scaled gap between two notification windows. Gets the scaled gap between components. Gets the scaled size of the icon. Gets the height of the expiry progress bar. Gets the thickness of the focus indicator rectangle. Gets the string to show in place of this_plugin if the notification is shown by Dalamud. Gets the string format of the initiator name field, if the initiator is unloaded. Gets the color corresponding to the notification type. The notification type. The corresponding color. Gets the char value corresponding to the notification type. The notification type. The corresponding char, or null. Gets the localized title string corresponding to the notification type. The notification type. The corresponding title. Represents the use of a texture from a file as the icon of a notification. If there was no texture loaded for any reason, the plugin icon will be displayed instead. Initializes a new instance of the class. The path to a .tex file inside the game resources. Represents the use of as the icon of a notification. Initializes a new instance of the class. The character. Represents the use of a game-shipped texture as the icon of a notification. If there was no texture loaded for any reason, the plugin icon will be displayed instead. Initializes a new instance of the class. The path to a .tex file inside the game resources. Represents the use of as the icon of a notification. Initializes a new instance of the class. The character. Class handling notifications/toasts in ImGui. Gets the handle to AXIS fonts, sized for use as an icon. Gets the handle to FontAwesome fonts, sized for use as an icon. Gets the private atlas for use with notification windows. Adds a notification originating from a plugin. The notification. The source plugin. The added notification. Add a notification to the notification queue. The content of the notification. The title of the notification. The type of the notification. Draw all currently queued notifications. Plugin-scoped version of a service. Represents a blueprint for a notification. Gets the default value for and . Specifies the reason of dismissal for a notification. The notification is dismissed because the expiry specified from is met. The notification is dismissed because the user clicked on the close button on a notification window. The notification is dismissed from calling . Possible notification types. No special type. Type indicating success. Type indicating a warning. Type indicating an error. Type indicating generic information. Utilities for implementing stuff under . Draws an icon from an and a . The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. The icon character. The font handle to use. The foreground color. true if anything has been drawn. Draws an icon from an instance of . The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. The texture. true if anything has been drawn. Draws an icon from an instance of that results in an . The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. The task that results in a texture. true if anything has been drawn. Exceptions from the task will be treated as if no texture is provided. Draws an icon from an instance of . The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. The plugin. Dalamud icon will be drawn if null is given. true if anything has been drawn. Draws the Dalamud logo as an icon. The coordinates of the top left of the icon area. The coordinates of the bottom right of the icon area. Game font data file. Gets or sets the file header. Gets or sets the entries. Attempts to get an entry. The icon ID. The entry. Whether to follow redirects. true if found. Header of a .gfd file. Signature: "gftd0100". Number of entries. Unused/unknown. An entry of a .gfd file. ID of the entry. The left offset of the entry. The top offset of the entry. The width of the entry. The height of the entry. Unknown/unused. The redirected entry, maybe. Unknown/unused. Gets a value indicating whether this entry is effectively empty. Gets or sets the size of this entry. Gets the UV0 of this entry. Gets the UV1 of this entry. Gets the UV0 of the HQ version of this entry. Gets the UV1 of the HQ version of this entry. Calculates the size in pixels of a GFD entry when drawn along with a text. Font size in pixels. Whether to draw the HQ texture. Determined size of the GFD entry when drawn. Color stacks to use while evaluating a SeString. Parsed , containing colors to use with and . Foreground color stack while evaluating a SeString for rendering. Touched only from the main thread. Edge/border color stack while evaluating a SeString for rendering. Touched only from the main thread. Shadow color stack while evaluating a SeString for rendering. Touched only from the main thread. Initializes a new instance of the class. UIColor sheet. Gets a value indicating whether at least one color has been pushed to the edge color stack. Resets the colors in the stack. Draw state. Handles a payload. Draw state. Payload to handle. Handles a payload. Draw state. Payload to handle. Handles a payload. Draw state. Payload to handle. Handles a payload. Draw state. Payload to handle. Handles a payload. Draw state. Payload to handle. Draws SeString. Soft hyphen character, which signifies that a word can be broken here, and will display a standard hyphen when it is broken there. Object replacement character, which signifies that there should be something else displayed in place of this placeholder. On its own, usually displayed like [OBJ]. Cache of compiled SeStrings from . Parsed gfdata.gfd file, containing bitmap font icon lookup table. Parsed text fragments from a SeString. Touched only from the main thread. Color stacks to use while evaluating a SeString for rendering. Touched only from the main thread. Splits a draw list so that different layers of a single glyph can be drawn out of order. Finalizes an instance of the class. Compiles and caches a SeString from a text macro representation. SeString text macro representation. Newline characters will be normalized to newline payloads. Compiled SeString. Compiles and caches a SeString from a text macro representation, and then draws it. SeString text macro representation. Newline characters will be normalized to newline payloads. Parameters for drawing. ImGui ID, if link functionality is desired. Button flags to use on link interaction. Interaction result of the rendered text. Draws a SeString. SeString to draw. Parameters for drawing. ImGui ID, if link functionality is desired. Button flags to use on link interaction. Interaction result of the rendered text. Draws a SeString. SeString to draw. Parameters for drawing. ImGui ID, if link functionality is desired. Button flags to use on link interaction. Interaction result of the rendered text. Gets the effective char for the given char, or null(\0) if it should not be handled at all. Character to determine. Corresponding rune. Whether to display soft hyphens. Rune corresponding to the unicode codepoint to process, or null(\0) if none. Creates text fragment, taking line and word breaking into account. Draw state. Draws a text fragment. Draw state. Offset of left top corner of this text fragment in pixels w.r.t. . Whether to display soft hyphens in this text fragment. Byte span of the SeString fragment to draw. Rune that preceded this text fragment in the same line, or 0 if none. Byte offset of the link payload that decorates this text fragment in , or -1 if none. Determines a bitmap icon to display for the given SeString payload. Byte span that should include a SeString payload. Icon to display, or if it should not be displayed as an icon. Creates a text fragment. Draw state. Starting byte offset (inclusive) in that this fragment deals with. Ending byte offset (exclusive) in that this fragment deals with. Whether to break line after this fragment. Offset in pixels w.r.t. . Byte offset of the link payload in that decorates this text fragment. Entity to display in place of this fragment. Optional wrap width to stop at while creating this text fragment. Note that at least one visible character needs to be there in a single text fragment, in which case it is allowed to exceed the wrap width. Newly created text fragment. Represents a text fragment in a SeString span. Starting byte offset (inclusive) in a SeString. Ending byte offset (exclusive) in a SeString. Byte offset of the link that decorates this text fragment, or -1 if none. Offset in pixels w.r.t. . Replacement entity, if any. Visible width of this text fragment. This is the width required to draw everything without clipping. Advance width of this text fragment. This is the width required to add to the cursor to position the next fragment correctly. Same with , but trimming all the trailing soft hyphens. Whether to insert a line break after this text fragment. Whether this text fragment ends with one or more soft hyphens. First rune in this text fragment. Last rune in this text fragment, for the purpose of calculating kerning distance with the following text fragment in the same line, if any. Represents a text fragment in a SeString span. Starting byte offset (inclusive) in a SeString. Ending byte offset (exclusive) in a SeString. Byte offset of the link that decorates this text fragment, or -1 if none. Offset in pixels w.r.t. . Replacement entity, if any. Visible width of this text fragment. This is the width required to draw everything without clipping. Advance width of this text fragment. This is the width required to add to the cursor to position the next fragment correctly. Same with , but trimming all the trailing soft hyphens. Whether to insert a line break after this text fragment. Whether this text fragment ends with one or more soft hyphens. First rune in this text fragment. Last rune in this text fragment, for the purpose of calculating kerning distance with the following text fragment in the same line, if any. Starting byte offset (inclusive) in a SeString. Ending byte offset (exclusive) in a SeString. Byte offset of the link that decorates this text fragment, or -1 if none. Offset in pixels w.r.t. . Replacement entity, if any. Visible width of this text fragment. This is the width required to draw everything without clipping. Advance width of this text fragment. This is the width required to add to the cursor to position the next fragment correctly. Same with , but trimming all the trailing soft hyphens. Whether to insert a line break after this text fragment. Whether this text fragment ends with one or more soft hyphens. First rune in this text fragment. Last rune in this text fragment, for the purpose of calculating kerning distance with the following text fragment in the same line, if any. Enumerates line break offsets. Initializes a new instance of the struct. UTF-N byte sequence. Flags to pass to sub-enumerator. Gets a value indicating whether the end of the underlying span has been reached. Resumes enumeration with the given data. The data. Offset to add to .ByteOffset. Stores unicode data. Line break classes. East asian width classes. General categories. Emoji properties. Unicode east asian width. East Asian Ambiguous. East Asian Fullwidth. East Asian Halfwidth. Neutral. East Asian Narrow. East Asian Wide. Unicode emoji property. Characters that are emoji. Characters that have emoji presentation by default. Characters that are emoji modifiers. Characters that can serve as a base for emoji modifiers. Characters used in emoji sequences that normally do not appear on emoji keyboards as separate choices, such as keycap base characters or Regional_Indicator characters. Characters that are used to future-proof segmentation. Unicode general category.. Uppercase_Letter; an uppercase letter. Lowercase_Letter; a lowercase letter. Titlecase_Letter; a digraph encoded as a single character, with first part uppercase. Modifier_Letter; a modifier letter. Other_Letter; other letters, including syllables and ideographs. Nonspacing_Mark; a nonspacing combining mark (zero advance width). Spacing_Mark; a spacing combining mark (positive advance width). Enclosing_Mark; an enclosing combining mark. Decimal_Number; a decimal digit. Letter_Number; a letterlike numeric character. Other_Number; a numeric character of other type. Connector_Punctuation; a connecting punctuation mark, like a tie. Dash_Punctuation; a dash or hyphen punctuation mark. Open_Punctuation; an opening punctuation mark (of a pair). Close_Punctuation; a closing punctuation mark (of a pair). Initial_Punctuation; an initial quotation mark. Final_Punctuation; a final quotation mark. Other_Punctuation; a punctuation mark of other type. Math_Symbol; a symbol of mathematical use. Currency_Symbol; a currency sign. Modifier_Symbol; a non-letterlike modifier symbol. Other_Symbol; a symbol of other type. Space_Separator; a space character (of various non-zero widths). Line_Separator; U+2028 LINE SEPARATOR only. Paragraph_Separator; U+2029 PARAGRAPH SEPARATOR only. Control; a C0 or C1 control code. Format; a format control character. Surrogate; a surrogate code point. Private_Use; a private-use character. Unassigned; a reserved unassigned code point or a noncharacter. Unicode line break class. Start of text. End of text. Mandatory Break; NL, PARAGRAPH SEPARATOR; Cause a line break (after). Carriage Return; CR; Cause a line break (after), except between CR and LF. Line Feed; LF; Cause a line break (after). Combining Mark; Combining marks, control codes; Prohibit a line break between the character and the preceding character. Next Line; NEL; Cause a line break (after). Surrogate; Surrogates; Do not occur in well-formed text. Word Joiner; WJ; Prohibit line breaks before and after. Zero Width Space; ZWSP; Provide a break opportunity. Non-breaking (“Glue”); CGJ, NBSP, ZWNBSP; Prohibit line breaks before and after. Space; SPACE; Enable indirect line breaks. Zero Width Joiner; Zero Width Joiner; Prohibit line breaks within joiner sequences. Break Opportunity Before and After; Em dash; Provide a line break opportunity before and after the character. Break After; Spaces, hyphens; Generally provide a line break opportunity after the character. Break Before; Punctuation used in dictionaries; Generally provide a line break opportunity before the character. Hyphen; HYPHEN-MINUS; Provide a line break opportunity after the character, except in numeric context. Contingent Break Opportunity; Inline objects; Provide a line break opportunity contingent on additional information. Close Punctuation; “}”, “❳”, “⟫” etc.; Prohibit line breaks before. Close Parenthesis; “)”, “]”; Prohibit line breaks before. Exclamation/Interrogation; “!”, “?”, etc.; Prohibit line breaks before. Inseparable; Leaders; Allow only indirect line breaks between pairs. Nonstarter; “‼”, “‽”, “⁇”, “⁉”, etc.; Allow only indirect line breaks before. Open Punctuation; “(“, “[“, “{“, etc.; Prohibit line breaks after. Quotation; Quotation marks; Act like they are both opening and closing. Infix Numeric Separator; . ,; Prevent breaks after any and before numeric. Numeric; Digits; Form numeric expressions for line breaking purposes. Postfix Numeric; %, ¢; Do not break following a numeric expression. Prefix Numeric; $, £, ¥, etc.; Do not break in front of a numeric expression. Symbols Allowing Break After; /; Prevent a break before, and allow a break after. Ambiguous (Alphabetic or Ideographic); Characters with Ambiguous East Asian Width; Act like AL when the resolved EAW is N; otherwise, act as ID. Aksara; Consonants; Form orthographic syllables in Brahmic scripts. Alphabetic; Alphabets and regular symbols; Are alphabetic characters or symbols that are used with alphabetic characters. Aksara Pre-Base; Pre-base repha; Form orthographic syllables in Brahmic scripts. Aksara Start; Independent vowels; Form orthographic syllables in Brahmic scripts. Conditional Japanese Starter; Small kana; Treat as NS or ID for strict or normal breaking. Emoji Base; All emoji allowing modifiers; Do not break from following Emoji Modifier. Emoji Modifier; Skin tone modifiers; Do not break from preceding Emoji Base. Hangul LV Syllable; Hangul; Form Korean syllable blocks. Hangul LVT Syllable; Hangul; Form Korean syllable blocks. Hebrew Letter; Hebrew; Do not break around a following hyphen; otherwise act as Alphabetic. Ideographic; Ideographs; Break before or after, except in some numeric context. Hangul L Jamo; Conjoining jamo; Form Korean syllable blocks. Hangul V Jamo; Conjoining jamo; Form Korean syllable blocks. Hangul T Jamo; Conjoining jamo; Form Korean syllable blocks. Regional Indicator; REGIONAL INDICATOR SYMBOL LETTER A .. Z; Keep pairs together. For pairs, break before and after other classes. Complex Context Dependent (South East Asian); South East Asian: Thai, Lao, Khmer; Provide a line break opportunity contingent on additional, language-specific context analysis. Virama Final; Viramas for final consonants; Form orthographic syllables in Brahmic scripts. Virama; Conjoining viramas; Form orthographic syllables in Brahmic scripts. Unknown; Most unassigned, private-use; Have as yet unknown line breaking behavior or unassigned code positions. Predefined channels for drawing onto, for out-of-order drawing. Next draw operation on the draw list will be put below . Next draw operation on the draw list will be put onto the background channel. Next draw operation on the draw list will be put above . Next draw operation on the draw list will be put below . Next draw operation on the draw list will be put onto the shadow channel. Next draw operation on the draw list will be put above . Next draw operation on the draw list will be put below . Next draw operation on the draw list will be put onto the edge channel. Next draw operation on the draw list will be put above . Next draw operation on the draw list will be put below . Next draw operation on the draw list will be put onto the foreground channel. Next draw operation on the draw list will be put above . Render styles for a SeString. Gets or sets the target draw list. Target draw list, default(ImDrawListPtr) to not draw, or null to use (the default). If this value is set, will not be called, and ImGui ID will be ignored. Gets or sets the function to be called on every codepoint and payload for the purpose of offering chances to draw something else instead of glyphs or SeString payload entities. Gets or sets the screen offset of the left top corner. Screen offset to draw at, or null to use . Gets or sets the font to use. Font to use, or null to use (the default). Gets or sets the font size. Font size in pixels, or 0 to use the current ImGui font size . Gets or sets the line height ratio. 1 or null (the default) will use as the line height. 2 will make line height twice the . Gets or sets the wrapping width. Width in pixels, or null to wrap at the end of available content region from (the default). Gets or sets the thickness of underline under links. Gets or sets the opacity, commonly called "alpha". Opacity value ranging from 0(invisible) to 1(fully visible), or null to use the current ImGui opacity from accessed using . Gets or sets the strength of the edge, which will have effects on the edge opacity. Strength value ranging from 0(invisible) to 1(fully visible), or null to use the default value of 0.25f that might be subject to change in the future. Gets or sets the theme that will decide the colors to use for and . 0 to use colors for Dark theme, 1 to use colors for Light theme, 2 to use colors for Classic FF theme, 3 to use colors for Clear Blue theme, or null to use the theme set from the game configuration. Gets or sets the color of the rendered text. Color in RGBA, or null to use (the default). Gets or sets the color of the rendered text edge. Color in RGBA, or null to use opaque black (the default). Gets or sets the color of the rendered text shadow. Color in RGBA, or null to use opaque black (the default). Gets or sets the background color of a link when hovered. Color in RGBA, or null to use (the default). Gets or sets the background color of a link when active. Color in RGBA, or null to use (the default). Gets or sets a value indicating whether to force the color of the rendered text edge. If set, then and will be ignored. Gets or sets a value indicating whether the text is rendered bold. Gets or sets a value indicating whether the text is rendered italic. Gets or sets a value indicating whether the text is rendered with edge. If an edge color is pushed with or , it will be drawn regardless. Set to true and set to 0 to fully disable edge. Gets or sets a value indicating whether the text is rendered with shadow. Gets the effective font. Gets the effective line height in pixels. Gets the effective opacity. Represents the result of a rendered interactable SeString. Gets the visible size of the text rendered/to be rendered. Gets a value indicating whether a payload or the whole text has been clicked. Gets the offset of the interacted payload, or -1 if none. Gets the interacted payload envelope, or if none. Gets the interacted payload, or null if none. Calculated values from using ImGui styles. Initializes a new instance of the struct. Raw SeString byte span. Instance of to initialize from. Instance of to use. Instance of ImGui Splitter to use. Gets the raw SeString byte span. Gets the multiplier value for glyph metrics, so that it scales to . Multiplied to , , and distance values from . Gets a value indicating whether the edge should be drawn. Gets a value indicating whether the edge should be drawn. Gets a value indicating whether the edge should be drawn. Sets the current channel in the ImGui draw list splitter. Channel to switch to. Draws a single texture. ImGui texture ID to draw from. Offset of the glyph in pixels w.r.t. . Right bottom corner of the glyph w.r.t. its glyph origin in the target draw list. Left top corner of the glyph w.r.t. its glyph origin in the source texture. Right bottom corner of the glyph w.r.t. its glyph origin in the source texture. Color of the glyph in RGBA. Draws a single texture. ImGui texture ID to draw from. Offset of the glyph in pixels w.r.t. . Left top corner of the glyph w.r.t. its glyph origin in the target draw list. Right bottom corner of the glyph w.r.t. its glyph origin in the target draw list. Left top corner of the glyph w.r.t. its glyph origin in the source texture. Right bottom corner of the glyph w.r.t. its glyph origin in the source texture. Color of the glyph in RGBA. Transformation for and that will push top and bottom pixels to apply faux italicization by and respectively. Draws a single glyph using current styling configurations. Glyph to draw. Offset of the glyph in pixels w.r.t. . Draws an underline, for links. Offset of the glyph in pixels w.r.t. . Advance width of the glyph. Gets the glyph corresponding to the given codepoint. An instance of that represents a character to display. Corresponding glyph, or glyph of a fallback character specified from . Gets the glyph corresponding to the given codepoint. An instance of that represents a character to display, that will be changed on return to the rune corresponding to the fallback glyph if a glyph not corresponding to the requested glyph is being returned. Corresponding glyph, or glyph of a fallback character specified from . Gets the kerning adjustment between two glyphs in a succession corresponding to the given runes. Rune representing the glyph on the left side of a pair. Rune representing the glyph on the right side of a pair. Distance adjustment in pixels, scaled to the size specified from , and rounded. Handles style adjusting payloads. Payload to handle. true if the payload was handled. Splits the draw list. Merges the draw list. Replacement entity to draw instead while rendering a SeString. Initializes a new instance of the struct. Number of bytes taken by this entity. Must be at least 0. If 0, then the entity is considered as empty. Size of this entity in pixels. Components must be non-negative. Draw callback. Gets the replacement entity. Draw state. Byte offset in . Replacement entity definition, or default if none. Draws the replacement entity. Draw state. Byte offset in . Relative offset in pixels w.r.t. . Gets the number of bytes taken by this entity. Gets the size of this entity in pixels. Gets the Draw callback. Gets a value indicating whether this entity is empty. Instance of to test. Class responsible for registering and handling ImGui asserts. Initializes a new instance of the class. Gets or sets a value indicating whether ImGui asserts should be shown to the user. Gets or sets a value indicating whether we want to hide asserts that occur frequently (= every update) and whether we want to log callstacks. Register the cimgui assert handler with the native library. Unregister the cimgui assert handler with the native library. Class handling Dalamud core commands. This class handles CJK IME. The candidates. The selected imm component. The cursor position in screen coordinates. The associated viewport. The index of the first imm candidate in relation to the full list. The partial conversion from-range. The partial conversion to-range. The cursor offset in the composition string. The input mode icon from . Undo range for modifying the buffer while composition is in progress. Finalizes an instance of the class. Gets a value indicating whether Han(Chinese) input has been detected. Gets a value indicating whether Hangul(Korean) input has been detected. Gets a value indicating whether to display the cursor in input text. This also deals with blinking. Gets a value indicating whether to display partial conversion status. Gets a value indicating whether to draw. Looks for the characters inside and enables fonts accordingly. The string. Ported from imstb_textedit.h. Position of the text cursor within the string. Selection start point. selection start and end point in characters; if equal, no selection. Note that start may be less than or greater than end (e.g. when dragging the mouse, start is where the initial click was, and you can drag in either direction.) Each text field keeps its own insert mode state. To keep an app-wide insert mode, copy this value in/out of the app state. Page size in number of row. This value MUST be set to >0 for pageup or pagedown in multilines documents. This plugin implements all of the Dalamud interface separately, to allow for reloading of the interface and rapid prototyping. Gets the number of frames since Dalamud has loaded. Gets the controlling all Dalamud-internal windows. Gets or sets a value indicating whether the /xldev menu is open. Gets or sets a value indicating whether the plugin installer is open. Opens the . Opens the . Opens the . Opens the . The data kind to switch to after opening. Opens the dev menu bar. Opens the . Opens the . Opens the . Opens the on the plugin installed. Opens the on the specified page. The page of the installer to open. Opens the . Opens the on the specified tab. The tab of the settings to open. Opens the . Opens the . Opens the . Opens the . Opens the . Closes the . Toggles the . Toggles the . Toggles the . Toggles the . The data kind to switch to after opening. Toggles the dev menu bar. Toggles the . Toggles the . Toggles the . Toggles the . The page of the installer to open. Toggles the . Toggles the . Toggles the . Toggles the . Toggles the . Sets the current search text for the plugin installer. The search term. Sets the current search text for the settings window. The search term. Toggle the screen darkening effect used for the credits. Whether or not to turn the effect on. Private ImGui widgets for use inside Dalamud. Private ImGui widgets for use inside Dalamud. Private ImGui widgets for use inside Dalamud. Draw a "primary style" button. The text to show. True if the button was clicked. Draw a "secondary style" button. The text to show. True if the button was clicked. Draw a "picker" popup to chose a plugin. The ID of the popup. String holding the search input. Action to be called if a plugin is clicked. Function that should return true if a plugin should show as disabled. Function that should return true if a plugin should not appear in the list. An ImGuiID to open the popup. Configures the ImGui clipboard behaviour to work nicely with XIV. XIV uses '\r' for line endings and will truncate all text after a '\n' character. This means that copy/pasting multi-line text from ImGui to XIV will only copy the first line. ImGui uses '\n' for line endings and will ignore '\r' entirely. This means that copy/pasting multi-line text from XIV to ImGui will copy all the text without line breaks. To fix this we normalize all clipboard line endings entering/exiting ImGui to '\r\n' which works for both ImGui and XIV. This class manages interaction with the ImGui interface. This class manages interaction with the ImGui interface. This class manages interaction with the ImGui interface. Delegate for DXGISwapChain::on_present(UINT flags, const DXGI_PRESENT_PARAMETERS *params) in dxgi_swapchain.cpp. Pointer to an instance of DXGISwapChain, which happens to be an . An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants. Optional; DXGI present parameters. Delegate for . Microsoft Learn. Pointer to an instance of . An integer that specifies how to synchronize presentation of a frame with the vertical blank. An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants. A representing the result of the operation. Detour function for . Microsoft Learn. Pointer to an instance of . The number of buffers in the swap chain (including all back and front buffers). This number can be different from the number of buffers with which you created the swap chain. This number can't be greater than . Set this number to zero to preserve the existing number of buffers in the swap chain. You can't specify less than two buffers for the flip presentation model. The new width of the back buffer. If you specify zero, DXGI will use the width of the client area of the target window. You can't specify the width as zero if you called the method to create the swap chain for a composition surface. The new height of the back buffer. If you specify zero, DXGI will use the height of the client area of the target window. You can't specify the height as zero if you called the method to create the swap chain for a composition surface. A DXGI_FORMAT-typed value for the new format of the back buffer. Set this value to to preserve the existing format of the back buffer. The flip presentation model supports a more restricted set of formats than the bit-block transfer (bitblt) model. A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for swap-chain behavior. A representing the result of the operation. Represents DXGISwapChain in ReShade. The default font size, in points. The default font size, in pixels. This event gets called each frame to facilitate ImGui drawing. This event gets called when ResizeBuffers is called. Gets or sets an action that is executed right after fonts are rebuilt. Gets the default ImGui font.
Accessing this static property outside of the main thread is dangerous and not supported.
Gets an included FontAwesome icon font.
Accessing this static property outside of the main thread is dangerous and not supported.
Gets an included FontAwesome icon font with fixed width. Accessing this static property outside of the main thread is dangerous and not supported. Gets an included monospaced font.
Accessing this static property outside of the main thread is dangerous and not supported.
Gets the default font handle. Gets the icon font handle. Gets the icon font handle with fixed width. Gets the mono font handle. Gets or sets the pointer to ImGui.IO(), when it was last used. Gets the DX11 scene. Gets the D3D11 device instance. Gets the address handle to the main process window. Gets or sets a value indicating whether or not the game's cursor should be overridden with the ImGui cursor. Gets a value indicating whether the Dalamud interface ready to use. Gets or sets a value indicating whether or not Draw events should be dispatched. Gets a value indicating whether the main thread is executing . This still will be true even when queried off the main thread. Gets a value indicating the native handle of the game main window. Gets the font build task. Gets the number of calls to so far. The value increases even when Dalamud is hidden via "/xlui hide". does not. Dispose of managed and unmanaged resources. Sets up a deferred invocation of font rebuilding, before the next render frame. Enqueue a texture to be disposed at the end of the frame. The texture. Enqueue an to be disposed at the end of the frame. The disposable. Queues an action to be run before call. The action. A that resolves once is run. Queues a function to be run before call. The type of the return value. The function. A that resolves once is run. Queues an action to be run after call. The action. A that resolves once is run. Queues a function to be run after call. The type of the return value. The function. A that resolves once is run. Get video memory information. The currently used video memory, or null if not available. Clear font, style, and color stack. Dangerous, only use when you know no one else has something pushed they may try to pop. Toggle Windows 11 immersive mode on the game window. Value. Checks if the provided swap chain is the target that Dalamud should draw its interface onto, and initializes ImGui for drawing. The swap chain to test and initialize ImGui with if conditions are met. Flags passed to . An initialized instance of , or null if is not the main swap chain. Draws Dalamud to the given scene representing the ImGui context. The scene to draw to. Represents an instance of InstanceManager with scene ready for use. Initializes a new instance of the class. An instance of . Gets the associated InterfaceManager. Manage category filters for PluginInstallerWindow. First categoryId for tag based categories. Type of category group. UI group: dev mode only. UI group: installed plugins. UI group: plugins that can be installed. UI group: changelog of plugins. Type of category. All plugins. Plugins currently being tested. Plugins available for testing. Plugins that were hidden. Installed dev plugins. Icon tester. Changelogs for Dalamud. Changelogs for plugins. Change plugin profiles. Updateable plugins. Plugins tagged as "other". Plugins tagged as "jobs". Plugins tagged as "ui". Plugins tagged as "minigames". Plugins tagged as "inventory". Plugins tagged as "sound". Plugins tagged as "social". Plugins tagged as "utility". Gets the list of all known categories. Gets the list of all known UI groups. Gets or sets the current group kind. Gets information about currently selected group. Gets or sets the current category kind. Gets information about currently selected category. Gets a value indicating whether current group + category selection changed recently. Changes in Available group should be followed with , everything else can use . Gets a value indicating whether and are valid. Rebuild available categories based on currently available plugins. list of all available plugin manifests to install. Filters list of available plugins based on currently selected category. Resets . List of available plugins to install. Filtered list of plugins. Clears flag, indicating that all cached values about currently selected group + category have been updated. Sets category highlight based on list of plugins. Used for searching. List of plugins whose categories should be highlighted. Checks if category should be highlighted. CategoryKind to check. true if highlight is needed. Plugin installer category info. Unique Id number of category, tag match based should be greater of equal . Tag from plugin manifest to match. Initializes a new instance of the struct. Kind of the category. Tag to match. Function returning localized name of category. Condition to be checked when deciding whether this category should be shown. Conditions for categories. Check no conditions. Check if plugin testing is enabled. Check if there are any hidden plugins. Gets or sets the condition to be checked when rendering. Gets the name of category. Plugin installer UI group, a container for categories. Type of group. List of categories in container. Initializes a new instance of the struct. Type of group. Function returning localized name of category. List of category Ids to hardcode. Gets the name of UI group. ReShade interface. ReShade interface. ReShade interface. Supported events emitted by ReShade. Called after successful device creation, from: IDirect3D9::CreateDevice IDirect3D9Ex::CreateDeviceEx IDirect3DDevice9::Reset IDirect3DDevice9Ex::ResetEx D3D10CreateDevice D3D10CreateDevice1 D3D10CreateDeviceAndSwapChain D3D10CreateDeviceAndSwapChain1 D3D11CreateDevice D3D11CreateDeviceAndSwapChain D3D12CreateDevice glMakeCurrent vkCreateDevice Callback function signature: void (api::device *device) Called on device destruction, before: IDirect3DDevice9::Reset IDirect3DDevice9Ex::ResetEx IDirect3DDevice9::Release ID3D10Device::Release ID3D11Device::Release ID3D12Device::Release wglDeleteContext vkDestroyDevice Callback function signature: void (api::device *device) Called after successful command list creation, from: ID3D11Device::CreateDeferredContext ID3D11Device1::CreateDeferredContext1 ID3D11Device2::CreateDeferredContext2 ID3D11Device3::CreateDeferredContext3 ID3D12Device::CreateCommandList ID3D12Device4::CreateCommandList1 vkAllocateCommandBuffers Callback function signature: void (api::command_list *cmd_list) In case of D3D9, D3D10, D3D11 and OpenGL this is called during device initialization as well and behaves as if an implicit immediate command list was created. Called on command list destruction, before: ID3D11CommandList::Release ID3D12CommandList::Release vkFreeCommandBuffers Callback function signature: void (api::command_list *cmd_list) Called after successful command queue creation, from: ID3D12Device::CreateCommandQueue vkCreateDevice (for every queue associated with the device) Callback function signature: void (api::command_queue *queue) In case of D3D9, D3D10, D3D11 and OpenGL this is called during device initialization as well and behaves as if an implicit command queue was created. Called on command queue destruction, before: ID3D12CommandQueue::Release vkDestroyDevice (for every queue associated with the device) Callback function signature: void (api::command_queue *queue) Called after successful swap chain creation, from: IDirect3D9::CreateDevice (for the implicit swap chain) IDirect3D9Ex::CreateDeviceEx (for the implicit swap chain) IDirect3D9Device::CreateAdditionalSwapChain IDXGIFactory::CreateSwapChain IDXGIFactory2::CreateSwapChain(...) wglMakeCurrent wglSwapBuffers (after window was resized) vkCreateSwapchainKHR xrCreateSession In addition, called when swap chain is resized, after: IDirect3DDevice9::Reset (for the implicit swap chain) IDirect3DDevice9Ex::ResetEx (for the implicit swap chain) IDXGISwapChain::ResizeBuffers IDXGISwapChain3::ResizeBuffers1 Callback function signature: void (api::swapchain *swapchain) Called on swap chain creation, before: IDirect3D9::CreateDevice (for the implicit swap chain) IDirect3D9Ex::CreateDeviceEx (for the implicit swap chain) IDirect3D9Device::CreateAdditionalSwapChain IDirect3D9Device::Reset (for the implicit swap chain) IDirect3D9DeviceEx::ResetEx (for the implicit swap chain) IDXGIFactory::CreateSwapChain IDXGIFactory2::CreateSwapChain(...) IDXGISwapChain::ResizeBuffers IDXGISwapChain3::ResizeBuffers1 wglSetPixelFormat vkCreateSwapchainKHR Callback function signature: bool (api::swapchain_desc &desc, void *hwnd) To overwrite the swap chain description, modify desc in the callback and return , otherwise return . Called on swap chain destruction, before: IDirect3DDevice9::Release (for the implicit swap chain) IDirect3DSwapChain9::Release IDXGISwapChain::Release wglDeleteContext wglSwapBuffers (after window was resized) vkDestroySwapchainKHR xrDestroySession In addition, called when swap chain is resized, before: IDirect3DDevice9::Reset (for the implicit swap chain) IDirect3DDevice9Ex::ResetEx (for the implicit swap chain) IDXGISwapChain::ResizeBuffers IDXGISwapChain1::ResizeBuffers1 Callback function signature: void (api::swapchain *swapchain) Called after effect runtime initialization (which happens after swap chain creation or a swap chain buffer resize). Callback function signature: void (api::effect_runtime *runtime) Called when an effect runtime is reset or destroyed. Callback function signature: void (api::effect_runtime *runtime) Called after successful sampler creation from: ID3D10Device::CreateSamplerState ID3D11Device::CreateSamplerState ID3D12Device::CreateSampler vkCreateSampler Callback function signature: void (api::device *device, const api::sampler_desc &desc, api::sampler sampler) Is not called in D3D9 (since samplers are loose state there) or OpenGL. Called on sampler creation, before: ID3D10Device::CreateSamplerState ID3D11Device::CreateSamplerState ID3D12Device::CreateSampler ID3D12Device::CreateRootSignature vkCreateSampler Callback function signature: bool (api::device *device, api::sampler_desc &desc) To overwrite the sampler description, modify desc in the callback and return , otherwise return . Is not called in D3D9 (since samplers are loose state there) or OpenGL. Called on sampler destruction, before: ID3D10SamplerState::Release ID3D11SamplerState::Release glDeleteSamplers vkDestroySampler Callback function signature: void (api::device *device, api::sampler sampler) Is not called in D3D9 (since samplers are loose state there), D3D12 (since samplers are descriptor handles instead of objects there) or OpenGL. Called after successful resource creation from: IDirect3DDevice9::CreateVertexBuffer IDirect3DDevice9::CreateIndexBuffer IDirect3DDevice9::CreateTexture IDirect3DDevice9::CreateCubeTexture IDirect3DDevice9::CreateVolumeTexture IDirect3DDevice9::CreateRenderTargetSurface IDirect3DDevice9::CreateDepthStencilSurface IDirect3DDevice9::CreateOffscreenPlainSurface IDirect3DDevice9Ex::CreateRenderTargetSurfaceEx IDirect3DDevice9Ex::CreateDepthStencilSurfaceEx IDirect3DDevice9Ex::CreateOffscreenPlainSurfaceEx ID3D10Device::CreateBuffer ID3D10Device::CreateTexture1D ID3D10Device::CreateTexture2D ID3D10Device::CreateTexture2D ID3D11Device::CreateBuffer ID3D11Device::CreateTexture1D ID3D11Device::CreateTexture2D ID3D11Device::CreateTexture3D ID3D11Device3::CreateTexture2D ID3D11Device3::CreateTexture3D ID3D12Device::CreateCommittedResource ID3D12Device::CreatePlacedResource ID3D12Device::CreateReservedResource ID3D12Device4::CreateCommittedResource1 ID3D12Device4::CreateReservedResource1 glBufferData glBufferStorage glNamedBufferData glNamedBufferStorage glTexImage1D glTexImage2D glTexImage2DMultisample glTexImage3D glTexImage3DMultisample glCompressedTexImage1D glCompressedTexImage2D glCompressedTexImage3D glTexStorage1D glTexStorage2D glTexStorage2DMultisample glTexStorage3D glTexStorage3DMultisample glTextureStorage1D glTextureStorage2D glTextureStorage2DMultisample glTextureStorage3D glTextureStorage3DMultisample glRenderbufferStorage glRenderbufferStorageMultisample glNamedRenderbufferStorage glNamedRenderbufferStorageMultisample vkBindBufferMemory vkBindBufferMemory2 vkBindImageMemory vkBindImageMemory2 Callback function signature: void (api::device *device, const api::resource_desc &desc, const api::subresource_data *initial_data, api::resource_usage initial_state, api::resource resource) May be called multiple times with the same resource handle (whenever the resource is updated or its reference count is incremented). Called on resource creation, before: IDirect3DDevice9::CreateVertexBuffer IDirect3DDevice9::CreateIndexBuffer IDirect3DDevice9::CreateTexture IDirect3DDevice9::CreateCubeTexture IDirect3DDevice9::CreateVolumeTexture IDirect3DDevice9::CreateRenderTargetSurface IDirect3DDevice9::CreateDepthStencilSurface IDirect3DDevice9::CreateOffscreenPlainSurface IDirect3DDevice9Ex::CreateRenderTargetSurfaceEx IDirect3DDevice9Ex::CreateDepthStencilSurfaceEx IDirect3DDevice9Ex::CreateOffscreenPlainSurfaceEx ID3D10Device::CreateBuffer ID3D10Device::CreateTexture1D ID3D10Device::CreateTexture2D ID3D10Device::CreateTexture2D ID3D11Device::CreateBuffer ID3D11Device::CreateTexture1D ID3D11Device::CreateTexture2D ID3D11Device::CreateTexture3D ID3D11Device3::CreateTexture2D ID3D11Device3::CreateTexture3D ID3D12Device::CreateCommittedResource ID3D12Device::CreatePlacedResource ID3D12Device::CreateReservedResource ID3D12Device4::CreateCommittedResource1 ID3D12Device4::CreateReservedResource1 glBufferData glBufferStorage glNamedBufferData glNamedBufferStorage glTexImage1D glTexImage2D glTexImage2DMultisample glTexImage3D glTexImage3DMultisample glCompressedTexImage1D glCompressedTexImage2D glCompressedTexImage3D glTexStorage1D glTexStorage2D glTexStorage2DMultisample glTexStorage3D glTexStorage3DMultisample glTextureStorage1D glTextureStorage2D glTextureStorage2DMultisample glTextureStorage3D glTextureStorage3DMultisample glRenderbufferStorage glRenderbufferStorageMultisample glNamedRenderbufferStorage glNamedRenderbufferStorageMultisample vkCreateBuffer vkCreateImage Callback function signature: bool (api::device *device, api::resource_desc &desc, api::subresource_data *initial_data, api::resource_usage initial_state) To overwrite the resource description, modify desc in the callback and return , otherwise return . Called on resource destruction, before: IDirect3DResource9::Release ID3D10Resource::Release ID3D11Resource::Release ID3D12Resource::Release glDeleteBuffers glDeleteTextures glDeleteRenderbuffers vkDestroyBuffer vkDestroyImage Callback function signature: void (api::device *device, api::resource resource) Called after successful resource view creation from: IDirect3DDevice9::CreateTexture IDirect3DDevice9::CreateCubeTexture IDirect3DDevice9::CreateVolumeTexture ID3D10Device::CreateShaderResourceView ID3D10Device::CreateRenderTargetView ID3D10Device::CreateDepthStencilView ID3D10Device1::CreateShaderResourceView1 ID3D11Device::CreateShaderResourceView ID3D11Device::CreateUnorderedAccessView ID3D11Device::CreateRenderTargetView ID3D11Device::CreateDepthStencilView ID3D11Device3::CreateShaderResourceView1 ID3D11Device3::CreateUnorderedAccessView1 ID3D11Device3::CreateRenderTargetView1 ID3D12Device::CreateShaderResourceView ID3D12Device::CreateUnorderedAccessView ID3D12Device::CreateRenderTargetView ID3D12Device::CreateDepthStencilView glTexBuffer glTextureBuffer glTextureView vkCreateBufferView vkCreateImageView vkCreateAccelerationStructureKHR Callback function signature: void (api::device *device, api::resource resource, api::resource_usage usage_type, const api::resource_view_desc &desc, api::resource_view view) May be called multiple times with the same resource view handle (whenever the resource view is updated). Called on resource view creation, before: ID3D10Device::CreateShaderResourceView ID3D10Device::CreateRenderTargetView ID3D10Device::CreateDepthStencilView ID3D10Device1::CreateShaderResourceView1 ID3D11Device::CreateShaderResourceView ID3D11Device::CreateUnorderedAccessView ID3D11Device::CreateRenderTargetView ID3D11Device::CreateDepthStencilView ID3D11Device3::CreateShaderResourceView1 ID3D11Device3::CreateUnorderedAccessView1 ID3D11Device3::CreateRenderTargetView1 ID3D12Device::CreateShaderResourceView ID3D12Device::CreateUnorderedAccessView ID3D12Device::CreateRenderTargetView ID3D12Device::CreateDepthStencilView glTexBuffer glTextureBuffer glTextureView vkCreateBufferView vkCreateImageView vkCreateAccelerationStructureKHR Callback function signature: bool (api::device *device, api::resource resource, api::resource_usage usage_type, api::resource_view_desc &desc) To overwrite the resource view description, modify desc in the callback and return , otherwise return . Is not called in D3D9 (since resource views are tied to resources there). Called on resource view destruction, before: IDirect3DResource9::Release ID3D10View::Release ID3D11View::Release glDeleteTextures vkDestroyBufferView vkDestroyImageView vkDestroyAccelerationStructureKHR Callback function signature: void (api::device *device, api::resource_view view) Is not called in D3D12 (since resource views are descriptor handles instead of objects there). Called after: IDirect3DVertexBuffer9::Lock IDirect3DIndexBuffer9::Lock ID3D10Resource::Map ID3D11DeviceContext::Map ID3D12Resource::Map glMapBuffer glMapBufferRange glMapNamedBuffer glMapNamedBufferRange Callback function signature: void (api::device *device, api::resource resource, uint64_t offset, uint64_t size, api::map_access access, void **data) Called before: IDirect3DVertexBuffer9::Unlock IDirect3DIndexBuffer9::Unlock ID3D10Resource::Unmap ID3D11DeviceContext::Unmap ID3D12Resource::Unmap glUnmapBuffer glUnmapNamedBuffer Callback function signature: void (api::device *device, api::resource resource) Called after: IDirect3DSurface9::LockRect IDirect3DVolume9::LockBox IDirect3DTexture9::LockRect IDirect3DVolumeTexture9::LockBox IDirect3DCubeTexture9::LockRect ID3D10Resource::Map ID3D11DeviceContext::Map ID3D12Resource::Map Callback function signature: void (api::device *device, api::resource resource, uint32_t subresource, const api::subresource_box *box, api::map_access access, api::subresource_data *data) Called before: IDirect3DSurface9::UnlockRect IDirect3DVolume9::UnlockBox IDirect3DTexture9::UnlockRect IDirect3DVolumeTexture9::UnlockBox IDirect3DCubeTexture9::UnlockRect ID3D10Resource::Unmap ID3D11DeviceContext::Unmap ID3D12Resource::Unmap Callback function signature: void (api::device *device, api::resource resource, uint32_t subresource) Called before: ID3D10Device::UpdateSubresource ID3D11DeviceContext::UpdateSubresource glBufferSubData glNamedBufferSubData Callback function signature: bool (api::device *device, const void *data, api::resource resource, uint64_t offset, uint64_t size) To prevent this command from being executed, return , otherwise return . Destination resource will be in the state. Called before: ID3D10Device::UpdateSubresource ID3D11DeviceContext::UpdateSubresource glTexSubData1D glTexSubData2D glTexSubData3D glTextureSubData1D glTextureSubData2D glTextureSubData3D glCompressedTexSubData1D glCompressedTexSubData2D glCompressedTexSubData3D glCompressedTextureSubData1D glCompressedTextureSubData2D glCompressedTextureSubData3D Callback function signature: bool (api::device *device, const api::subresource_data &data, api::resource resource, uint32_t subresource, const api::subresource_box *box) To prevent this command from being executed, return , otherwise return . Destination resource will be in the state. Called after successful pipeline creation from: IDirect3DDevice9::CreateVertexShader IDirect3DDevice9::CreatePixelShader IDirect3DDevice9::CreateVertexDeclaration ID3D10Device::CreateVertexShader ID3D10Device::CreateGeometryShader ID3D10Device::CreateGeometryShaderWithStreamOutput ID3D10Device::CreatePixelShader ID3D10Device::CreateInputLayout ID3D10Device::CreateBlendState ID3D10Device::CreateDepthStencilState ID3D10Device::CreateRasterizerState ID3D10Device1::CreateBlendState1 ID3D11Device::CreateVertexShader ID3D11Device::CreateHullShader ID3D11Device::CreateDomainShader ID3D11Device::CreateGeometryShader ID3D11Device::CreateGeometryShaderWithStreamOutput ID3D11Device::CreatePixelShader ID3D11Device::CreateComputeShader ID3D11Device::CreateInputLayout ID3D11Device::CreateBlendState ID3D11Device::CreateDepthStencilState ID3D11Device::CreateRasterizerState ID3D11Device1::CreateBlendState1 ID3D11Device1::CreateRasterizerState1 ID3D11Device3::CreateRasterizerState2 ID3D12Device::CreateComputePipelineState ID3D12Device::CreateGraphicsPipelineState ID3D12Device2::CreatePipelineState ID3D12Device5::CreateStateObject ID3D12Device7::AddToStateObject ID3D12PipelineLibrary::LoadComputePipeline ID3D12PipelineLibrary::LoadGraphicsPipeline ID3D12PipelineLibrary1::LoadPipeline glLinkProgram vkCreateComputePipelines vkCreateGraphicsPipelines Callback function signature: void (api::device *device, api::pipeline_layout layout, uint32_t subobject_count, const api::pipeline_subobject *subobjects, api::pipeline pipeline) May be called multiple times with the same pipeline handle (whenever the pipeline is updated or its reference count is incremented). Called on pipeline creation, before: IDirect3DDevice9::CreateVertexShader IDirect3DDevice9::CreatePixelShader IDirect3DDevice9::CreateVertexDeclaration ID3D10Device::CreateVertexShader ID3D10Device::CreateGeometryShader ID3D10Device::CreateGeometryShaderWithStreamOutput ID3D10Device::CreatePixelShader ID3D10Device::CreateInputLayout ID3D10Device::CreateBlendState ID3D10Device::CreateDepthStencilState ID3D10Device::CreateRasterizerState ID3D10Device1::CreateBlendState1 ID3D11Device::CreateVertexShader ID3D11Device::CreateHullShader ID3D11Device::CreateDomainShader ID3D11Device::CreateGeometryShader ID3D11Device::CreateGeometryShaderWithStreamOutput ID3D11Device::CreatePixelShader ID3D11Device::CreateComputeShader ID3D11Device::CreateInputLayout ID3D11Device::CreateBlendState ID3D11Device::CreateDepthStencilState ID3D11Device::CreateRasterizerState ID3D11Device1::CreateBlendState1 ID3D11Device1::CreateRasterizerState1 ID3D11Device3::CreateRasterizerState2 ID3D12Device::CreateComputePipelineState ID3D12Device::CreateGraphicsPipelineState ID3D12Device2::CreatePipelineState ID3D12Device5::CreateStateObject glShaderSource vkCreateComputePipelines vkCreateGraphicsPipelines Callback function signature: bool (api::device *device, api::pipeline_layout layout, uint32_t subobject_count, const api::pipeline_subobject *subobjects) To overwrite the pipeline description, modify desc in the callback and return , otherwise return . Called on pipeline destruction, before: ID3D10VertexShader::Release ID3D10GeometryShader::Release ID3D10PixelShader::Release ID3D10InputLayout::Release ID3D10BlendState::Release ID3D10DepthStencilState::Release ID3D10RasterizerState::Release ID3D11VertexShader::Release ID3D11HullShader::Release ID3D11DomainShader::Release ID3D11GeometryShader::Release ID3D11PixelShader::Release ID3D11ComputeShader::Release ID3D11InputLayout::Release ID3D11BlendState::Release ID3D11DepthStencilState::Release ID3D11RasterizerState::Release ID3D12PipelineState::Release ID3D12StateObject::Release glDeleteProgram vkDestroyPipeline Callback function signature: void (api::device *device, api::pipeline pipeline) Is not called in D3D9. Called after successful pipeline layout creation from: ID3D12Device::CreateRootSignature vkCreatePipelineLayout Callback function signature: void (api::device *device, uint32_t param_count, const api::pipeline_layout_param *params, api::pipeline_layout layout) In case of D3D9, D3D10, D3D11 and OpenGL this is called during device initialization as well and behaves as if an implicit global pipeline layout was created. Called on pipeline layout creation, before: ID3D12Device::CreateRootSignature vkCreatePipelineLayout Callback function signature: bool (api::device *device, uint32_t &param_count, api::pipeline_layout_param *&params) Is not called in D3D9, D3D10, D3D11 or OpenGL. Called on pipeline layout destruction, before: ID3D12RootSignature::Release VkDestroyPipelineLayout Callback function signature: void (api::device *device, api::pipeline_layout layout) Called before: ID3D12Device::CopyDescriptors ID3D12Device::CopyDescriptorsSimple vkUpdateDescriptorSets Callback function signature: bool (api::device *device, uint32_t count, const api::descriptor_table_copy *copies) To prevent this command from being executed, return , otherwise return . Called before: ID3D12Device::CreateConstantBufferView ID3D12Device::CreateShaderResourceView ID3D12Device::CreateUnorderedAccessView ID3D12Device::CreateSampler vkUpdateDescriptorSets Callback function signature: bool (api::device *device, uint32_t count, const api::descriptor_table_update *updates) To prevent this command from being executed, return , otherwise return . Called after successful query heap creation from: ID3D12Device::CreateQueryHeap vkCreateQueryPool Callback function signature: void (api::device *device, api::query_type type, uint32_t size, api::query_heap heap) Called on query heap creation, before: ID3D12Device::CreateQueryHeap vkCreateQueryPool Callback function signature: bool (api::device *device, api::query_type type, uint32_t &size) Called on query heap destruction, before: ID3D12QueryHeap::Release vkDestroyQueryPool Callback function signature: void (api::device *device, api::query_heap heap) Called before: vkGetQueryPoolResults Callback function signature: bool (api::device *device, api::query_heap heap, uint32_t first, uint32_t count, void *results, uint32_t stride) Called after: ID3D12GraphicsCommandList::ResourceBarrier ID3D12GraphicsCommandList7::Barrier vkCmdPipelineBarrier vkCmdPipelineBarrier2 Callback function signature: void (api::command_list *cmd_list, uint32_t count, const api::resource *resources, const api::resource_usage *old_states, const api::resource_usage *new_states) Called before: ID3D12GraphicsCommandList4::BeginRenderPass vkCmdBeginRenderPass vkCmdBeginRenderPass2 vkCmdNextSubpass vkCmdNextSubpass2 vkCmdBeginRendering Callback function signature: void (api::command_list *cmd_list, uint32_t count, const api::render_pass_render_target_desc *rts, const api::render_pass_depth_stencil_desc *ds) The depth-stencil description argument is optional and may be (which indicates that no depth-stencil is used). Called before: ID3D12GraphicsCommandList4::EndRenderPass vkCmdEndRenderPass vkCmdEndRenderPass2 vkCmdNextSubpass vkCmdNextSubpass2 vkCmdEndRendering Callback function signature: void (api::command_list *cmd_list) Called after: IDirect3DDevice9::SetRenderTarget IDirect3DDevice9::SetDepthStencilSurface ID3D10Device::OMSetRenderTargets ID3D11DeviceContext::OMSetRenderTargets ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews ID3D12GraphicsCommandList::OMSetRenderTargets glBindFramebuffer Callback function signature: void (api::command_list *cmd_list, uint32_t count, const api::resource_view *rtvs, api::resource_view dsv) Called after: IDirect3DDevice9::SetVertexShader IDirect3DDevice9::SetPixelShader IDirect3DDevice9::SetVertexDeclaration IDirect3DDevice9::ProcessVertices ID3D10Device::VSSetShader ID3D10Device::GSSetShader ID3D10Device::PSSetShader ID3D10Device::IASetInputLayout ID3D10Device::OMSetBlendState ID3D10Device::OMSetDepthStencilState ID3D10Device::RSSetState ID3D11DeviceContext::VSSetShader ID3D11DeviceContext::HSSetShader ID3D11DeviceContext::DSSetShader ID3D11DeviceContext::GSSetShader ID3D11DeviceContext::PSSetShader ID3D11DeviceContext::CSSetShader ID3D11DeviceContext::IASetInputLayout ID3D11DeviceContext::OMSetBlendState ID3D11DeviceContext::OMSetDepthStencilState ID3D11DeviceContext::RSSetState ID3D12GraphicsCommandList::Reset ID3D12GraphicsCommandList::SetPipelineState ID3D12GraphicsCommandList4::SetPipelineState1 glUseProgram glBindVertexArray vkCmdBindPipeline Callback function signature: void (api::command_list *cmd_list, api::pipeline_stage stages, api::pipeline pipeline) Called after: IDirect3DDevice9::SetRenderState ID3D10Device::IASetPrimitiveTopology ID3D10Device::OMSetBlendState ID3D10Device::OMSetDepthStencilState ID3D11DeviceContext::IASetPrimitiveTopology ID3D11DeviceContext::OMSetBlendState ID3D11DeviceContext::OMSetDepthStencilState ID3D12GraphicsCommandList::IASetPrimitiveTopology ID3D12GraphicsCommandList::OMSetBlendFactor ID3D12GraphicsCommandList::OMSetStencilRef gl(...) vkCmdSetDepthBias vkCmdSetBlendConstants vkCmdSetStencilCompareMask vkCmdSetStencilWriteMask vkCmdSetStencilReference Callback function signature: void (api::command_list *cmd_list, uint32_t count, const api::dynamic_state *states, const uint32_t *values) Called after: IDirect3DDevice9::SetViewport IDirect3DDevice9::SetRenderTarget (implicitly updates the viewport) ID3D10Device::RSSetViewports ID3D11DeviceContext::RSSetViewports ID3D12GraphicsCommandList::RSSetViewports glViewport glViewportArrayv glViewportIndexedf glViewportIndexedfv vkCmdSetViewport Callback function signature: void (api::command_list *cmd_list, uint32_t first, uint32_t count, const api::viewport *viewports) Called after: IDirect3DDevice9::SetScissorRect ID3D10Device::RSSetScissorRects ID3D11DeviceContext::RSSetScissorRects ID3D12GraphicsCommandList::RSSetScissorRects glScissor glScissorArrayv glScissorIndexed glScissorIndexedv vkCmdSetScissor Callback function signature: void (api::command_list *cmd_list, uint32_t first, uint32_t count, const api::rect *rects) Called after: IDirect3DDevice9::SetVertexShaderConstantF IDirect3DDevice9::SetPixelShaderConstantF ID3D12GraphicsCommandList::SetComputeRoot32BitConstant ID3D12GraphicsCommandList::SetComputeRoot32BitConstants ID3D12GraphicsCommandList::SetGraphicsRoot32BitConstant ID3D12GraphicsCommandList::SetGraphicsRoot32BitConstants glUniform(...) vkCmdPushConstants Callback function signature: void (api::command_list *cmd_list, api::shader_stage stages, api::pipeline_layout layout, uint32_t layout_param, uint32_t first, uint32_t count, const void *values) Called after: IDirect3DDevice9::SetTexture ID3D10Device::VSSetSamplers ID3D10Device::VSSetShaderResources ID3D10Device::VSSetConstantBuffers ID3D10Device::GSSetSamplers ID3D10Device::GSSetShaderResources ID3D10Device::GSSetConstantBuffers ID3D10Device::PSSetSamplers ID3D10Device::PSSetShaderResources ID3D10Device::PSSetConstantBuffers ID3D11DeviceContext::VSSetSamplers ID3D11DeviceContext::VSSetShaderResources ID3D11DeviceContext::VSSetConstantBuffers ID3D11DeviceContext::HSSetSamplers ID3D11DeviceContext::HSSetShaderResources ID3D11DeviceContext::HSSetConstantBuffers ID3D11DeviceContext::DSSetSamplers ID3D11DeviceContext::DSSetShaderResources ID3D11DeviceContext::DSSetConstantBuffers ID3D11DeviceContext::GSSetSamplers ID3D11DeviceContext::GSSetShaderResources ID3D11DeviceContext::GSSetConstantBuffers ID3D11DeviceContext::PSSetSamplers ID3D11DeviceContext::PSSetShaderResources ID3D11DeviceContext::PSSetConstantBuffers ID3D11DeviceContext::CSSetSamplers ID3D11DeviceContext::CSSetShaderResources ID3D11DeviceContext::CSSetUnorderedAccessViews ID3D11DeviceContext::CSSetConstantBuffers ID3D12GraphicsCommandList::SetComputeRootConstantBufferView ID3D12GraphicsCommandList::SetGraphicsRootConstantBufferView ID3D12GraphicsCommandList::SetComputeRootShaderResourceView ID3D12GraphicsCommandList::SetGraphicsRootShaderResourceView ID3D12GraphicsCommandList::SetComputeRootUnorderedAccessView ID3D12GraphicsCommandList::SetGraphicsRootUnorderedAccessView glBindBufferBase glBindBufferRange glBindBuffersBase glBindBuffersRange glBindTexture glBindImageTexture glBindTextures glBindImageTextures glBindTextureUnit glBindMultiTextureEXT vkCmdPushDescriptorSetKHR Callback function signature: void (api::command_list *cmd_list, api::shader_stage stages, api::pipeline_layout layout, uint32_t layout_param, const api::descriptor_table_update &update) Called after: ID3D12GraphicsCommandList::SetComputeRootSignature ID3D12GraphicsCommandList::SetGraphicsRootSignature ID3D12GraphicsCommandList::SetComputeRootDescriptorTable ID3D12GraphicsCommandList::SetGraphicsRootDescriptorTable vkCmdBindDescriptorSets Callback function signature: void (api::command_list *cmd_list, api::shader_stage stages, api::pipeline_layout layout, uint32_t first, uint32_t count, const api::descriptor_table *tables) Called after: IDirect3DDevice9::SetIndices ID3D10Device::IASetIndexBuffer ID3D11DeviceContext::IASetIndexBuffer ID3D12GraphicsCommandList::IASetIndexBuffer glBindBuffer vkCmdBindIndexBuffer Callback function signature: void (api::command_list *cmd_list, api::resource buffer, uint64_t offset, uint32_t index_size) Called after: IDirect3DDevice9::SetStreamSource ID3D10Device::IASetVertexBuffers ID3D11DeviceContext::IASetVertexBuffers ID3D12GraphicsCommandList::IASetVertexBuffers glBindBuffer glBindVertexBuffer glBindVertexBuffers vkCmdBindVertexBuffers vkCmdBindVertexBuffers2 Callback function signature: void (api::command_list *cmd_list, uint32_t first, uint32_t count, const api::resource *buffers, const uint64_t *offsets, const uint32_t *strides) The strides argument is optional and may be . Called after: IDirect3DDevice9::ProcessVertices ID3D10Device::SOSetTargets ID3D11DeviceContext::SOSetTargets ID3D12GraphicsCommandList::SOSetTargets glBindBufferBase glBindBufferRange glBindBuffersBase glBindBuffersRange vkCmdBindTransformFeedbackBuffersEXT Callback function signature: void (api::command_list *cmd_list, uint32_t first, uint32_t count, const api::resource *buffers, const uint64_t *offsets, const uint64_t *max_sizes, const api::resource *counter_buffers, const uint64_t *counter_offsets) The counter arguments are optional and may be . Called before: IDirect3DDevice9::DrawPrimitive IDirect3DDevice9::DrawPrimitiveUP IDirect3DDevice9::ProcessVertices ID3D10Device::Draw ID3D10Device::DrawInstanced ID3D11DeviceContext::Draw ID3D11DeviceContext::DrawInstanced ID3D12GraphicsCommandList::DrawInstanced glDrawArrays glDrawArraysInstanced glDrawArraysInstancedBaseInstance glMultiDrawArrays vkCmdDraw Callback function signature: bool (api::command_list *cmd_list, uint32_t vertex_count, uint32_t instance_count, uint32_t first_vertex, uint32_t first_instance) To prevent this command from being executed, return , otherwise return . Called before: IDirect3DDevice9::DrawIndexedPrimitive IDirect3DDevice9::DrawIndexedPrimitiveUP ID3D10Device::DrawIndexed ID3D10Device::DrawIndexedInstanced ID3D11DeviceContext::DrawIndexed ID3D11DeviceContext::DrawIndexedInstanced ID3D12GraphicsCommandList::DrawIndexedInstanced glDrawElements glDrawElementsBaseVertex glDrawElementsInstanced glDrawElementsInstancedBaseVertex glDrawElementsInstancedBaseInstance glDrawElementsInstancedBaseVertexBaseInstance glMultiDrawElements glMultiDrawElementsBaseVertex vkCmdDrawIndexed Callback function signature: bool (api::command_list *cmd_list, uint32_t index_count, uint32_t instance_count, uint32_t first_index, int32_t vertex_offset, uint32_t first_instance) To prevent this command from being executed, return , otherwise return . Called before: ID3D11DeviceContext::Dispatch ID3D12GraphicsCommandList::Dispatch glDispatchCompute vkCmdDispatch Callback function signature: bool (api::command_list *cmd_list, uint32_t group_count_x, uint32_t group_count_y, uint32_t group_count_z) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList::DispatchMesh vkCmdDrawMeshTasksEXT Callback function signature: bool (api::command_list *cmd_list, uint32_t group_count_x, uint32_t group_count_y, uint32_t group_count_z) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList::DispatchRays vkCmdTraceRaysKHR Callback function signature: bool (api::command_list *cmd_list, api::resource raygen, uint64_t raygen_offset, uint64_t raygen_size, api::resource miss, uint64_t miss_offset, uint64_t miss_size, uint64_t miss_stride, api::resource hit_group, uint64_t hit_group_offset, uint64_t hit_group_size, uint64_t hit_group_stride, api::resource callable, uint64_t callable_offset, uint64_t callable_size, uint64_t callable_stride, uint32_t width, uint32_t height, uint32_t depth) To prevent this command from being executed, return , otherwise return . In case of D3D12 and Vulkan, the shader handle buffer handles may be zero with the buffers instead referred to via a device address passed in the related offset argument. Called before: ID3D11DeviceContext::DrawInstancedIndirect ID3D11DeviceContext::DrawIndexedInstancedIndirect ID3D11DeviceContext::DispatchIndirect ID3D12GraphicsCommandList::ExecuteIndirect glDrawArraysIndirect glDrawElementsIndirect glMultiDrawArraysIndirect glMultiDrawElementsIndirect glDispatchComputeIndirect vkCmdDrawIndirect vkCmdDrawIndexedIndirect vkCmdDispatchIndirect vkCmdTraceRaysIndirect2KHR vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectCountEXT Callback function signature: bool (api::command_list *cmd_list, api::indirect_command type, api::resource buffer, uint64_t offset, uint32_t draw_count, uint32_t stride) To prevent this command from being executed, return , otherwise return . Called before: IDirect3DDevice9::UpdateTexture IDirect3DDevice9::GetRenderTargetData ID3D10Device::CopyResource ID3D11DeviceContext::CopyResource ID3D12GraphicsCommandList::CopyResource Callback function signature: bool (api::command_list *cmd_list, api::resource source, api::resource dest) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. Called before: ID3D12GraphicsCommandList::CopyBufferRegion glCopyBufferSubData glCopyNamedBufferSubData vkCmdCopyBuffer vkCmdCopyBuffer2 Callback function signature: bool (api::command_list *cmd_list, api::resource source, uint64_t source_offset, api::resource dest, uint64_t dest_offset, uint64_t size) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. Called before: ID3D12GraphicsCommandList::CopyTextureRegion vkCmdCopyBufferToImage vkCmdCopyBufferToImage2 Callback function signature: bool (api::command_list *cmd_list, api::resource source, uint64_t source_offset, uint32_t row_length, uint32_t slice_height, api::resource dest, uint32_t dest_subresource, const api::subresource_box *dest_box) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. The subresource box argument is optional and may be (which indicates the entire subresource is referenced). Called before: IDirect3DDevice9::UpdateSurface IDirect3DDevice9::StretchRect ID3D10Device::CopySubresourceRegion ID3D11DeviceContext::CopySubresourceRegion ID3D12GraphicsCommandList::CopyTextureRegion glBlitFramebuffer glBlitNamedFramebuffer glCopyImageSubData glCopyTexSubImage1D glCopyTexSubImage2D glCopyTexSubImage3D glCopyTextureSubImage1D glCopyTextureSubImage2D glCopyTextureSubImage3D vkCmdBlitImage vkCmdBlitImage2 vkCmdCopyImage vkCmdCopyImage2 Callback function signature: bool (api::command_list *cmd_list, api::resource source, uint32_t source_subresource, const api::subresource_box *source_box, api::resource dest, uint32_t dest_subresource, const api::subresource_box *dest_box, api::filter_mode filter) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. The subresource box arguments are optional and may be (which indicates the entire subresource is used). Called before: ID3D12GraphicsCommandList::CopyTextureRegion vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer2 Callback function signature: bool (api::command_list *cmd_list, api::resource source, uint32_t source_subresource, const api::subresource_box *source_box, api::resource dest, uint64_t dest_offset, uint32_t row_length, uint32_t slice_height) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. The subresource box argument is optional and may be (which indicates the entire subresource is used). Called before: IDirect3DDevice9::StretchRect ID3D10Device::ResolveSubresource ID3D11DeviceContext::ResolveSubresource ID3D12GraphicsCommandList::ResolveSubresource ID3D12GraphicsCommandList1::ResolveSubresourceRegion glBlitFramebuffer glBlitNamedFramebuffer vkCmdResolveImage vkCmdResolveImage2 Callback function signature: bool (api::command_list *cmd_list, api::resource source, uint32_t source_subresource, const api::subresource_box *source_box, api::resource dest, uint32_t dest_subresource, int32_t dest_x, int32_t dest_y, int32_t dest_z, api::format format) To prevent this command from being executed, return , otherwise return . Source resource will be in the state. Destination resource will be in the state. The subresource box argument is optional and may be (which indicates the entire subresource is used). Called before: IDirect3DDevice9::Clear ID3D10Device::ClearDepthStencilView ID3D11DeviceContext::ClearDepthStencilView ID3D11DeviceContext1::ClearView (for depth-stencil views) ID3D12GraphicsCommandList::ClearDepthStencilView glClear glClearBufferfi glClearBufferfv glClearNamedFramebufferfi glClearNamedFramebufferfv vkCmdClearDepthStencilImage vkCmdClearAttachments Callback function signature: bool (api::command_list *cmd_list, api::resource_view dsv, const float *depth, const uint8_t *stencil, uint32_t rect_count, const api::rect *rects) To prevent this command from being executed, return , otherwise return . Resource will be in the state. One of the depth or stencil clear value arguments may be when the respective component is not cleared. Called before: IDirect3DDevice9::Clear IDirect3DDevice9::ColorFill ID3D10Device::ClearRenderTargetView ID3D11DeviceContext::ClearRenderTargetView ID3D11DeviceContext1::ClearView (for render target views) ID3D12GraphicsCommandList::ClearRenderTargetView glClear glClearBufferfv glClearNamedFramebufferfv vkCmdClearColorImage vkCmdClearAttachments Callback function signature: bool (api::command_list *cmd_list, api::resource_view rtv, const float color[4], uint32_t rect_count, const api::rect *rects) To prevent this command from being executed, return , otherwise return . Resources will be in the state. Called before: ID3D11DeviceContext::ClearUnorderedAccessViewUint ID3D12GraphicsCommandList::ClearUnorderedAccessViewUint Callback function signature: bool (api::command_list *cmd_list, api::resource_view uav, const uint32_t values[4], uint32_t rect_count, const api::rect *rects) To prevent this command from being executed, return , otherwise return . Resource will be in the state. Called before: ID3D11DeviceContext::ClearUnorderedAccessViewFloat ID3D11DeviceContext1::ClearView (for unordered access views) ID3D12GraphicsCommandList::ClearUnorderedAccessViewFloat Callback function signature: bool (api::command_list *cmd_list, api::resource_view uav, const float values[4], uint32_t rect_count, const api::rect *rects) To prevent this command from being executed, return , otherwise return . Resource will be in the state. Called before: ID3D10Device::GenerateMips ID3D11DeviceContext::GenerateMips glGenerateMipmap glGenerateTextureMipmap Callback function signature: bool (api::command_list *cmd_list, api::resource_view srv) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList::BeginQuery vkCmdBeginQuery vkCmdBeginQueryIndexedEXT Callback function signature: bool (api::command_list *cmd_list, api::query_heap heap, api::query_type type, uint32_t index) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList::EndQuery vkCmdEndQuery vkCmdEndQueryIndexedEXT vkCmdWriteTimestamp vkCmdWriteTimestamp2 Callback function signature: bool (api::command_list *cmd_list, api::query_heap heap, api::query_type type, uint32_t index) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList::ResolveQueryData vkCmdCopyQueryPoolResults Callback function signature: bool (api::command_list *cmd_list, api::query_heap heap, api::query_type type, uint32_t first, uint32_t count, api::resource dest, uint64_t dest_offset, uint32_t stride) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList4::CopyRaytracingAccelerationStructure vkCmdCopyAccelerationStructureKHR Callback function signature: bool (api::command_list *cmd_list, api::resource_view source, api::resource_view dest, api::acceleration_structure_copy_mode mode) To prevent this command from being executed, return , otherwise return . Called before: ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure vkCmdBuildAccelerationStructuresKHR Callback function signature: bool (api::command_list *cmd_list, api::acceleration_structure_type type, api::acceleration_structure_build_flags flags, uint32_t input_count, const api::acceleration_structure_build_input *inputs, api::resource scratch, uint64_t scratch_offset, api::resource_view source, api::resource_view dest, api::acceleration_structure_build_mode mode) To prevent this command from being executed, return , otherwise return . In case of D3D12 and Vulkan, the scratch buffer handle may be zero with the buffer instead referred to via a device address passed in the related offset argument. Scratch buffer will be in the resource state. Called before: ID3D12GraphicsCommandList::Reset vkBeginCommandBuffer Callback function signature: void (api::command_list *cmd_list) Is not called for immediate command lists (since they cannot be reset). Called before: ID3D11DeviceContext::FinishCommandList ID3D12GraphicsCommandList::Close vkEndCommandBuffer Callback function signature: void (api::command_list *cmd_list) Is not called for immediate command lists (since they cannot be closed). Called when a command list is submitted to a command queue (or an immediate command list is flushed), before: IDirect3DDevice9::EndScene ID3D10Device::Flush ID3D11DeviceContext::Flush ID3D11DeviceContext3::Flush1 ID3D12CommandQueue::ExecuteCommandLists glFlush vkQueueSubmit Callback function signature: void (api::command_queue *queue, api::command_list *cmd_list) Called when a secondary command list is executed on a primary command list, before: ID3D11DeviceContext::ExecuteCommandList ID3D12GraphicsCommandList::ExecuteBundle vkCmdExecuteCommands In addition, called after: ID3D11DeviceContext::FinishCommandList Callback function signature: void (api::command_list *cmd_list, api::command_list *secondary_cmd_list) Called before: IDirect3DDevice9::Present IDirect3DDevice9Ex::PresentEx IDirect3DSwapChain9::Present IDXGISwapChain::Present IDXGISwapChain3::Present1 ID3D12CommandQueueDownlevel::Present wglSwapBuffers vkQueuePresentKHR IVRCompositor::Submit xrEndFrame Callback function signature: void (api::command_queue *queue, api::swapchain *swapchain, const api::rect *source_rect, const api::rect *dest_rect, uint32_t dirty_rect_count, const api::rect *dirty_rects) The source and destination rectangle arguments are optional and may be (which indicates the swap chain is presented in its entirety). Called before: IDXGISwapChain::SetFullscreenState vkAcquireFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT Callback function signature: bool (api::swapchain *swapchain, bool fullscreen, void *hmonitor) To prevent the fullscreen state from being changed, return , otherwise return . Called after ReShade has rendered its overlay. Callback function signature: void (api::effect_runtime *runtime) Called right before ReShade effects are rendered. Callback function signature: void (api::effect_runtime *runtime, api::command_list *cmd_list, api::resource_view rtv, api::resource_view rtv_srgb) Called right after ReShade effects were rendered. Callback function signature: void (api::effect_runtime *runtime, api::command_list *cmd_list, api::resource_view rtv, api::resource_view rtv_srgb) Called right after all ReShade effects were reloaded. This occurs during effect runtime initialization or because the user pressed the "Reload" button in the overlay. Any , and handles are invalidated when this event occurs and need to be queried again. Callback function signature: void (api::effect_runtime *runtime) Called before a uniform variable is changed, with the new value. Callback function signature: bool (api::effect_runtime *runtime, api::effect_uniform_variable variable, const void *new_value, size_t new_value_size) To prevent the variable value from being changed, return , otherwise return . The new value has the data type reported by . The new value size is in bytes. Called before a technique is enabled or disabled, with the new state. Callback function signature: bool (api::effect_runtime *runtime, api::effect_technique technique, bool enabled) To prevent the technique state from being changed, return , otherwise return . Called between the ImGui::NewFrame and ImGui::EndFrame calls for the ReShade overlay. Can be used to perform custom Dear ImGui calls, but it is recommended to instead use to register a dedicated overlay. Callback function signature: void (api::effect_runtime *runtime) This is not called for effect runtimes in VR. Called after a screenshot was taken and saved to disk, with the path to the saved image file. Callback function signature: void (api::effect_runtime *runtime, const char *path) Called for each technique after it was rendered, usually between and . Callback function signature: void (api::effect_runtime *runtime, api::effect_technique technique, api::command_list *cmd_list, api::resource_view rtv, api::resource_view rtv_srgb) Called when all effects are about to be enabled or disabled. Callback function signature: bool (api::effect_runtime *runtime, bool enabled) To prevent the effects state from being changed, return , otherwise return . Called after a preset was loaded and applied. This occurs after effect reloading or when the user chooses a new preset in the overlay. Callback function signature: void (api::effect_runtime *runtime, const char *path) Called when the rendering order of loaded techniques is changed, with a handle array specifying the new order. Callback function signature: bool (api::effect_runtime *runtime, size_t count, api::effect_technique *techniques) To prevent the order from being changed, return , otherwise return . Called when the ReShade overlay is about to be opened or closed. Callback function signature: bool (api::effect_runtime *runtime, bool open, api::input_source source) To prevent the overlay state from being changed, return , otherwise return . Called when a uniform variable widget is added to the variable list in the overlay. Can be used to replace with custom one or add widgets for specific uniform variables. Callback function signature: bool (api::effect_runtime *runtime, api::effect_uniform_variable variable) To prevent the normal widget from being added to the overlay, return , otherwise return . Called when a technique is added to the technique list in the overlay. Can be used to replace with custom one or add widgets for specific techniques. Callback function signature: bool (api::effect_runtime *runtime, api::effect_technique technique) To prevent the normal widget from being added to the overlay, return , otherwise return . Finalizes an instance of the class. Delegate for . Current command queue. Type: api::command_queue. Current swap chain. Type: api::swapchain. Optional; source rectangle. May contain up to 1 element. Optional; target rectangle. May contain up to 1 element. Dirty rectangles. Delegate for . Reference to the ReShade runtime. Delegate for . Reference to the ReShade SwapChain wrapper. Delegate for . Reference to the ReShade SwapChain wrapper. Delegate for . Current command queue. Type: api::command_queue. Current swap chain. Type: api::swapchain. Optional; source rectangle. Optional; target rectangle. Number of dirty rectangles. Optional; dirty rectangles. Called on . Called on . Called on . Called on . Registers Dalamud as a ReShade addon. Initialized interface. true on success. ReShade effect runtime object. The vtable. Gets this object as a typed pointer. Address of this instance. This call is invalid if this object is not already fixed. Gets the native object. The native object. VTable of . Gets the active ReShade module. Gets all the detected ReShade modules. Gets a value indicating whether the loaded ReShade has signatures. ReShade without addon support is signed, but may not pass signature verification. Finds the address of DXGISwapChain::on_present in . Address of the function, or 0 if not found. Gets the name of the signer of a file that has a certificate embedded within, without verifying if the file has a valid signature. Path to the file. Name of the signer. Available handling modes for working with ReShade. Use the default method, whatever it is for the current Dalamud version. Unwrap ReShade from the swap chain obtained from the game. Register as a ReShade addon, and draw on event. Register as a ReShade addon, and draw on event. Hook DXGISwapChain::on_present(UINT flags, const DXGI_PRESENT_PARAMETERS *params) in dxgi_swapchain.cpp. Do not do anything special about it. ReShade will process Dalamud rendered stuff. Unwraps IUnknown wrapped by ReShade. Unwraps if it is wrapped by ReShade. [inout] The COM pointer to an instance of . A COM type that is or extends . true if peeled. Helper for dealing with swap chains. Describes how to hook methods. Hooks by rewriting the native bytecode. Hooks by providing an alternative vtable. Gets the game's active instance of IDXGISwapChain that is initialized. Address of the game's instance of IDXGISwapChain, or null if not available (yet.) Gets the vtable of . Determines if the given instance of IUnknown is the game device's swap chain. Object to check. Type of the object to check. true if the object is the game's swap chain. Wait for the game to have finished initializing the IDXGISwapChain. Make store address of unwrapped swap chain, if it was wrapped with ReShade. true if it was wrapped with ReShade. This class displays a debug window to inspect native addons. Initializes a new instance of the class. Renders this window. A class representing an , allowing it to be browsed within an ImGui window. Prints a table of AtkValues associated with a given addon. The addon to look up. Gets the name of the addon this tree represents. Gets the addon's pointer at the time this was created. Gets or sets a collection of trees representing nodes within this addon. Gets an instance of for the given addon name (or creates one if none are found). The tree can then be drawn within the Addon Inspector and browsed. The name of the addon. The for the named addon. Returns null if it does not exist, or if it is not at the expected address. Draws this AddonTree within a window. Checks whether a given exists somewhere within this 's associated (or any of its s). The node to check. true if the node was found. Checks whether the addon exists at the expected address. If the addon is null or has a new address, disposes this instance of . The addon, if successfully found. true if the addon is found. Gets or sets a collection of names for field offsets that have been documented in FFXIVClientStructs. Gets or sets the size of the addon according to its Attributes in FFXIVClientStructs. Class that prints the events table for a node, where applicable. Prints out each for a given node. The node to print events for. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A tree for an that can be printed and browsed via ImGui. As with the structs they represent, this class serves as the base class for other types of NodeTree. Sets up the table for the node editor, if the "Edit" checkbox is ticked. Draws each row in the node editor table. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. Gets or sets the this tree represents. Gets the containing this tree. Gets this node's type. Gets or sets the offset of this node within its parent Addon. Clears this NodeTree's popout window, if it has one. Gets an instance of (or one of its inheriting types) for the given node. If no instance exists, one is created. The node to get a tree for. The tree for the node's containing addon. An existing or newly-created instance of . Prints a list of NodeTrees for a given list of nodes. The address of the start of the list. The number of nodes in the list. The tree for the containing addon. Calls , but outputs the results as a collapsible tree. The address of the start of the list. The number of nodes in the list. The heading text of the tree. The tree for the containing addon. The text color of the heading. Prints this tree in the window. The index of the tree within its containing node or addon, if applicable. Whether the tree should default to being open. Prints out the tree's header text. If the given pointer is referenced with the addon struct, the offset within the addon will be printed. If the given pointer has been identified as a field within the addon struct, this method also prints that field's name. The pointer to check. The text color to use. The field offset of the pointer, if it was found in the addon. Builds a string that will serve as the header text for the tree. Indicates the node type, the number of direct children it contains, and its pointer. The resulting header text string. Prints any field names for the node. Prints the node struct. Prints all direct children of this node. Prints any specific fields pertaining to the specific type of node. Whether the "Edit" box is currently checked. Attempts to retrieve the field offset of the given pointer within the parent addon. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. Gets the part ID that this node uses. Gets the parts list that this node uses. Gets or sets a summary of pertinent data about this 's texture. Updated each time is called. Draws the texture inside the window, in either of two styles.

Full Image (0)presents the texture in full as a spritesheet.
Parts List (1)presents the individual parts as rows in a table.
Draws an outline of a given part within the texture. The part ID. The absolute position of the cursor onscreen. The relative position of the cursor within the window. The color of the outline. Whether this outline requires the user to mouse over it. A summary of pertinent data about a node's texture. The texture's partslist. The number of parts in the texture. The part ID the node is using. The texture itself. The type of texture. The texture's file path (if , otherwise this value is null). Whether this is a high-resolution texture. Initializes a new instance of the struct. The texture's parts list. The part ID being used by the node. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A struct representing the four offsets of an . Top offset. Left offset. Right offset. Bottom offset. Initializes a new instance of the struct. The top offset. The right offset. The bottom offset. The left offset. Initializes a new instance of the struct. The node using these offsets. Prints the offsets in ImGui. A tree for an that can be printed and browsed via ImGui. Initializes a new instance of the class. The node to create a tree for. The tree representing the containing addon. A struct allowing a node's animation timeline to be printed and browsed. Initializes a new instance of the struct. The node whose timelines are to be displayed. Prints out this timeline tree within a window. An interface for retrieving and printing the contents of a given column in an animation timeline table. Gets the column's name/heading. Gets the number of cells in the column. Gets the column's width. Calls this column's print function for a given row. The row number. A column within an animation timeline table, representing a particular KeyGroup. The value type of the KeyGroup. The values of each cell in the column. The method that should be used to format and print values in this KeyGroup. Initializes a new instance of the struct. The column's name/heading. The method that should be used to format and print values in this KeyGroup. The default print function, if none is specified. The value to print. Adds a value to this column. The value to add. A tool that enables the user to select UI elements within the inspector by mousing over them onscreen. Initializes a new instance of the class. The instance of this Element Selector belongs to. Gets or sets the results retrieved by the Element Selector. Gets or sets a value governing the highlighting of nodes when found via search. Gets or sets a value indicating whether the window has scrolled down to the position of the search result. Gets or sets a value indicating whether the mouseover UI is currently active. Draws the Element Selector and Address Search interface at the bottom of the sidebar. Draws the Element Selector's search output within the main window. An found by the Element Selector. The addon itself. A list of nodes discovered within this addon by the Element Selector. The calculated area of the addon's root node. Initializes a new instance of the struct. The addon found. A list for documenting nodes found within the addon. An found by the Element Selector. The node itself. A struct representing the perimeter of the node. A popout window for an . Initializes a new instance of the class. The AddonTree this popout will show. the window's name. A popout window for a . Initializes a new instance of the class. The node tree this window will show. The name of the window. A tool for browsing the contents and structure of UI elements. Initializes a new instance of the class. Gets a collection of instances, each representing an . Gets or sets a window system to handle any popout windows for addons or nodes. Gets or sets the name of the currently-selected . Clears all windows and s. Draws the UiDebug tool's interface and contents. All unit lists to check for addons. Gets the base address for all unit lists. The address, if found. A struct representing a unit list that can be browed in the sidebar. The index of the unit list. The name of the unit list. Initializes a new instance of the struct. The index of the unit list. The name of the unit list. A struct representing an addon that can be selected in the sidebar. The name of the addon. Whether the addon is visible. Initializes a new instance of the struct. The name of the addon. Whether the addon is visible. Miscellaneous ImGui tools used by . Prints field name and its value. The name of the field. The value of the field. Whether to enable click-to-copy. Prints a set of fields and their values. Tuples of fieldnames and values to display. Prints a text string representing a color, with a backdrop in that color. The color value. The text string to print. Colors the text itself either white or black, depending on the luminosity of the background color. Draws a tooltip that changes based on the cursor's x-position within the hovered item. The text for each section. true if the item is hovered. Draws a separator with some padding above and below. Governs whether to pad above, below, or both. The amount of padding. A struct representing the perimeter of an , accounting for all transformations. Initializes a new instance of the struct. The node to calculate the bounds of. Initializes a new instance of the struct, containing only a single given point. The point onscreen. The node used to calculate transformations. Draws the bounds onscreen. The color of line to use. The thickness of line to use. If there is only a single point to draw, it will be indicated with a circle and dot. Draws the bounds onscreen, filled in. The fill and border color. The border thickness. Checks whether the bounds contain a given point. The point to check. True if the point exists within the bounds. Window responsible for switching Dalamud beta branches. Initializes a new instance of the class. For major updates, an in-game Changelog window. Initializes a new instance of the class. TSM window. An instance of . An instance of . An instance of . An instance of . Check if a changelog should be shown. True if a changelog should be shown. Dispose this window. Color Demo Window to view custom ImGui colors. Initializes a new instance of the class. Component Demo Window to view custom ImGui components. Initializes a new instance of the class. The window that displays the Dalamud log file in-game. Initializes a new instance of the class. An instance of . Gets the queue where log entries that are not processed yet are stored. Add a log entry to the display. The line to add. The Serilog event associated with this line. Number of lines added to . Adds a line to the log list and the filtered log list accordingly. The new log entry to add. Number of lines added to . Determines if a log entry passes the user-specified filter. The entry to test. true if it passes the filter. Queues clearing the window of all log entries, before next call to . Queues filtering the log entries again, before next call to . Gets or sets the system responsible for generating this log entry. Generally will be a plugin's InternalName. Class responsible for drawing the data/debug window. Initializes a new instance of the class. Set the DataKind dropdown menu. Data kind name, can be lower and/or without spaces. Draw the window via ImGui. Useful functions for implementing data window widgets. Draws a text column, and make it copiable by clicking. Owner widget. String to display. Whether to align to right. Whether to offset to frame padding. Tester for . Class representing a date window entry. Gets the command strings that can be used to open the data window directly to this module. Gets the display name for this module. Gets or sets a value indicating whether this data window module is ready. Loads the necessary data for this data window module. Draws this data window module. Helper method to check if this widget should be activated by the input command. The command being run. true if this module should be activated by the input command. Widget for displaying addon inspector. Widget for displaying addon inspector. Debug widget for displaying AddonLifecycle data. Widget for displaying Addon Data. Widget to display resolved .text sigs. Widget for displaying aetheryte table. Widget for displaying AtkArrayData. Widget for displaying data about the Buddy List. Widget for displaying command info. Widget for displaying current character condition flags. Widget for displaying configuration info. Widget for displaying plugin data share modules. Widget for displaying dtr test. Widget for displaying the Fate Table. Widget for displaying fly text info. Widget to display FontAwesome Symbols. Widget for displaying gamepad info. Widget for testing game prebaked fonts. Widget for displaying job gauge data. Widget for displaying hook information. Data widget for browsing in-game icons. Widget for displaying ImGui test. Widget for displaying inventory data. Widget for displaying keyboard state. Widget to display market board events. Finalizes an instance of the class. Widget to display the current packets. Finalizes an instance of the class. Add known packet-name -> packet struct size associations here to copy the byte data for such packets. > The filter should find opCodes by number (decimal and hex) and name, if existing. Widget to display the Object Table. Widget for displaying information about the current party. Widget for testing plugin IPC systems. Widget for displaying test data for SE Font Symbols. Widget for displaying start info. Widget for displaying Addon Data. Widget for displaying start info. Widget for displaying target info. Widget for displaying task scheduler test. Widget for displaying texture test. Widget for displaying toast test. Widget for displaying all UI Colors from Lumina. Displays the full data of the selected ULD element. Gets all known ULD locations in the game based on a few signatures. Uld locations. Widget for displaying configuration info. Class responsible for drawing a notifier on screen that gamepad mode is active. Initializes a new instance of the class. Draws a light grey-ish, main-viewport-big filled rect in the background draw list alongside a text indicating gamepad mode. Window responsible for hitch settings. Initializes a new instance of the class. A cache for plugin icons and images. Maximum plugin image width. Maximum plugin image height. Maximum plugin icon width. Maximum plugin height. Gets the fallback empty texture. Gets the disabled plugin icon. Gets the outdated installable plugin icon. Gets the default plugin icon. Gets the plugin trouble icon overlay. Gets the devPlugin icon overlay. Gets the plugin update icon overlay. Gets the plugin installed icon overlay. Gets the third party plugin icon overlay. Gets the installed third party plugin icon overlay. Gets the core plugin icon. Clear the cache of downloaded icons. Try to get the icon associated with the internal name of a plugin. Uses the name within the manifest to search. The installed plugin, if available. The plugin manifest. If the plugin was third party sourced. Cached image textures, or an empty array. The time the icon was successfully downloaded. True if an entry exists, may be null if currently downloading. Try to get any images associated with the internal name of a plugin. Uses the name within the manifest to search. The installed plugin, if available. The plugin manifest. If the plugin was third party sourced. Cached image textures, or an empty array. True if the image array exists, may be empty if currently downloading. Record for a loaded icon. The texture of the icon. The time the icon was loaded at. Record for a loaded icon. The texture of the icon. The time the icon was loaded at. The texture of the icon. The time the icon was loaded at. Class representing a Dalamud changelog. Gets the date of the version. Gets the relevant version number. Gets the list of changes. Class representing the relevant changes. Gets the commit message. Gets the commit author. Gets the commit reference SHA. Gets the commit datetime. Class representing a Dalamud changelog. Initializes a new instance of the class. The changelog. Class responsible for managing Dalamud changelogs. Initializes a new instance of the class. The responsible PluginManager. Gets a list of all available changelogs. Reload the changelog list. A representing the asynchronous operation. API response for a history of plugin versions. Gets or sets the version history of the plugin. A single plugin version. Class representing a changelog entry. Gets the title of the entry. Gets the version this entry applies to. Gets the text of the entry. Gets the author of the changelog. Gets the date of the entry. Class representing a plugin changelog. Initializes a new instance of the class. The plugin manifest. The changelog history entry. Initializes a new instance of the class. The plugin manifest. Gets the respective plugin. Class responsible for drawing the plugin installer. Initializes a new instance of the class. An instance of class. An instance of . Open to the installer to the page specified by . The page of the installer to open. Toggle to the installer to the page specified by . The page of the installer to open. Clear the icon and image caches, forcing a fresh download. Sets the current search text and marks it as prefilled. The search term. Start a plugin install and handle errors visually. The manifest to install. Install the testing version. A continuation task that displays any errors received into the error modal. The previous task. An error message to be displayed. A value indicating whether to continue with the next task. ImGui widget used to manage profiles. Initializes a new instance of the class. The plugin installer. Draw this widget's contents. Reset the widget. This window displays plugin statistics for troubleshooting. Initializes a new instance of the class. Class used to draw the Dalamud profiler. Initializes a new instance of the class. Test setup for the Actor Table. Test setup AddonLifecycle Service. Initializes a new instance of the class. Test setup for the Aetheryte List. Test setup for Chat. Test setup for Condition. Tests for context menu. Test setup for the DutyState service class. Test setup for Territory Change. Initializes a new instance of the class. The territory to check for. Name to show. Test setup for the Fate Table. Test of GameConfig. Test setup for the Gamepad State. Test dedicated to handling of Access Violations. Test setup for the Hover events. Interface for test implementations. Gets the name of the test. Run the test step, once per frame it is active. The result of this frame, test is discarded once a result other than is returned. Clean up this test. Test setup for item payloads. Test setup for the Key State. Test setup for the login events. Test setup for the login events. Test setup for Lumina. ExcelRow to run test on. Whether or not the sheet is large. If it is large, the self test will iterate through the full sheet in one frame and benchmark the time taken. Test setup for Lumina. ExcelRow to run test on. Whether or not the sheet is large. If it is large, the self test will iterate through the full sheet in one frame and benchmark the time taken. Tests the various market board events. Tests for nameplates. Test setup for Party Finder events. Test setup for targets. Test setup for toasts. Test that waits N frames. Initializes a new instance of the class. Amount of frames to wait. Enum declaring result states of tests. Test was not ran. Test is waiting for completion. Test has failed. Test has passed. Window for the Self-Test logic. Initializes a new instance of the class. Basic, drawable settings entry. Gets or sets the public, searchable name of this settings entry. Gets or sets a value indicating whether or not this entry is valid. Gets or sets a value indicating whether or not this entry is visible. Gets the ID of this settings entry, used for ImGui uniqueness. Load this setting. Save this setting. Draw this setting control. Called after the draw function and when the style overrides are removed. Function to be called when the tab is opened. Function to be called when the tab is closed. The window that allows for general configuration of Dalamud itself. Initializes a new instance of the class. Open the settings window to the tab specified by . The tab of the settings window to open. Sets the current search text and marks it as prefilled. The search term. Disposes of managed and unmanaged resources. Window for the Dalamud style editor. Initializes a new instance of the class. Class responsible for drawing the main plugin window. Initializes a new instance of the class. An instance of . An instance of . An instance of . An instance of . An instance of . An instance of . An instance of . An instance of . An instance of . Gets or sets a value indicating whether drawing is allowed. A fluent ImGui glyph range builder. Clears the builder. this for method chaining. A builder is in cleared state on first use. Adds a single codepoint to the builder. The codepoint to add. this for method chaining. Unsupported codepoints will be ignored. Adds a unicode range to the builder. The unicode range to add. this for method chaining. Unsupported codepoints will be ignored. Adds unicode ranges to the builder. The 1st unicode range to add. The 2st unicode range to add. this for method chaining. Unsupported codepoints will be ignored. Adds unicode ranges to the builder. The 1st unicode range to add. The 2st unicode range to add. The 3rd unicode range to add. this for method chaining. Unsupported codepoints will be ignored. Adds unicode ranges to the builder. The 1st unicode range to add. The 2st unicode range to add. The 3rd unicode range to add. The 4th unicode range to add. Even more unicode ranges to add. this for method chaining. Unsupported codepoints will be ignored. Adds unicode ranges to the builder. Unicode ranges to add. this for method chaining. Unsupported codepoints will be ignored. Adds a range of characters to the builder. The first codepoint, inclusive. The last codepoint, inclusive. this for method chaining. Unsupported codepoints will be ignored. If is more than , then they will be swapped. Adds characters from a UTF-8 character sequence. The sequence. this for method chaining. Unsupported codepoints will be ignored. Adds characters from a UTF-8 character sequence. The sequence. this for method chaining. Unsupported codepoints will be ignored. Adds characters from a UTF-16 character sequence. The sequence. this for method chaining. Unsupported codepoints will be ignored. Adds characters from a UTF-16 character sequence. The sequence. this for method chaining. Unsupported codepoints will be ignored. Adds characters from a string. The string. this for method chaining. Unsupported codepoints will be ignored. Adds glyphs that are likely to be used in the given culture to the builder. A culture info. this for method chaining. Unsupported codepoints will be ignored. Unsupported culture will do nothing. Do make a PR if you need more. Adds glyphs that are likely to be used in the given culture to the builder. A language tag that will be used to locate the culture info. this for method chaining. See documentation for supported language tags. Builds the accumulated data into an ImGui glyph range. Whether to add the default fallback codepoints to the range. Whether to add the default ellipsis codepoints to the range. The built ImGui glyph ranges. Builds the accumulated data into an ImGui glyph range, exactly as specified. The built ImGui glyph ranges. Ensures that is not null, by creating one as necessary. An instance of . How to rebuild . Do not rebuild. Rebuild on new frame. Rebuild asynchronously. Build step for . Called before calling .
Expect to be passed.
When called from , this will be called before the delegates passed to .
Called after calling .
Expect to be passed.
When called from , this will be called after the delegates passed to ; you can do cross-font operations here.

This callback is not guaranteed to happen after , but it will never happen on its own.
Delegate to be called when a font needs to be built. A toolkit that may help you for font building steps. An implementation of may implement all of and .
Either use to identify the build step, or use and for routing.
Convenience function for building fonts through . Begins building a new array of containing ImGui glyph ranges. The chars. A new range builder. Begins building a new array of containing ImGui glyph ranges. The chars. A new range builder. Begins building a new array of containing ImGui glyph ranges. The chars. A new range builder. Begins building a new array of containing ImGui glyph ranges. The unicode range. A new range builder. Compiles given s into an array of containing ImGui glyph ranges. The chars. Add fallback codepoints to the range. Add ellipsis codepoints to the range. The compiled range. Compiles given s into an array of containing ImGui glyph ranges. The chars. Add fallback codepoints to the range. Add ellipsis codepoints to the range. The compiled range. Compiles given string into an array of containing ImGui glyph ranges. The string. Add fallback codepoints to the range. Add ellipsis codepoints to the range. The compiled range. Finds the corresponding in . that corresponds to the specified font . The toolkit. The font. The relevant config pointer, or empty config pointer if not found. Invokes if of is . The toolkit. The action. This, for method chaining. Invokes if of is . The toolkit. The action. toolkit, for method chaining. Specifies how should global font scale affect a font. Do the default handling. Dalamud will load the sufficienty large font that will accomodate the global scale, and stretch the loaded glyphs so that they look pixel-perfect after applying global scale on drawing. Note that bitmap fonts and game fonts will always look blurry if they're not in their original sizes. Do nothing with the font. Dalamud will load the font with the size that is exactly as specified. On drawing, the font will look blurry due to stretching. Intended for use with custom scale handling. Stretch the glyphs of the loaded font by the inverse of the global scale. On drawing, the font will always render exactly as the requested size without blurring, as long as and do not affect the scale any further. Note that bitmap fonts and game fonts will always look blurry if they're not in their original sizes. Wrapper for .
Not intended for plugins to implement.
Event to be called on build step changes.
is meaningless for this event.
Event fired when a font rebuild operation is recommended.
This event will be invoked from the main thread.

Reasons for the event include changes in and initialization of new associated font handles.
You should call or if is not set to true.
Avoid calling here; it will block the main thread.
Gets the name of the atlas. For logging and debugging purposes. Gets a value how the atlas should be rebuilt when the relevant Dalamud Configuration changes. Gets the font atlas. Might be empty. Gets the task that represents the current font rebuild state. Gets a value indicating whether there exists any built atlas, regardless of . Gets a value indicating whether this font atlas is under the effect of global scale. Suppresses automatically rebuilding fonts for the scope. An instance of that will release the suppression. Use when you will be creating multiple new handles, and want rebuild to trigger only when you're done doing so. This function will effectively do nothing, if is set to . using (atlas.SuppressBuild()) { this.font1 = atlas.NewGameFontHandle(...); this.font2 = atlas.NewDelegateFontHandle(...); } Creates a new from game's built-in fonts. Font to use. Handle to a font that may or may not be ready yet. When called during and alike. Move the font handle creating code outside those handlers, and only initialize them once. Call on a previous font handle if you're replacing one. This function does not throw. will be populated instead, if the build procedure has failed. can be used regardless of the state of the font handle. Creates a new IFontHandle using your own callbacks. Callback for . Handle to a font that may or may not be ready yet. When called during and alike. Move the font handle creating code outside those handlers, and only initialize them once. Call on a previous font handle if you're replacing one. Consider calling to support glyphs that are not supplied by the game by default; this mostly affects Chinese and Korean language users. Consider calling to support glyphs that are not supplied by the game by default; this mostly affects Chinese and Korean language users. This function does not throw, even if would throw exceptions. Instead, if it fails, the returned handle will contain an property containing the exception happened during the build process. can be used even if the build process has not been completed yet or failed. On initialization: this.fontHandle = atlas.NewDelegateFontHandle(e => e.OnPreBuild(tk => { var config = new SafeFontConfig { SizePx = UiBuilder.DefaultFontSizePx }; config.MergeFont = tk.AddFontFromFile(@"C:\Windows\Fonts\comic.ttf", config); tk.AddGameSymbol(config); tk.AddExtraGlyphsForDalamudLanguage(config); // optionally do the following if you have to add more than one font here, // to specify which font added during this delegate is the final font to use. tk.Font = config.MergeFont; })); // or this.fontHandle = atlas.NewDelegateFontHandle(e => e.OnPreBuild(tk => tk.AddDalamudDefaultFont(36)));
On use: using (this.fontHandle.Push()) ImGui.TextUnformatted("Example");
Queues rebuilding fonts, on the main thread.
Note that would not necessarily get changed from calling this function.
If is . Using this method will block the main thread on rebuilding fonts, effectively calling from the main thread. Consider migrating to .
Rebuilds fonts immediately, on the current thread. If is . Rebuilds fonts asynchronously, on any thread. The task. If is . Common stuff for and .
Not intended for plugins to implement.
Gets or sets the font relevant to the call. Gets the current scale this font atlas is being built with. Gets a value indicating whether the current build operation is asynchronous. Gets the current build step. Gets the font atlas being built. Gets the wrapper for of .
This does not need to be disposed. Calling does nothing.-
Modification of this vector may result in undefined behaviors.
Queues an item to be disposed after the native atlas gets disposed, successful or not. Disposable type. The disposable. The same . Queues an item to be disposed after the native atlas gets disposed, successful or not. The gc handle. The same . Queues an item to be disposed after the native atlas gets disposed, successful or not. The action to run on dispose. Gets the instance of corresponding to from . The font handle. The corresonding , or default if not found. Toolkit for use when the build state is .
Not intended for plugins to implement.
Stores a texture to be managed with the atlas. The texture wrap. Dispose the wrap on error. The texture index. Fits a font to a fixed 1:1 ratio adjusting glyph positions horizontally and vertically to fit within font size boundaries. The font to fit. Whether to call target.BuildLookupTable(). Copies glyphs across fonts, in a safer way.
If the font does not belong to the current atlas, this function is a no-op.
Source font. Target font. Whether to copy missing glyphs only. Whether to call target.BuildLookupTable(). Low codepoint range to copy. High codepoing range to copy.
Calls , with some fixups. The font. Toolkit for use when the build state is .
Not intended for plugins to implement.

After returns, either must be set, or at least one font must have been added to the atlas using one of AddFont... functions.
Queues an item to be disposed after the whole build process gets complete, successful or not. Disposable type. The disposable. The same . Queues an item to be disposed after the whole build process gets complete, successful or not. The gc handle. The same . Queues an item to be disposed after the whole build process gets complete, successful or not. The action to run on dispose. Sets the scaling mode for the given font. The font, returned from and alike. Note that property is not guaranteed to be automatically updated upon calling font adding functions. Pass the return value from font adding functions, not property. The scaling mode. . Gets the scaling mode for the given font. The font. The scaling mode. Registers a function to be run after build. The action to run. Adds a font from memory region allocated using .
It WILL crash if you try to use a memory pointer allocated in some other way.
Do NOT call on the once this function has been called, unless is set and the function has thrown an error.
Memory address for the data allocated using . The size of the font file.. The font config. Free if an exception happens. A debug tag. The newly added font.
Adds a font from memory region allocated using .
It WILL crash if you try to use a memory pointer allocated in some other way.
Do NOT call on the once this function has been called, unless is set and the function has thrown an error.
Memory address for the data allocated using . The size of the font file.. The font config. Free if an exception happens. A debug tag. The newly added font.
Adds a font from a file. The file path to create a new font from. The font config. The newly added font. Adds a font from a stream. The stream to create a new font from. The font config. Dispose when this function returns or throws. A debug tag. The newly added font. Adds a font from memory. The span to create from. The font config. A debug tag. The newly added font. Adds the default font known to the current font atlas.

Includes and .
As this involves adding multiple fonts, calling this function will set as the return value of this function, if it was empty before.
Font size in pixels. If a negative value is supplied, (. * ) will be used as the font size. Specify -1 to use the default font size. The glyph ranges. Use .ToGlyphRange to build. A font returned from .
Adds a font that is shipped with Dalamud.

Note: if game symbols font file is requested but is unavailable, then it will take the glyphs from game's built-in fonts, and everything in will be ignored but , , and .
The font type. The font config. The added font.
Same with (, ...), but using only FontAwesome icon ranges.
will be ignored.
The font config. The added font.
Adds the game's symbols into the provided font.
will be ignored.
If the game symbol font file is unavailable, only will be honored.
The font config. The added font.
Adds the game glyphs to the font. The font style. The glyph ranges. The font to merge to. If empty, then a new font will be created. The added font. Adds glyphs from the Windows default font for the given culture info into the provided font. The culture info. The font config. If is not set, then will be used as the target. If that is empty too, then it will do nothing. The font weight, in range from 1 to 1000. 400 is regular(normal). The font stretch, in range from 1 to 9. 5 is medium(normal). The font style, in range from 0 to 2. 0 is normal. May do nothing at all if is unsupported by Dalamud font handler. See Microsoft Learn for the fonts. Adds glyphs of extra languages into the provided font, depending on Dalamud Configuration.
will be ignored.
The font config. If is not set, then will be used as the target. If that is empty too, then it will do nothing.
Represents a reference counting handle for fonts.
Not intended for plugins to implement.
Delegate for . The relevant font handle. The locked font for this font handle, locked during the call of this delegate. Called when the built instance of has been changed.
This event can be invoked outside the main thread.
Gets the load exception, if it failed to load. Otherwise, it is null. Gets a value indicating whether this font is ready for use. Use directly if you want to keep the current ImGui font if the font is not ready.
Alternatively, use to wait for this property to become true.
Locks the fully constructed instance of corresponding to the this , for use in any thread.
Modification of the font will exhibit undefined behavior if some other thread also uses the font.
An instance of that must be disposed after use. Calling . will not unlock the locked by this function. If is false.
Pushes the current font into ImGui font stack, if available.
Use to access the current font.
You may not access the font once you dispose this object.
A disposable object that will pop the font on dispose. If called outside of the main thread. This function uses , and may do extra things. Use or to undo this operation. Do not use . Push a font with `using` clause. using (fontHandle.Push()) ImGui.TextUnformatted("Test"); Push a font with a matching call to . fontHandle.Push(); ImGui.TextUnformatted("Test 2"); fontHandle.Pop(); Push a font between two choices. using ((someCondition ? myFontHandle : dalamudPluginInterface.UiBuilder.MonoFontHandle).Push()) ImGui.TextUnformatted("Test 3");
Pops the font pushed to ImGui using , cleaning up any extra information as needed. Waits for to become true. A task containing this . The wrapper for , guaranteeing that the associated data will be available as long as this struct is not disposed.
Not intended for plugins to implement.
Gets the associated . Creates a new instance of with an additional reference to the owner. The new locked instance. A font handle representing a user-callback generated font. Initializes a new instance of the class. An instance of . Callback for . Gets the function to be called on build step changes. Manager for s. Initializes a new instance of the class. The name of the owner atlas. Substance from . Initializes a new instance of the class. The manager. The data root. The relevant handles. Gets the relevant handles. Standalone font atlas. Factory for the implementation of . Standalone font atlas. Implementations for and . Initializes a new instance of the class. An instance of . New atlas. An instance of . Specify whether the current build operation is an asynchronous one. Gets the font scale modes. Gets or sets a value indicating whether to override configuration for . Gets the default font ID. Gets the service instance of . Gets the service instance of .
may not yet be available.
Gets the service instance of . Gets the async task for inside . Gets the default glyph ranges (glyph ranges of ). Gets a value indicating whether game symbol font file is available. Creates a new instance of a class that implements the interface. Name of atlas, for debugging and logging purposes. Specify how to auto rebuild. Whether the fonts in the atlas is global scaled. The owner plugin, if any. The new font atlas. Adds the font from Dalamud Assets. The toolkitPostBuild. The font. The font config. The address and size. Gets the for the . The font family and size. The . Fallback codepoints for ImFont. Ellipsis codepoints for ImFont. Marker for tasks on whether it's being called inside a font build cycle. If set, disables concurrent font build operation. Initializes a new instance of the class. The factory. Name of atlas, for debugging and logging purposes. Specify how to auto rebuild. Whether the fonts in the atlas are under the effect of global scale. The owner plugin, if any. Finalizes an instance of the class. Gets the owner plugin, if any. Default implementation for . Initializes a new instance of the class. An instance of . Event to be called on the first call. Gets the associated . When the object has already been disposed. Invokes . The font, locked during the call of . Obtains an instance of corresponding to this font handle, to be released after rendering the current frame. The font pointer, or default if unavailble. Behavior is undefined on access outside the main thread. Attempts to lock the fully constructed instance of corresponding to the this , for use in any thread.
Modification of the font will exhibit undefined behavior if some other thread also uses the font.
The error message, if any. An instance of that must be disposed after use on success; null with populated on failure.
Implementation for . If true, then the function is being called from . A font handle that uses the game's built-in fonts, optionally with some styling. The smallest value of . The largest value of . Initializes a new instance of the class. An instance of . Font to use. Provider for for `common/font/fontNN.tex`. Creates the for the .
Dispose after use.
The font family and size. The view. Dispose this after use..
Gets the number of font textures. Format of .tex path. The number of textures. Gets the for the given index of a font. Format of .tex path. The index of .tex file. The . Gets a new reference of the font texture. Format of .tex path. Texture index. The texture. Gets the font style. Manager for s. Initializes a new instance of the class. The name of the owner atlas. An instance of . Gets an instance of . Substance from . Initializes a new instance of the class. The manager. The data root. The relevant handles. The game font styles. Gets the relevant handles. Attaches game symbols to the given font. If font is null, it will be created. The toolkitPostBuild. The font to attach to. The game font style. The intended glyph ranges. if it is not empty; otherwise a new font. Creates or gets a relevant for the given . The game font style. The toolkitPostBuild. The font. Creates a new template font. The toolkitPostBuild. The size of the font. The font. Manager for . Gets the name of the font handle manager. For logging and debugging purposes. Gets or sets the active font handle substance. Decrease font reference counter. Handle being released. Creates a new substance of the font atlas. The data root. The new substance. Substance of a font. Gets the data root relevant to this instance of . Gets the manager relevant to this instance of . Gets the relevant handles. Gets the font. The handle to get from. Corresponding font or null. Gets the exception happened while loading for the font. The handle to get from. Corresponding font or null. Called before call. The toolkit. Called between and calls.
Any further modification to will result in undefined behavior.
The toolkit.
Called after call. The toolkit. The implementation for . Initializes a new instance of the class. Ownership of reference of is transferred. The contained font. The owner. The rented instance of . Finalizes an instance of the class. Reusable font push/popper. Pushes the font, and return an instance of . The -private stack. The font pointer being pushed. The rented instance of . Deals with TrueType. Deals with TrueType. Deals with TrueType. Deals with TrueType. Deals with TrueType. Deals with TrueType. Deals with TrueType. Checks whether the given will fail in , and throws an appropriate exception if it is the case. The font config. Enumerates through horizontal pair adjustments of a kern and gpos tables. The font config. The enumerable of pair adjustments. Distance values need to be multiplied by font size in pixels. Managed version of , to avoid unnecessary heap allocation and use of unsafe blocks. The raw config. Initializes a new instance of the struct. Initializes a new instance of the struct, copying applicable values from an existing instance of . Config to copy from. Gets or sets the index of font within a TTF/OTF file. Gets or sets the desired size of the new font, in pixels.
Effectively, this is the line height.
Value is tied with .
Gets or sets the desired size of the new font, in points.
Effectively, this is the line height.
Value is tied with .
Gets or sets the horizontal oversampling pixel count.
Rasterize at higher quality for sub-pixel positioning.
Note the difference between 2 and 3 is minimal so you can reduce this to 2 to save memory.
Read https://github.com/nothings/stb/blob/master/tests/oversample/README.md for details.
Gets or sets the vertical oversampling pixel count.
Rasterize at higher quality for sub-pixel positioning.
This is not really useful as we don't use sub-pixel positions on the Y axis.
Gets or sets a value indicating whether to align every glyph to pixel boundary.
Useful e.g. if you are merging a non-pixel aligned font with the default font.
If enabled, you can set and to 1.
Gets or sets the extra spacing (in pixels) between glyphs.
Only X axis is supported for now.
Effectively, it is the letter spacing.
Gets or sets the offset all glyphs from this font input.
Use this to offset fonts vertically when merging multiple fonts.
Gets or sets the glyph ranges, which is a user-provided list of Unicode range. Each range has 2 values, and values are inclusive.
The list must be zero-terminated.
If empty or null, then all the glyphs from the font that is in the range of UCS-2 will be added.
Gets or sets the minimum AdvanceX for glyphs.
Set only to align font icons.
Set both / to enforce mono-space font.
Gets or sets the maximum AdvanceX for glyphs. Gets or sets a value that either brightens (>1.0f) or darkens (<1.0f) the font output.
Brightening small fonts may be a good workaround to make them more readable.
Gets or sets the gamma value for fonts. Gets or sets a value explicitly specifying unicode codepoint of the ellipsis character.
When fonts are being merged first specified ellipsis will be used.
Gets or sets the desired name of the new font. Names longer than 40 bytes will be partially lost. Gets or sets the desired font to merge with, if set. Throws with appropriate messages, if this has invalid values. Superclass for all versions of the Dalamud style model. Gets or sets the name of the style model. Gets or sets class representing Dalamud-builtin . Gets or sets version number of this model. Get a StyleModel based on the current Dalamud style, with the current version. The current style. Get the current style model, as per configuration. The current style, as per configuration. Get an enumerable of all saved styles. Enumerable of saved styles. Deserialize a style model. The serialized model. The deserialized model. Thrown in case the version of the model is not known. [TEMPORARY] Transfer old non-polymorphic style models to the new format. Serialize this style model. Serialized style model as string. Thrown when the version of the style model is unknown. Apply this style model to ImGui. Push this StyleModel into the ImGui style/color stack. Pop this style model from the ImGui style/color stack. Push a style var. Style kind. Style var. Push a style var. Style kind. Style var. Push a style color. Color kind. Color value. Indicate that you have pushed. Version one of the Dalamud style model. Initializes a new instance of the class. Gets the standard Dalamud look. Gets the standard Dalamud look. Gets the version prefix for this version. Gets or sets a dictionary mapping ImGui color names to colors. Get a instance via ImGui. The newly created instance. Apply this StyleModel via ImGui. Extension methods for . Checks if two instances of point to a same underlying resource. The resource 1. The resource 2. true if both instances point to a same underlying resource. Represents a lookup for a game icon. Initializes a new instance of the struct. The icon ID. Whether the HQ icon is requested, where HQ is in the context of items. Whether the high-resolution icon is requested. The language of the icon to load. Gets the icon ID. Gets a value indicating whether the HQ icon is requested, where HQ is in the context of items. Gets a value indicating whether the high-resolution icon is requested. Gets the language of the icon to load. null will use the active game language. If the specified resource does not have variants per language, the language-neutral texture will be used. Represents an available bitmap codec. Gets the friendly name for the codec. Gets the representing the container. Gets the suggested file extensions. Gets the corresponding mime types. Describes how to take a texture of an existing ImGui viewport. Describes how to take a texture of an existing ImGui viewport. Gets or sets the ImGui Viewport ID to capture. Use from to take the main viewport, where the game renders to. Gets or sets a value indicating whether to automatically update the texture. Enabling this will also update as needed. Gets or sets a value indicating whether to get the texture before rendering ImGui. It probably makes no sense to enable this unless points to the main viewport. Gets or sets a value indicating whether to keep the transparency. If true, then the alpha channel values will be filled with 1.0. Keep in mind that screen captures generally do not need alpha values. Gets or sets the left top coordinates relative to the size of the source texture. Coordinates should be in range between 0 and 1. Gets or sets the right bottom coordinates relative to the size of the source texture. Coordinates should be in range between 0 and 1. If set to , then it will be interpreted as , to accommodate the use of default value of this record struct. Gets the effective value of . Checks the properties and throws an exception if values are invalid. Represents an available bitmap codec. Initializes a new instance of the class. The source codec info. Ownership is not transferred. Gets the friendly name for the codec. Gets the representing the container. Gets the suggested file extensions. Gets the corresponding mime types. Exception thrown when an icon could not be found. Initializes a new instance of the class. The lookup that was used to find the icon. Represents a sharable texture, based on a file on the system filesystem. Initializes a new instance of the class. The path. Creates a new placeholder instance of . The path. The new instance. Only to be used from or . Represents a sharable texture, based on a file in game resources. Initializes a new instance of the class. The path. Creates a new placeholder instance of . The path. The new instance. Only to be used from . Represents a sharable texture, based on a manifest texture obtained from . Initializes a new instance of the class. The assembly containing manifest resources. The case-sensitive name of the manifest resource being requested. Creates a new placeholder instance of . The arguments to pass to the constructor. The new instance. Only to be used from . Represents a texture that may have multiple reference holders (owners). Initializes a new instance of the class. Name of the underlying resource. The new instance is a placeholder instance. Gets a wrapper for this instance which disables resource reference management. Gets the instance ID. Debug use only. Gets the remaining time for self reference in milliseconds. Debug use only. Gets the reference count. Debug use only. Gets the source path. Debug use only. Gets or sets the underlying texture wrap. Gets a value indicating whether the content has been queried, i.e. or is called. Gets a cancellation token for cancelling load. Intended to be called from implementors' constructors and . Releases self-reference, if conditions are met. If set to true, the self-reference will be released immediately. Number of the new reference count that may or may not have changed. Adds a plugin to , in a thread-safe way. The plugin to add. Cleans up this instance of . Attempts to restore the reference to this texture. Creates the texture immediately. The cancellation token. The task resulting in a loaded texture. This function is intended to be called from texture load scheduler. See and note that this function is being used as the callback from . , but without checking for thread. A wrapper around , to prevent external consumers from mistakenly calling or . Initializes a new instance of the class. The actual instance. Same with , but with a custom implementation of . Initializes a new instance of the class. The inner wrap. The reference counting owner. Reference counting texture wrap, to be used with . Initializes a new instance of the class. The inner wrap. The reference counting owner. Finalizes an instance of the class. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. Service responsible for loading and disposing ImGui texture wraps. A wrapper for underlying texture2D resources. Gets the address of the native resource. Gets the name of the underlying resource of this texture wrap. Gets the format of the texture. Gets the list of owner plugins. Gets the raw image specification. Tests whether the tag and the underlying resource are released or should be released. true if there are no more remaining references to this instance. Gets the list containing all the loaded textures from plugins. Returned value must be used inside a lock. Gets the blame for a texture wrap. The texture wrap. The blame, if it exists. Puts a plugin on blame for a texture. The texture. The plugin. Same . Sets the blame name for a texture. The texture. The name. Same . A COM object that works by tagging itself to a DirectX resource. When the resource destructs, it will also release our instance of the tag, letting us know that it is no longer being used, and can be evicted from our tracker. Gets or creates an instance of for the given resource. The COM object to track. true if the tracker is new. A COM object type. A new instance of . Gets an existing instance of for the given resource. The COM object to track. A COM object type. An existing instance of . Finalizes an instance of the class. Gets the dynamic-priority queue texture loader. Gets a simpler drawer. Gets the shared texture manager. Gets the WIC manager. Creates a texture from the given . Skips the load throttler; intended to be used from implementation of s. The data. The loaded texture. Creates a texture from the given , trying to interpret it as a . The file bytes. The loaded texture. Runs the given action in IDXGISwapChain.Present immediately or waiting as needed. The action to run. Runs the given function in IDXGISwapChain.Present immediately or waiting as needed. The type of the return value. The function to run. The return value from the function. A class for drawing simple stuff. Finalizes an instance of the class. Sets up this instance of . The device. Draws the given shader resource view to the current render target. An instance of . The shader resource view. The left top coordinates relative to the size of the source texture. The right bottom coordinates relative to the size of the source texture. This function does not throw. Fills alpha channel to 1.0 from the current render target. An instance of . This function does not throw. Auxiliary data from . A part of texture manager that deals with s. Initializes a new instance of the class. An instance of . Gets all the loaded textures from game resources. Gets all the loaded textures from filesystem. Gets all the loaded textures from assembly manifest resources. Gets all the loaded textures that are invalidated from . lock on use of the value returned from this property. Invalidates a cached item from and . The path to invalidate. Creates a texture from the given bytes of an image file. Skips the load throttler; intended to be used from implementation of s. The data. The cancellation token. The loaded texture. Creates a texture from the given path to an image file. Skips the load throttler; intended to be used from implementation of s. The path of the file.. The cancellation token. The loaded texture. A part of texture manager that uses Windows Imaging Component under the hood. Initializes a new instance of the class. An instance of . Finalizes an instance of the class. Gets the corresponding from a containing a WIC pixel format. The WIC pixel format. The corresponding , or if unavailable. Gets the corresponding containing a WIC pixel format from a . The DXGI pixel format. The corresponding . Whether the image is in SRGB. true if a corresponding pixel format exists. Creates a new instance of from a . An instance of . The number of bytes in the memory. The new instance of . Creates a new instance of from a . The stream that will NOT be closed after. The cancellation token. The newly loaded texture. Gets the supported bitmap codecs. The supported encoders. Gets the supported bitmap codecs. The supported decoders. Saves the given raw bitmap to a stream. The raw bitmap specifications. The raw bitmap bytes. The container format from . The stream to write to. The ownership is not transferred. The encoder properties. The cancellation token. Initializes a new instance of the struct. The WIC factory. Ownership is not transferred. The component type to enumerate. Plugin-scoped version of . Initializes a new instance of the class. The plugin. Gets the task resulting in an instance of . Thrown if disposed. Gets an instance of . Thrown if disposed. Thrown if called at an unfortune time. A texture with a backing instance of that is shared across multiple requesters. Calling on this interface is a no-op. and may stop returning the intended texture at any point. Use to lock the texture for use in any thread for any duration. Gets the texture for use with the current frame, or an empty texture if unavailable. An instance of that is guaranteed to be available for the current frame being drawn. Do not cache the result of this function across draw calls for different frames. s may be cached, but the performance benefit will be minimal. Calling outside the main thread will fail. This function does not throw. will be ignored, including the cases when the returned texture wrap is passed to a function with leaveWrapOpen parameter. If the texture is unavailable for any reason, then the returned instance of will point to an empty texture instead. Gets the texture for use with the current frame, or a default value specified via if unavailable. The default wrap to return if the requested texture was not immediately available. An instance of that is guaranteed to be available for the current frame being drawn. Do not cache the result of this function across draw calls for different frames. s may be cached, but the performance benefit will be minimal. Calling outside the main thread will fail. This function does not throw. will be ignored, including the cases when the returned texture wrap is passed to a function with leaveWrapOpen parameter. If the texture is unavailable for any reason, then will be returned. Attempts to get the texture for use with the current frame. An instance of that is guaranteed to be available for the current frame being drawn, or null if texture is not loaded (yet). The load exception, if any. true if points to the loaded texture; false if the texture is still being loaded, or the load has failed. Do not cache the result of this function across draw calls for different frames. s may be cached, but the performance benefit will be minimal. Calling outside the main thread will fail. This function does not throw. on the returned will be ignored, including the cases when the returned texture wrap is passed to a function with leaveWrapOpen parameter. Thrown when called outside the UI thread. Creates a new instance of holding a new reference to this texture. The returned texture is guaranteed to be available until is called. WARNING! Usually, this method should be a "last resort"/compatibility wrapper for old code that does not directly support directly. Prefer using any of the other methods if possible, and DO NOT CACHE the resulting texture wrap from those functions. The cancellation token. A containing the loaded texture on success. must be called on the resulting instance of from the returned after use. Consider using to dispose the result automatically according to the state of the task. Describes a raw image. Initializes a new instance of the struct. The width of the raw image. The height of the raw image. The DXGI format of the raw image. The pitch of the raw image in bytes. Specify -1 to calculate from other parameters. Initializes a new instance of the struct. The source texture description. Initializes a new instance of the struct. The source texture description. The pitch of the raw image in bytes. Gets or sets the width of the raw image. Gets or sets the height of the raw image. Gets or sets the pitch of the raw image in bytes. The value may not always exactly match * bytesPerPixelFromDxgiFormat. Gets or sets the format of the raw image. See DXGI_FORMAT. Gets the number of bits per pixel. Thrown if is not supported. Gets or sets the format (typed). Gets the estimated number of bytes. -1 if failed. Creates a new instance of record using the given resolution, in B8G8R8A8(BGRA32) UNorm pixel format. The width. The height. The new instance. Creates a new instance of record using the given resolution, in R8G8B8A8(RGBA32) UNorm pixel format. The width. The height. The new instance. Creates a new instance of record using the given resolution, in A8 UNorm pixel format. The width. The height. The new instance. Describes how to modify a texture. Describes how to modify a texture. Gets or sets a value indicating whether to make the texture opaque. If true, then the alpha channel values will be filled with 1.0. Gets or sets the new DXGI format. Set to 0 () to use the source pixel format. Supported values can be queried with . This may not necessarily match . Gets or sets the new width. Set to 0 to automatically calculate according to the original texture size, , and . Gets or sets the new height. Set to 0 to automatically calculate according to the original texture size, , and . Gets or sets the left top coordinates relative to the size of the source texture. Coordinates should be in range between 0 and 1. Gets or sets the right bottom coordinates relative to the size of the source texture. Coordinates should be in range between 0 and 1. If set to , then it will be interpreted as , to accommodate the use of default value of this record struct. Gets or sets the format (typed). Gets the effective value of . Test if this instance of does not instruct to change the underlying data of a texture. The texture description to test against. true if this instance of does not instruct to change the underlying data of a texture. Checks the properties and throws an exception if values are invalid. Base class for implementations of that forwards to another. Called on . true if called from . Base implementation will not dispose the result of . If you need to implement a finalizer, then make it call this function with false. Gets the inner wrap. The inner wrap. true if not disposed and is available. Gets the inner wrap. The inner wrap. Base TextureWrap interface for all Dalamud-owned texture wraps. Used to avoid referencing ImGuiScene. If you want to implement this, see if you're actually wrapping an existing instance of ; if you are, then use . Gets a texture handle suitable for direct use with ImGui functions. Gets the width of the texture. Gets the height of the texture. Gets the size vector of the texture using Width, Height. Creates a new reference to the resource being pointed by this instance of . The new reference to this texture wrap. On calling this function, a new instance of will be returned, but with the same . The new instance must be d, as the backing resource will stay alive until all the references are released. The old instance may be disposed as needed, once this function returns; the new instance will stay alive regardless of whether the old instance has been disposed.
Primary purpose of this function is to share textures across plugin boundaries. When texture wraps get passed across plugin boundaries for use for an indeterminate duration, the receiver should call this function to obtain a new reference to the texture received, so that it gets its own "copy" of the texture and the caller may dispose the texture anytime without any care for the receiver.
The default implementation will treat as an .
A texture wrap that ignores calls. The inner wrap. A texture wrap that ignores calls. The inner wrap. A texture wrap that is created from an . Initializes a new instance of the class. The pointer to that is suitable for use with . The width of the texture. The height of the texture. If true, call . Finalizes an instance of the class. Queue the texture to be disposed once the frame ends. Actually dispose the wrapped texture. A texture wrap that takes its buffer from the frame buffer (of swap chain). Initializes a new instance of the class. The arguments for creating a texture. Name for debug display purposes. The owner plugin. The cancellation token. Finalizes an instance of the class. Gets the task representing the first call. Updates the texture from the source viewport. Queues a call to . Queue the texture to be disposed once the frame ends. Actually dispose the wrapped texture. Class responsible for managing elements in the title screen menu. Gets the texture size needed for title screen menu logos. Event to be called when the entry list has been changed. Gets the list of entries in the title screen menu. Adds a new entry to the title screen menu. The text to show. The texture to show. The action to execute when the option is selected. A object that can be used to manage the entry. Thrown when the texture provided does not match the required resolution(64x64). Adds a new entry to the title screen menu. Priority of the entry. The text to show. The texture to show. The action to execute when the option is selected. A object that can be used to manage the entry. Thrown when the texture provided does not match the required resolution(64x64). Adds a new entry to the title screen menu. Priority of the entry. The text to show. The texture to show. The action to execute when the option is selected. A object that can be used to manage the entry. Thrown when the texture provided does not match the required resolution(64x64). Adds a new entry to the title screen menu. The text to show. The texture to show. The action to execute when the option is selected. The keys that have to be held to display the menu. A object that can be used to manage the entry. Thrown when the texture provided does not match the required resolution(64x64). Plugin-scoped version of a TitleScreenMenu service. A interface representing an entry in the title screen menu. Gets or sets a value indicating whether or not this entry is internal. Gets the calling assembly of this entry. Gets the internal ID of this entry. Gets the keys that have to be pressed to show the menu. Determines the displaying condition of this menu entry is met. True if met. Trigger the action associated with this entry. A interface representing a read only entry in the title screen menu. Gets the priority of this entry. Gets the name of this entry. Gets the texture of this entry. Class representing an entry in the title screen menu. Initializes a new instance of the class. The calling assembly. The priority of this entry. The text to show. The texture to show. The action to execute when the option is selected. The keys that have to be held to display the menu. Determines the displaying condition of this menu entry is met. True if met. Trigger the action associated with this entry. This interface represents the Dalamud UI that is drawn on top of the game. It can be used to draw custom windows and overlays. The event that gets called when Dalamud is ready to draw your windows or overlays. When it is called, you can use static ImGui calls. The event that is called when the game's DirectX device is requesting you to resize your buffers. Event that is fired when the plugin should open its configuration interface. Event that is fired when the plugin should open its main interface. Gets or sets an action that is called when plugin UI or interface modifications are supposed to be shown. These may be fired consecutively. Gets or sets an action that is called when plugin UI or interface modifications are supposed to be hidden. These may be fired consecutively. Gets the handle to the default Dalamud font - supporting all game languages and icons. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddDalamudDefaultFont(UiBuilder.DefaultFontSizePx))); Gets the default Dalamud icon font based on FontAwesome 5 Free solid. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddFontAwesomeIconFont(new() { SizePt = UiBuilder.DefaultFontSizePt }))); // or use tk => tk.AddFontAwesomeIconFont(new() { SizePx = UiBuilder.DefaultFontSizePx }))); Gets the default Dalamud monospaced font based on Inconsolata Regular. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddDalamudAssetFont( DalamudAsset.InconsolataRegular, new() { SizePt = UiBuilder.DefaultFontSizePt }))); // or use new() { SizePx = UiBuilder.DefaultFontSizePx }))); Gets the default Dalamud icon font based on FontAwesome 5 free solid with a fixed width and vertically centered glyphs. Gets the default font specifications. Gets the game's active Direct3D device. Gets the game's main window handle. Gets or sets a value indicating whether this plugin should hide its UI automatically when the game's UI is hidden. Gets or sets a value indicating whether this plugin should hide its UI automatically when the user toggles the UI. Gets or sets a value indicating whether this plugin should hide its UI automatically during cutscenes. Gets or sets a value indicating whether this plugin should hide its UI automatically while gpose is active. Gets or sets a value indicating whether or not the game's cursor should be overridden with the ImGui cursor. Gets the count of Draw calls made since plugin creation. Gets a value indicating whether or not a cutscene is playing. Gets a value indicating whether this plugin should modify the game's interface at this time. Gets a value indicating whether UI functions can be used. Gets the plugin-private font atlas. Gets a value indicating whether or not to use "reduced motion". This usually means that you should use less intrusive animations, or disable them entirely. Loads an ULD file that can load textures containing multiple icons in a single texture. The path of the requested ULD file. A wrapper around said ULD file. Waits for UI to become available for use. A task that completes when the game's Present has been called at least once. Waits for UI to become available for use. Function to call. Specifies whether to call the function from the framework thread. A task that completes when the game's Present has been called at least once. Return type. Waits for UI to become available for use. Function to call. Specifies whether to call the function from the framework thread. A task that completes when the game's Present has been called at least once. Return type. Creates an isolated . Specify when and how to rebuild this atlas. Whether the fonts in the atlas is global scaled. Name for debugging purposes. A new instance of . Use this to create extra font atlases, if you want to create and dispose fonts without having to rebuild all other fonts together.
If is not , the font rebuilding functions must be called manually.
This class represents the Dalamud UI that is drawn on top of the game. It can be used to draw custom windows and overlays. Initializes a new instance of the class and registers it. You do not have to call this manually. The plugin. The plugin namespace. Gets the default Dalamud font size in points. Gets the default Dalamud font size in pixels. Gets the default Dalamud font - supporting all game languages and icons.
Accessing this static property outside of is dangerous and not supported.
Gets the default Dalamud icon font based on FontAwesome 5 Free solid.
Accessing this static property outside of is dangerous and not supported.
Gets the default Dalamud monospaced font based on Inconsolata Regular.
Accessing this static property outside of is dangerous and not supported.
Gets the default font specifications. Gets the handle to the default Dalamud font - supporting all game languages and icons. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddDalamudDefaultFont(UiBuilder.DefaultFontSizePx))); Gets the default Dalamud icon font based on FontAwesome 5 Free solid. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddFontAwesomeIconFont(new() { SizePt = UiBuilder.DefaultFontSizePt }))); // or use tk => tk.AddFontAwesomeIconFont(new() { SizePx = UiBuilder.DefaultFontSizePx }))); Gets the default Dalamud icon font based on FontAwesome 5 free solid with a fixed width and vertically centered glyphs. Gets the default Dalamud monospaced font based on Inconsolata Regular. A font handle corresponding to this font can be obtained with: fontAtlas.NewDelegateFontHandle( e => e.OnPreBuild( tk => tk.AddDalamudAssetFont( DalamudAsset.InconsolataRegular, new() { SizePt = UiBuilder.DefaultFontSizePt }))); // or use new() { SizePx = UiBuilder.DefaultFontSizePx }))); Gets the game's active Direct3D device. Gets the game's main window handle. Gets or sets a value indicating whether this plugin should hide its UI automatically when the game's UI is hidden. Gets or sets a value indicating whether this plugin should hide its UI automatically when the user toggles the UI. Gets or sets a value indicating whether this plugin should hide its UI automatically during cutscenes. Gets or sets a value indicating whether this plugin should hide its UI automatically while gpose is active. Gets or sets a value indicating whether or not the game's cursor should be overridden with the ImGui cursor. Gets the count of Draw calls made since plugin creation. Gets a value indicating whether or not a cutscene is playing. Gets a value indicating whether this plugin should modify the game's interface at this time. Gets a value indicating whether UI functions can be used. Gets the plugin-private font atlas. Gets a value indicating whether or not to use "reduced motion". This usually means that you should use less intrusive animations, or disable them entirely. Gets or sets a value indicating whether statistics about UI draw time should be collected. Gets a value indicating whether this UiBuilder has a configuration UI registered. Gets a value indicating whether this UiBuilder has a configuration UI registered. Gets or sets the time this plugin took to draw on the last frame. Gets or sets the longest amount of time this plugin ever took to draw. Gets or sets a history of the last draw times, used to calculate an average. Loads an ULD file that can load textures containing multiple icons in a single texture. The path of the requested ULD file. A wrapper around said ULD file. Waits for UI to become available for use. A task that completes when the game's Present has been called at least once. Waits for UI to become available for use. Function to call. Specifies whether to call the function from the framework thread. A task that completes when the game's Present has been called at least once. Return type. Waits for UI to become available for use. Function to call. Specifies whether to call the function from the framework thread. A task that completes when the game's Present has been called at least once. Return type. Creates an isolated . Specify when and how to rebuild this atlas. Whether the fonts in the atlas is global scaled. Name for debugging purposes. A new instance of . Use this to create extra font atlases, if you want to create and dispose fonts without having to rebuild all other fonts together.
If is not , the font rebuilding functions must be called manually.
Unregister the UiBuilder. Do not call this in plugin code. Clean up resources allocated by this instance of . Dalamud internal use only. Open the registered configuration UI, if it exists. Open the registered configuration UI, if it exists. Notify this UiBuilder about plugin UI being hidden. Notify this UiBuilder about plugin UI being shown. Wrapper for multi-icon sprite sheets defined by ULD files. Initializes a new instance of the class, wrapping an ULD file. The UiBuilder used to load textures. The requested ULD file. Gets the loaded ULD file if it exists. Gets a value indicating whether the requested ULD could be loaded. Load a part of a multi-icon sheet as a texture. The path of the requested texture. The index of the desired icon. A TextureWrap containing the requested part if it exists and null otherwise. Clear all stored data and remove the loaded ULD. Draws the enumerable data with number of items per line. Enumerable containing data to draw. The function to draw a single item. How many items to draw per line. How tall each line is. The type of data to draw. Class containing various extensions to ImGui, aiding with building custom widgets. Draw clipped text. Pointer to the draw list. Minimum position. Maximum position. Text to draw. Size of the text, if known. Alignment. Clip rect to use. Add text to a draw list. Pointer to the draw list. Font to use. Font size. Position to draw at. Color to use. Text to draw. Clip rect to use. Class containing various helper methods for use with ImGui inside Dalamud. Gets the main viewport. Gets the global Dalamud scale. Gets a value indicating whether ImGui is initialized and ready for use.
This does not necessarily mean you can call drawing functions.
Gets the global Dalamud scale; even available before drawing is ready.
If you are sure that drawing is ready, at the point of using this, use instead.
Check if the current ImGui window is on the main viewport. Only valid within a window. Whether the window is on the main viewport. Gets a that is pre-scaled with the multiplier. Vector2 X/Y parameter. A scaled Vector2. Gets a that is pre-scaled with the multiplier. Vector2 X parameter. Vector2 Y parameter. A scaled Vector2. Gets a that is pre-scaled with the multiplier. Vector4 X parameter. Vector4 Y parameter. Vector4 Z parameter. Vector4 W parameter. A scaled Vector2. Force the next ImGui window to stay inside the main game window. Create a dummy scaled by the global Dalamud scale. The size of the dummy. Create a dummy scaled by the global Dalamud scale. Vector2 X parameter. Vector2 Y parameter. Create a dummy scaled by the global Dalamud scale. The size of the dummy. Create an indent scaled by the global Dalamud scale. The size of the indent. Use a relative ImGui.SameLine() from your current cursor position, scaled by the Dalamud global scale. The offset from your current cursor position. The spacing to use. Set the position of the next window relative to the main viewport. The position of the next window. When to set the position. The pivot to set the position around. Set the position of a window relative to the main viewport. The name/ID of the window. The position of the window. When to set the position. Creates default color palette for use with color pickers. The total number of swatches to use. Default color palette. Get the size of a button considering the default frame padding. Text in the button. with the size of the button. Print out text that can be copied when clicked. The text to show. The text to copy when clicked. The color of the text. Draws a SeString. SeString to draw. Initial rendering style. ImGui ID, if link functionality is desired. Button flags to use on link interaction. Interaction result of the rendered text. This function is experimental. Report any issues to GitHub issues or to Discord #dalamud-dev channel. The function definition is stable; only in the next API version a function may be removed. Creates and caches a SeString from a text macro representation, and then draws it. SeString text macro representation. Newline characters will be normalized to . Initial rendering style. ImGui ID, if link functionality is desired. Button flags to use on link interaction. Interaction result of the rendered text. This function is experimental. Report any issues to GitHub issues or to Discord #dalamud-dev channel. The function definition is stable; only in the next API version a function may be removed. Write unformatted text wrapped. The text to write. Write unformatted text wrapped. The color of the text. The text to write. Unscales fonts after they have been rendered onto atlas. Font to scale. Scale. If a positive number is given, numbers will be rounded to this. Fills missing glyphs in target font from source font, if both are not null. Source font. Target font. Whether to copy missing glyphs only. Whether to call target.BuildLookupTable(). Low codepoint range to copy. High codepoing range to copy. Fills missing glyphs in target font from source font, if both are not null. Source font. Target font. Whether to copy missing glyphs only. Whether to call target.BuildLookupTable(). Low codepoint range to copy. High codepoing range to copy. Map a VirtualKey keycode to an ImGuiKey enum value. The VirtualKey value to retrieve the ImGuiKey counterpart for. The ImGuiKey that corresponds to this VirtualKey, or ImGuiKey.None otherwise. Map an ImGuiKey enum value to a VirtualKey code. The ImGuiKey value to retrieve the VirtualKey counterpart for. The VirtualKey that corresponds to this ImGuiKey, or VirtualKey.NO_KEY otherwise. Show centered text. Text to show. Center the ImGui cursor for a certain text. The text to center for. Center the ImGui cursor for an item with a certain width. The width to center for. Allocates memory on the heap using
Memory must be freed using .
Note that null is a valid return value when is 0.
The length of allocated memory. The allocated memory. If returns null.
Creates a new instance of with a natively backed memory. The created instance. Disposable you can call. Builds ImGui Glyph Ranges for use with . The builder. Add fallback codepoints to the range. Add ellipsis codepoints to the range. When disposed, the resource allocated for the range will be freed. Creates glyph ranges from .
Use values from .
The unicode ranges. The range array that can be used for .
Determines whether is empty. The pointer. Whether it is empty. Determines whether is empty. The pointer. Whether it is empty. Determines whether is empty. The pointer. Whether it is empty. If is default, then returns . The self. The other. if it is not default; otherwise, . Mark 4K page as used, after adding a codepoint to a font. The font. The codepoint. Sets the text for a text input, during the callback. The callback data. The new text. Finds the corresponding ImGui viewport ID for the given window handle. The window handle. The viewport ID, or -1 if not found. Attempts to validate that is valid. The font pointer. The exception, if any occurred during validation. Updates the fallback char of . The font. The fallback character. Determines if the supplied codepoint is inside the given range, in format of . The codepoint. The ranges. Whether it is the case. Get data needed for each new frame. ImFontGlyph the correct version. ImFontGlyphHotData the correct version. ImFontAtlasCustomRect the correct version. Represents any type of ImGui ID. Type of the ID. Numeric ID. Valid if is . UTF-16 string ID. Valid if is . UTF-8 string ID. Valid if is . Initializes a new instance of the struct. A numeric ID, or 0 to not provide an ID. Initializes a new instance of the struct. A UTF-16 string ID, or to not provide an ID. Initializes a new instance of the struct. A UTF-8 string ID, or to not provide an ID. Possible types for an ImGui ID. No ID is specified. field is used. field is used. field is used. Determines if no ID is stored. true if no ID is stored. Pushes ID if any is stored. true if any ID is pushed. Helpers for drawing tables. Draw a simple table with the given data using the drawRow action. Headers and thus columns and column count are defined by columnTitles. Draw a simple table with the given data using the drawRow action inside a collapsing header. Headers and thus columns and column count are defined by columnTitles. Wrapper for ImVector. Contained type. Initializes a new instance of the struct.
If is set to true, you must call after use, and the underlying memory for must have been allocated using . Otherwise, it will crash.
The underlying vector. The destroyer function to call on item removal. Whether this wrapper owns the vector.
Initializes a new instance of the struct.
You must call after use.
The initial capacity. The destroyer function to call on item removal.
Destroy callback for items. Pointer to self. Gets the raw vector. Gets a view of the underlying ImVector{T}, for the range of . Gets a view of the underlying ImVector{T}, for the range of . Gets a value indicating whether this is disposed. Gets a value indicating whether this has the ownership of the underlying . Gets the underlying . Gets the number of items contained inside the underlying ImVector{T}. Gets the number of items that can be contained inside the underlying ImVector{T}. Gets the pointer to the first item in the data inside underlying ImVector{T}. Gets the reference to the number of items contained inside the underlying ImVector{T}. Gets the reference to the number of items that can be contained inside the underlying ImVector{T}. Gets the reference to the pointer to the first item in the data inside underlying ImVector{T}. This may be null, if is zero. Gets the element at the specified index as a reference. Index of the item. If is out of range. Clears this vector, optionally skipping destroyer invocation. Whether to skip destroyer invocation. Size down the underlying ImVector{T}. Capacity to reserve. Whether the capacity has been changed. Ensures that the capacity of this list is at least the specified .
On growth, the new capacity exactly matches .
The minimum capacity to ensure. Whether the capacity has been changed.
Ensures that the capacity of this list is at least the specified .
On growth, the new capacity may exceed .
The minimum capacity to ensure. Whether the capacity has been changed.
Resizes the underlying array and fills with zeroes if grown. New size. New default value. Whether to skip calling destroyer function. Removes the element at the given index. The index. Whether to skip calling the destroyer function. Removes elements at the given index. The index of the first item to remove. Number of items to remove. Whether to skip calling the destroyer function. Replaces a sequence at given offset of items with . The index of the first item to be replaced. The number of items to be replaced. The replacement. Whether to skip calling the destroyer function. Sets the capacity exactly as requested. New capacity. Whether the capacity has been changed. If is less than . If memory for the requested capacity cannot be allocated. Utility methods for . Creates a new instance of the struct, initialized with .
You must call after use.
The item type. The initial data. The destroyer function to call on item removal. The minimum capacity of the new vector. The new wrapped vector, that has to be disposed after use.
Creates a new instance of the struct, initialized with .
You must call after use.
The item type. The initial data. The destroyer function to call on item removal. The minimum capacity of the new vector. The new wrapped vector, that has to be disposed after use.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Wraps into a .
This does not need to be disposed.
The owner object. The wrapped vector.
Utility function for saving textures. Shows a context menu confirming texture save. Name of the initiator. Suggested name of the file being saved. A task returning the texture to save. A representing the asynchronous operation. Pushes the item width for the next widget and returns an IDisposable that pops the width when done. The width to set the next widget to. An for use in a using statement. Pushes the item wrapping width for the next string written and returns an IDisposable that pops the wrap width when done. The wrap width to set the next text written to. An for use in a using statement. Class representing a Window System preset. Gets or sets the ID of this preset. Gets or sets the name of this preset. Gets or sets a dictionary containing the windows in the preset, mapping their ID to the preset. Class representing a window in a preset. Gets or sets a value indicating whether the window is pinned. Gets or sets a value indicating whether the window is clickthrough. Gets or sets the window's opacity override. Gets a value indicating whether this preset is in the default state. Class handling persistence for window system windows. Initializes a new instance of the class. Gets the active window system preset. Get or add a window to the active preset. The ID of the window. The preset window instance, or null if the preset does not contain this window. Persist the state of a window to the active preset. The ID of the window. The preset window instance. Base class you can use to implement an ImGui window for use with the built-in . Initializes a new instance of the class. The name/ID of this window. If you have multiple windows with the same name, you will need to append a unique ID to it by specifying it after "###" behind the window title. The of this window. Whether this window should be limited to the main game window. Flags to control window behavior. Nothing. Enable window opening/closing sound effects. Hook into the game's focus management. Enable the built-in "additional options" menu on the title bar. Gets or sets the namespace of the window. Gets or sets the name of the window. If you have multiple windows with the same name, you will need to append an unique ID to it by specifying it after "###" behind the window title. Gets a value indicating whether the window is focused. Gets or sets a value indicating whether this window is to be closed with a hotkey, like Escape, and keep game addons open in turn if it is closed. Gets or sets a value indicating whether this window should not generate sound effects when opening and closing. Gets or sets a value representing the sound effect id to be played when the window is opened. Gets or sets a value representing the sound effect id to be played when the window is closed. Gets or sets the position of this window. Gets or sets the condition that defines when the position of this window is set. Gets or sets the size of the window. The size provided will be scaled by the global scale. Gets or sets the condition that defines when the size of this window is set. Gets or sets the size constraints of the window. The size constraints provided will be scaled by the global scale. Gets or sets a value indicating whether or not this window is collapsed. Gets or sets the condition that defines when the collapsed state of this window is set. Gets or sets the window flags. Gets or sets a value indicating whether or not this ImGui window will be forced to stay inside the main game window. Gets or sets this window's background alpha value. Gets or sets a value indicating whether or not this ImGui window should display a close button in the title bar. Gets or sets a value indicating whether or not this window should offer to be pinned via the window's titlebar context menu. Gets or sets a value indicating whether or not this window should offer to be made click-through via the window's titlebar context menu. Gets or sets a list of available title bar buttons. If or are set to true, and this features is not disabled globally by the user, an internal title bar button to manage these is added when drawing, but it will not appear in this collection. If you wish to remove this button, set both of these values to false. Gets or sets a value indicating whether or not this window will stay open. Toggle window is open state. Bring this window to the front. Code to always be executed before the open-state of the window is checked. Additional conditions for the window to be drawn, regardless of its open-state. True if the window should be drawn, false otherwise. Not being drawn due to failing this condition will not change focus or trigger OnClose. This is checked before PreDraw, but after Update. Code to be executed before conditionals are applied and the window is drawn. Code to be executed after the window is drawn. Code to be executed every time the window renders. In this method, implement your drawing code. You do NOT need to ImGui.Begin your window. Code to be executed when the window is opened. Code to be executed when the window is closed. Code to be executed every frame, even when the window is collapsed. Draw the window via ImGui. Flags controlling window behavior. Handler for window persistence data. Structure detailing the size constraints of a window. Initializes a new instance of the struct. Gets or sets the minimum size of the window. Gets or sets the maximum size of the window. Structure describing a title bar button. Gets or sets the icon of the button. Gets or sets a vector by which the position of the icon within the button shall be offset. Automatically scaled by the global font scale for you. Gets or sets an action that is called when a tooltip shall be drawn. May be null if no tooltip shall be drawn. Gets or sets an action that is called when the button is clicked. Gets or sets the priority the button shall be shown in. Lower = closer to ImGui default buttons. Gets or sets a value indicating whether or not the button shall be clickable when the respective window is set to clickthrough. Class running a WindowSystem using implementations to simplify ImGui windowing. Initializes a new instance of the class. The name/ID-space of this . Gets a value indicating whether any contains any that has focus and is not marked to be excluded from consideration. Gets the name of the currently focused window system that is redirecting normal escape functionality. Gets the timespan since the last time any window was focused. Gets a read-only list of all s in this . Gets a value indicating whether any window in this has focus and is not marked to be excluded from consideration. Gets or sets the name/ID-space of this . Add a window to this . The window system doesn't own your window, it just renders it You need to store a reference to it to use it later. The window to add. Remove a window from this . Will not dispose your window, if it is disposable. The window to remove. Remove all windows from this . Will not dispose your windows, if they are disposable. Draw all registered windows using ImGui. Mark a class as being dependent on a service, without actually injecting it. The service to be dependent upon. Helper class used for matching. Use the generic version. An object instance registered in the . Initializes a new instance of the class. Weak reference to the underlying instance. Type of the underlying instance. Gets a reference to the underlying instance. The underlying instance. Indicates that an interface a service can implement can be used to resolve that service. Take care: only one service can implement an interface with this attribute at a time. The interface that can be used to resolve the service. Helper class used for matching. Use the generic version. A simple singleton-only IOC container that provides (optional) version-based dependency resolution. This is only used to resolve dependencies for plugins. Dalamud services are constructed via Service{T}.ConstructObject at the moment. Initializes a new instance of the class. Gets a dictionary of all registered instances. Gets a dictionary mapping interfaces to their implementations. Register a singleton object of any type into the current IOC container. The existing instance to register in the container. The type to register. Register the interfaces that can resolve this type. The type to register. Create an object. The type of object to create. Scoped objects to be included in the constructor. The scope to be used to create scoped services. The created object. Inject interfaces into public or static properties on the provided object. The properties have to be marked with the . The object instance. Scoped objects to be injected. The scope to be used to create scoped services. A representing the operation. Get a service scope, enabling the creation of objects with scoped services. An implementation of a service scope. Container enabling the creation of scoped services. Register objects that may be injected to scoped services, but not directly to created objects. The scopes to add. Create an object. The type of object to create. Scoped objects to be included in the constructor. The created object. Inject interfaces into public or static properties on the provided object. The properties have to be marked with the . The object instance. Scoped objects to be injected. A representing the status of the operation. Implementation of a service scope. Initializes a new instance of the class. The container this scope will use to create services. Create a service scoped to this scope, with private scoped objects. The type of object to create. Additional scoped objects. The created object, or null. This attribute indicates whether the decorated class should be exposed to plugins via IoC. This attribute indicates whether an applicable service should be injected into the plugin. Class handling localization. Array of language codes which have a valid translation in Dalamud. Initializes a new instance of the class. The working directory to load language files from. The prefix on the loc resource file name (e.g. dalamud_). Use embedded loc resource files. Delegate for the event that occurs when the language is changed. The language code of the new language. Event that occurs when the language is changed. Gets an instance of that corresponds to the language configured from Dalamud Settings. Gets an instance of that corresponds to a Dalamud . The language code which should be in . The corresponding instance of . Search the set-up localization data for the provided assembly for the given string key and return it. If the key is not present, the fallback is shown. The fallback is also required to create the string files to be localized. The string key to be returned. The fallback string, usually your source language. The localized string, fallback or string key if not found. Set up the UI language with the users' local UI culture. Set up the UI language with "fallbacks"(original English text). Set up the UI language with the provided language code. The language code to set up the UI language with. Saves localizable JSON data in the current working directory for the provided assembly. If set to true, this ignores malformed Localize functions instead of failing. Creates a new instance of the class. Path to Dalamud assets. Optional language override. A new instance. Class offering various methods to allow for logging in Dalamud modules. Initializes a new instance of the class. This class can be used to prefix logging messages with a Dalamud module name prefix. For example, "[PLUGINR] ...". The module name. Initializes a new instance of the class. This class will properly attach SourceContext and other attributes per Serilog standards. The type of the class this logger is for. Helper method to create a new instance based on a type. The class to create this ModuleLog for. Returns a ModuleLog with name set. Log a templated verbose message to the in-game debug log. The message template. Values to log. Log a templated verbose message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated debug message to the in-game debug log. The message template. Values to log. Log a templated debug message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated information message to the in-game debug log. The message template. Values to log. Log a templated information message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated warning message to the in-game debug log. The message template. Values to log. Log a templated warning message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated error message to the in-game debug log. The message template. Values to log. Log a templated error message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated fatal message to the in-game debug log. The message template. Values to log. Log a templated fatal message to the in-game debug log. The exception that caused the error. The message template. Values to log. Log a templated message to the in-game debug log. The log level to log with. The message template to log. The exception to log. Values to log. Serilog event sink. Initializes a new instance of the class. Logging format provider. Event on a log line being emitted. Gets the default instance. Emit a log event. Log event to be emitted. Class responsible for tracking asynchronous tasks. Gets a read-only list of tracked tasks. Intended for use only from UI thread. Clear the list of tracked tasks. Update the tracked data. Enables TaskTracker. Class representing a tracked task. Gets or sets the tracked task. Gets or sets the ID of the task. Gets or sets the stack trace of where the task was started. Gets or sets a value indicating whether or not the task was completed. Gets or sets a value indicating whether or not the task faulted. Gets or sets a value indicating whether or not the task was canceled. Gets or sets a value indicating whether or not the task was completed successfully. Gets or sets a value indicating whether this task is being viewed. Gets or sets the status of the task. Gets the start time of the task. Gets or sets the end time of the task. Gets or sets the exception that occurred within the task. Class implementing log retention behaviour for debug builds. Class implementing log retention behaviour for release builds. Class implementing retention behaviour for log files. Apply the specified retention behaviour to log files. The regular log file path. The rollover "old" log file path. Trim existing log file to a specified length, and optionally move the excess data to another file. Target log file to trim. Maximum size of target log file. .old file to move excess data to. Maximum size of .old file. Implementation of . Initializes a new instance of the class. The plugin that owns this service. Gets the default log level for this plugin. A log level. An exception thrown when VirtualAlloc fails. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The error message that explains the reason for the exception. The exception that is the cause of the current exception. The base exception when thrown from Dalamud.Memory. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The error message that explains the reason for the exception. The exception that is the cause of the current exception. An exception thrown when VirtualProtect fails. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The error message that explains the reason for the exception. The exception that is the cause of the current exception. An exception thrown when ReadProcessMemory fails. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The error message that explains the reason for the exception. The exception that is the cause of the current exception. An exception thrown when WriteProcessMemory fails. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The error message that explains the reason for the exception. The exception that is the cause of the current exception. A simple class that provides read/write access to arbitrary memory. Casts the given memory address as the reference to the live object. The memory address. The unmanaged type. The reference to the live object. Casts the given memory address as the span of the live object(s). The memory address. The number of items. The unmanaged type. The span containing reference to the live object(s). Casts the given memory address as the span of the live object(s), until it encounters a zero. The memory address. The maximum number of items. The unmanaged type. The span containing reference to the live object(s). If is byte or char and is not specified, consider using or . Reads a generic type from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The read in struct. If you do not need to make a copy, use instead. Reads a generic type from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. Set this to true to enable struct marshalling. The read in struct. If you do not need to make a copy and is false, use instead. Reads a byte array from a specified memory address. The memory address to read from. The amount of bytes to read starting from the memoryAddress. The read in byte array. If you do not need to make a copy, use instead. Reads a generic type array from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The amount of array items to read. The read in struct array. If you do not need to make a copy, use instead. Reads a generic type array from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The amount of array items to read. Set this to true to enable struct marshalling. The read in struct array. If you do not need to make a copy and is false, use instead. Reads a null-terminated byte array from a specified memory address. The memory address to read from. The read in byte array. If you do not need to make a copy, use instead. Reads a generic type from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. Local variable to receive the read in struct. If you do not need to make a copy, use instead. Reads a generic type from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. Local variable to receive the read in struct. Set this to true to enable struct marshalling. If you do not need to make a copy and is false, use instead. Reads raw data from a specified memory address. The memory address to read from. The amount of bytes to read starting from the memoryAddress. Local variable to receive the read in bytes. If you do not need to make a copy, use instead. Reads a generic type array from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The amount of array items to read. The read in struct array. If you do not need to make a copy, use instead. Reads a generic type array from a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The amount of array items to read. Set this to true to enable struct marshalling. The read in struct array. If you do not need to make a copy and is false, use instead. Compares if the given char span equals to the null-terminated string at . The character span. The address of null-terminated string. The encoding of the null-terminated string. The maximum length of the null-terminated string. Whether they are equal. Read a UTF-8 encoded string from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The read in string. Read a string with the given encoding from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The encoding to use to decode the string. The read in string. Read a UTF-8 encoded string from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The maximum number of bytes to read. Note that this is NOT the maximum length of the returned string. The read in string. Read a string with the given encoding from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The encoding to use to decode the string. The maximum number of bytes to read. Note that this is NOT the maximum length of the returned string. The read in string. Read a null-terminated SeString from a specified memory address. The memory address to read from. The read in string. Read an SeString from a specified memory address. The memory address to read from. The maximum length of the string. The read in string. Read an SeString from a specified Utf8String structure. The memory address to read from. The read in string. Reads an SeString from a specified memory address, and extracts the outermost string.
If the SeString is malformed, behavior is undefined.
Whether the SeString contained a non-represented payload. The memory address to read from. The maximum length of the string. Stop reading on encountering the first non-represented payload. What payloads are represented via this function may change. Replacement for non-represented payloads. The read in string.
Read a UTF-8 encoded string from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The read in string. Read a string with the given encoding from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The encoding to use to decode the string. The read in string. Read a UTF-8 encoded string from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The read in string. The maximum length of the string. Read a string with the given encoding from a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to read from. The encoding to use to decode the string. The maximum length of the string. The read in string. Read a null-terminated SeString from a specified memory address. The memory address to read from. The read in SeString. Read an SeString from a specified memory address. The memory address to read from. The maximum length of the string. The read in SeString. Read an SeString from a specified Utf8String structure. The memory address to read from. The read in string. Writes a generic type to a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The item to write to the address. Writes a generic type to a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to read from. The item to write to the address. Set this to true to enable struct marshalling. Writes raw data to a specified memory address. The memory address to read from. The bytes to write to memoryAddress. Writes a generic type array to a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to write to. The array of items to write to the address. Writes a generic type array to a specified memory address. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address to write to. The array of items to write to the address. Set this to true to enable struct marshalling. Write a UTF-8 encoded string to a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to write to. The string to write. Write a string with the given encoding to a specified memory address. Attention! If this is an , use the applicable helper methods to decode. The memory address to write to. The string to write. The encoding to use. Write an SeString to a specified memory address. The memory address to write to. The SeString to write. Allocates fixed size of memory inside the target memory source via Windows API calls. Returns the address of newly allocated memory. Amount of bytes to be allocated. Address to the newly allocated memory. Allocates fixed size of memory inside the target memory source via Windows API calls. Returns the address of newly allocated memory. Amount of bytes to be allocated. Address to the newly allocated memory. Frees memory previously allocated with Allocate via Windows API calls. The address of the memory to free. True if the operation is successful. Changes the page permissions for a specified combination of address and length via Windows API calls. The memory address for which to change page permissions for. The region size for which to change permissions for. The new permissions to set. The old page permissions. Changes the page permissions for a specified combination of address and length via Windows API calls. The memory address for which to change page permissions for. The region size for which to change permissions for. The new permissions to set. The old page permissions. Changes the page permissions for a specified combination of address and element from which to deduce size via Windows API calls. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The memory address for which to change page permissions for. The struct element from which the region size to change permissions for will be calculated. The new permissions to set. Set to true to calculate the size of the struct after marshalling instead of before. The old page permissions. Reads raw data from a specified memory address via Windows API calls. This is noticably slower than Unsafe or Marshal. The memory address to read from. The amount of bytes to read starting from the memoryAddress. The read in bytes. Reads raw data from a specified memory address via Windows API calls. This is noticably slower than Unsafe or Marshal. The memory address to read from. The amount of bytes to read starting from the memoryAddress. The read in bytes. Reads raw data from a specified memory address via Windows API calls. This is noticably slower than Unsafe or Marshal. The memory address to read from. The read in bytes. Writes raw data to a specified memory address via Windows API calls. This is noticably slower than Unsafe or Marshal. The memory address to write to. The bytes to write to memoryAddress. Returns the size of a specific primitive or struct type. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The size of the primitive or struct. Returns the size of a specific primitive or struct type. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. If set to true; will return the size of an element after marshalling. The size of the primitive or struct. Returns the size of a specific primitive or struct type. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The number of array elements present. The size of the primitive or struct array. Returns the size of a specific primitive or struct type. An individual struct type of a class with an explicit StructLayout.LayoutKind attribute. The number of array elements present. If set to true; will return the size of an element after marshalling. The size of the primitive or struct array. Allocate memory in the game's UI memory space. Amount of bytes to allocate. The alignment of the allocation. Pointer to the allocated region. Allocate memory in the game's default memory space. Amount of bytes to allocate. The alignment of the allocation. Pointer to the allocated region. Allocate memory in the game's animation memory space. Amount of bytes to allocate. The alignment of the allocation. Pointer to the allocated region. Allocate memory in the game's apricot memory space. Amount of bytes to allocate. The alignment of the allocation. Pointer to the allocated region. Allocate memory in the game's sound memory space. Amount of bytes to allocate. The alignment of the allocation. Pointer to the allocated region. Free memory in the game's memory space. The memory you are freeing must be allocated with game allocators. Position at which the memory to be freed is located. Amount of bytes to free. Null-terminate a byte array. The byte array to terminate. The terminated byte array. PAGE_* from memoryapi. Enables execute access to the committed region of pages. An attempt to write to the committed region results in an access violation. This flag is not supported by the CreateFileMapping function. Enables execute or read-only access to the committed region of pages. An attempt to write to the committed region results in an access violation. Enables execute, read-only, or read/write access to the committed region of pages. Enables execute, read-only, or copy-on-write access to a mapped view of a file mapping object. An attempt to write to a committed copy-on-write page results in a private copy of the page being made for the process. The private page is marked as PAGE_EXECUTE_READWRITE, and the change is written to the new page. This flag is not supported by the VirtualAlloc or VirtualAllocEx functions. Disables all access to the committed region of pages. An attempt to read from, write to, or execute the committed region results in an access violation. This flag is not supported by the CreateFileMapping function. Enables read-only access to the committed region of pages. An attempt to write to the committed region results in an access violation. If Data Execution Prevention is enabled, an attempt to execute code in the committed region results in an access violation. Enables read-only or read/write access to the committed region of pages. If Data Execution Prevention is enabled, attempting to execute code in the committed region results in an access violation. Enables read-only or copy-on-write access to a mapped view of a file mapping object. An attempt to write to a committed copy-on-write page results in a private copy of the page being made for the process. The private page is marked as PAGE_READWRITE, and the change is written to the new page. If Data Execution Prevention is enabled, attempting to execute code in the committed region results in an access violation. This flag is not supported by the VirtualAlloc or VirtualAllocEx functions. Sets all locations in the pages as invalid targets for CFG. Used along with any execute page protection like PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE and PAGE_EXECUTE_WRITECOPY. Any indirect call to locations in those pages will fail CFG checks and the process will be terminated. The default behavior for executable pages allocated is to be marked valid call targets for CFG. This flag is not supported by the VirtualProtect or CreateFileMapping functions. Pages in the region will not have their CFG information updated while the protection changes for VirtualProtect. For example, if the pages in the region was allocated using PAGE_TARGETS_INVALID, then the invalid information will be maintained while the page protection changes. This flag is only valid when the protection changes to an executable type like PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE and PAGE_EXECUTE_WRITECOPY. The default behavior for VirtualProtect protection change to executable is to mark all locations as valid call targets for CFG. Pages in the region become guard pages. Any attempt to access a guard page causes the system to raise a STATUS_GUARD_PAGE_VIOLATION exception and turn off the guard page status. Guard pages thus act as a one-time access alarm. For more information, see Creating Guard Pages. When an access attempt leads the system to turn off guard page status, the underlying page protection takes over. If a guard page exception occurs during a system service, the service typically returns a failure status indicator. This value cannot be used with PAGE_NOACCESS. This flag is not supported by the CreateFileMapping function. Sets all pages to be non-cachable. Applications should not use this attribute except when explicitly required for a device. Using the interlocked functions with memory that is mapped with SEC_NOCACHE can result in an EXCEPTION_ILLEGAL_INSTRUCTION exception. The PAGE_NOCACHE flag cannot be used with the PAGE_GUARD, PAGE_NOACCESS, or PAGE_WRITECOMBINE flags. The PAGE_NOCACHE flag can be used only when allocating private memory with the VirtualAlloc, VirtualAllocEx, or VirtualAllocExNuma functions. To enable non-cached memory access for shared memory, specify the SEC_NOCACHE flag when calling the CreateFileMapping function. Sets all pages to be write-combined. Applications should not use this attribute except when explicitly required for a device. Using the interlocked functions with memory that is mapped as write-combined can result in an EXCEPTION_ILLEGAL_INSTRUCTION exception. The PAGE_WRITECOMBINE flag cannot be specified with the PAGE_NOACCESS, PAGE_GUARD, and PAGE_NOCACHE flags. The PAGE_WRITECOMBINE flag can be used only when allocating private memory with the VirtualAlloc, VirtualAllocEx, or VirtualAllocExNuma functions. To enable write-combined memory access for shared memory, specify the SEC_WRITECOMBINE flag when calling the CreateFileMapping function. Native user32 functions. Native imm32 functions. Native kernel32 functions. Native dbghelp functions. Native ws2_32 functions. Native dwmapi functions. FLASHW_* from winuser. Stop flashing. The system restores the window to its original state. Flash the window caption. Flash the taskbar button. Flash both the window caption and taskbar button. This is equivalent to setting the FLASHW_CAPTION | FLASHW_TRAY flags. Flash continuously, until the FLASHW_STOP flag is set. Flash continuously until the window comes to the foreground. IDC_* from winuser. Standard arrow and small hourglass. Standard arrow. Crosshair. Hand. Arrow and question mark. I-beam. Obsolete for applications marked version 4.0 or later. Slashed circle. Obsolete for applications marked version 4.0 or later.Use IDC_SIZEALL. Four-pointed arrow pointing north, south, east, and west. Double-pointed arrow pointing northeast and southwest. Double-pointed arrow pointing north and south. Double-pointed arrow pointing northwest and southeast. Double-pointed arrow pointing west and east. Vertical arrow. Hourglass. MB_* from winuser. The default value for any of the various subtypes. The message box contains three push buttons: Abort, Retry, and Ignore. The message box contains three push buttons: Cancel, Try Again, Continue. Use this message box type instead of MB_ABORTRETRYIGNORE. Adds a Help button to the message box. When the user clicks the Help button or presses F1, the system sends a WM_HELP message to the owner. The message box contains one push button: OK. This is the default. The message box contains two push buttons: OK and Cancel. The message box contains two push buttons: Retry and Cancel. The message box contains two push buttons: Yes and No. The message box contains three push buttons: Yes, No, and Cancel. An exclamation-point icon appears in the message box. An exclamation-point icon appears in the message box. An icon consisting of a lowercase letter i in a circle appears in the message box. An icon consisting of a lowercase letter i in a circle appears in the message box. A question-mark icon appears in the message box. The question-mark message icon is no longer recommended because it does not clearly represent a specific type of message and because the phrasing of a message as a question could apply to any message type. In addition, users can confuse the message symbol question mark with Help information. Therefore, do not use this question mark message symbol in your message boxes. The system continues to support its inclusion only for backward compatibility. A stop-sign icon appears in the message box. A stop-sign icon appears in the message box. A stop-sign icon appears in the message box. The first button is the default button. MB_DEFBUTTON1 is the default unless MB_DEFBUTTON2, MB_DEFBUTTON3, or MB_DEFBUTTON4 is specified. The second button is the default button. The third button is the default button. The fourth button is the default button. The user must respond to the message box before continuing work in the window identified by the hWnd parameter. However, the user can move to the windows of other threads and work in those windows. Depending on the hierarchy of windows in the application, the user may be able to move to other windows within the thread. All child windows of the parent of the message box are automatically disabled, but pop-up windows are not. MB_APPLMODAL is the default if neither MB_SYSTEMMODAL nor MB_TASKMODAL is specified. Same as MB_APPLMODAL except that the message box has the WS_EX_TOPMOST style. Use system-modal message boxes to notify the user of serious, potentially damaging errors that require immediate attention (for example, running out of memory). This flag has no effect on the user's ability to interact with windows other than those associated with hWnd. Same as MB_APPLMODAL except that all the top-level windows belonging to the current thread are disabled if the hWnd parameter is NULL. Use this flag when the calling application or library does not have a window handle available but still needs to prevent input to other windows in the calling thread without suspending other threads. Same as desktop of the interactive window station. For more information, see Window Stations. If the current input desktop is not the default desktop, MessageBox does not return until the user switches to the default desktop. The text is right-justified. Displays message and caption text using right-to-left reading order on Hebrew and Arabic systems. The message box becomes the foreground window. Internally, the system calls the SetForegroundWindow function for the message box. The message box is created with the WS_EX_TOPMOST window style. The caller is a service notifying the user of an event. The function displays a message box on the current active desktop, even if there is no user logged on to the computer. GWL_* from winuser. Sets a new extended window style. Sets a new application instance handle. Sets a new identifier of the child window.The window cannot be a top-level window. Sets a new window style. Sets the user data associated with the window. This data is intended for use by the application that created the window. Its value is initially zero. Sets a new address for the window procedure. Sets the return value of a message processed in the dialog box procedure. WM_* from winuser. These are spread throughout multiple files, find the documentation manually if you need it. https://gist.github.com/amgine/2395987. Returns true if the current application has focus, false otherwise. If the current application is focused. Passes message information to the specified window procedure. The previous window procedure. If this value is obtained by calling the GetWindowLong function with the nIndex parameter set to GWL_WNDPROC or DWL_DLGPROC, it is actually either the address of a window or dialog box procedure, or a special internal value meaningful only to CallWindowProc. A handle to the window procedure to receive the message. The message. Additional message-specific information. The contents of this parameter depend on the value of the Msg parameter. More additional message-specific information. The contents of this parameter depend on the value of the Msg parameter. Use the CallWindowProc function for window subclassing. Usually, all windows with the same class share one window procedure. A subclass is a window or set of windows with the same class whose messages are intercepted and processed by another window procedure (or procedures) before being passed to the window procedure of the class. The SetWindowLong function creates the subclass by changing the window procedure associated with a particular window, causing the system to call the new window procedure instead of the previous one.An application must pass any messages not processed by the new window procedure to the previous window procedure by calling CallWindowProc.This allows the application to create a chain of window procedures. See https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-flashwindowex. Flashes the specified window. It does not change the active state of the window. A pointer to a FLASHWINFO structure. The return value specifies the window's state before the call to the FlashWindowEx function. If the window caption was drawn as active before the call, the return value is nonzero. Otherwise, the return value is zero. Retrieves a handle to the foreground window (the window with which the user is currently working). The system assigns a slightly higher priority to the thread that creates the foreground window than it does to other threads. The return value is a handle to the foreground window. The foreground window can be NULL in certain circumstances, such as when a window is losing activation. Retrieves the identifier of the thread that created the specified window and, optionally, the identifier of the process that created the window. A handle to the window. A pointer to a variable that receives the process identifier. If this parameter is not NULL, GetWindowThreadProcessId copies the identifier of the process to the variable; otherwise, it does not. The return value is the identifier of the thread that created the window. Displays a modal dialog box that contains a system icon, a set of buttons, and a brief application-specific message, such as status or error information. The message box returns an integer value that indicates which button the user clicked. A handle to the owner window of the message box to be created. If this parameter is NULL, the message box has no owner window. The message to be displayed. If the string consists of more than one line, you can separate the lines using a carriage return and/or linefeed character between each line. The dialog box title. If this parameter is NULL, the default title is Error. The contents and behavior of the dialog box. This parameter can be a combination of flags from the following groups of flags. If a message box has a Cancel button, the function returns the IDCANCEL value if either the ESC key is pressed or the Cancel button is selected. If the message box has no Cancel button, pressing ESC will no effect - unless an MB_OK button is present. If an MB_OK button is displayed and the user presses ESC, the return value will be IDOK. If the function fails, the return value is zero.To get extended error information, call GetLastError. If the function succeeds, the return value is one of the ID* enum values. Changes an attribute of the specified window. The function also sets a value at the specified offset in the extra window memory. A handle to the window and, indirectly, the class to which the window belongs. The SetWindowLongPtr function fails if the process that owns the window specified by the hWnd parameter is at a higher process privilege in the UIPI hierarchy than the process the calling thread resides in. The zero-based offset to the value to be set. Valid values are in the range zero through the number of bytes of extra window memory, minus the size of a LONG_PTR. To set any other value, specify one of the values. The replacement value. If the function succeeds, the return value is the previous value of the specified offset. If the function fails, the return value is zero.To get extended error information, call GetLastError. If the previous value is zero and the function succeeds, the return value is zero, but the function does not clear the last error information. To determine success or failure, clear the last error information by calling SetLastError with 0, then call SetWindowLongPtr.Function failure will be indicated by a return value of zero and a GetLastError result that is nonzero. See https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-flashwinfo. Contains the flash status for a window and the number of times the system should flash the window. The size of the structure, in bytes. A handle to the window to be flashed. The window can be either opened or minimized. The flash status. This parameter can be one or more of the FlashWindow enum values. The number of times to flash the window. The rate at which the window is to be flashed, in milliseconds. If dwTimeout is zero, the function uses the default cursor blink rate. Parameters for use with SystemParametersInfo. Retrieves or sets the value of one of the system-wide parameters. This function can also update the user profile while setting a parameter. The system-wide parameter to be retrieved or set. A parameter whose usage and format depends on the system parameter being queried or set. A parameter whose usage and format depends on the system parameter being queried or set. If not otherwise indicated, you must specify zero for this parameter. If a system parameter is being set, specifies whether the user profile is to be updated, and if so, whether the WM_SETTINGCHANGE message is to be broadcast to all top-level windows to notify them of the change. If the function succeeds, the return value is a nonzero value. GCS_* from imm32. These values are used with ImmGetCompositionString and WM_IME_COMPOSITION. Retrieve or update the attribute of the composition string. Retrieve or update clause information of the composition string. Retrieve or update the attributes of the reading string of the current composition. Retrieve or update the clause information of the reading string of the composition string. Retrieve or update the reading string of the current composition. Retrieve or update the current composition string. Retrieve or update the cursor position in composition string. Retrieve or update the starting position of any changes in composition string. Retrieve or update clause information of the result string. Retrieve or update clause information of the reading string. Retrieve or update the reading string. Retrieve or update the string of the composition result. IMN_* from imm32. Input Method Manager Commands, this enum is not exhaustive. Notifies the application when an IME is about to change the content of the candidate window. Notifies an application when an IME is about to close the candidates window. Notifies an application when an IME is about to open the candidate window. Notifies an application when the conversion mode of the input context is updated. Returns the input context associated with the specified window. Unnamed parameter 1. Returns the handle to the input context. Retrieves information about the composition string. Unnamed parameter 1. Unnamed parameter 2. Pointer to a buffer in which the function retrieves the composition string information. Size, in bytes, of the output buffer, even if the output is a Unicode string. The application sets this parameter to 0 if the function is to return the size of the required output buffer. Returns the number of bytes copied to the output buffer. If dwBufLen is set to 0, the function returns the buffer size, in bytes, required to receive all requested information, excluding the terminating null character. The return value is always the size, in bytes, even if the requested data is a Unicode string. This function returns one of the following negative error codes if it does not succeed: - IMM_ERROR_NODATA.Composition data is not ready in the input context. - IMM_ERROR_GENERAL.General error detected by IME. Retrieves a candidate list. Unnamed parameter 1. Zero-based index of the candidate list. Pointer to a CANDIDATELIST structure in which the function retrieves the candidate list. Size, in bytes, of the buffer to receive the candidate list. The application can specify 0 for this parameter if the function is to return the required size of the output buffer only. Returns the number of bytes copied to the candidate list buffer if successful. If the application has supplied 0 for the dwBufLen parameter, the function returns the size required for the candidate list buffer. The function returns 0 if it does not succeed. Sets the position of the composition window. Unnamed parameter 1. Pointer to a COMPOSITIONFORM structure that contains the new position and other related information about the composition window. Returns a nonzero value if successful, or 0 otherwise. Releases the input context and unlocks the memory associated in the input context. An application must call this function for each call to the ImmGetContext function. Unnamed parameter 1. Unnamed parameter 2. Returns a nonzero value if successful, or 0 otherwise. Contains information about a candidate list. Size, in bytes, of the structure, the offset array, and all candidate strings. Candidate style values. This member can have one or more of the IME_CAND_* values. Number of candidate strings. Index of the selected candidate string. Index of the first candidate string in the candidate window. This varies as the user presses the PAGE UP and PAGE DOWN keys. Number of candidate strings to be shown in one page in the candidate window. The user can move to the next page by pressing IME-defined keys, such as the PAGE UP or PAGE DOWN key. If this number is 0, an application can define a proper value by itself. Contains style and position information for a composition window. Position style. This member can be one of the CFS_* values. A POINT structure containing the coordinates of the upper left corner of the composition window. A RECT structure containing the coordinates of the upper left and lower right corners of the composition window. Contains coordinates for a point. The X position. The Y position. Contains dimensions for a rectangle. The left position. The top position. The right position. The bottom position. MEM_* from memoryapi. To coalesce two adjacent placeholders, specify MEM_RELEASE | MEM_COALESCE_PLACEHOLDERS. When you coalesce placeholders, lpAddress and dwSize must exactly match those of the placeholder. Frees an allocation back to a placeholder (after you've replaced a placeholder with a private allocation using VirtualAlloc2 or Virtual2AllocFromApp). To split a placeholder into two placeholders, specify MEM_RELEASE | MEM_PRESERVE_PLACEHOLDER. Allocates memory charges (from the overall size of memory and the paging files on disk) for the specified reserved memory pages. The function also guarantees that when the caller later initially accesses the memory, the contents will be zero. Actual physical pages are not allocated unless/until the virtual addresses are actually accessed. To reserve and commit pages in one step, call VirtualAllocEx with MEM_COMMIT | MEM_RESERVE. Attempting to commit a specific address range by specifying MEM_COMMIT without MEM_RESERVE and a non-NULL lpAddress fails unless the entire range has already been reserved. The resulting error code is ERROR_INVALID_ADDRESS. An attempt to commit a page that is already committed does not cause the function to fail. This means that you can commit pages without first determining the current commitment state of each page. If lpAddress specifies an address within an enclave, flAllocationType must be MEM_COMMIT. Reserves a range of the process's virtual address space without allocating any actual physical storage in memory or in the paging file on disk. You commit reserved pages by calling VirtualAllocEx again with MEM_COMMIT. To reserve and commit pages in one step, call VirtualAllocEx with MEM_COMMIT | MEM_RESERVE. Other memory allocation functions, such as malloc and LocalAlloc, cannot use reserved memory until it has been released. Decommits the specified region of committed pages. After the operation, the pages are in the reserved state. The function does not fail if you attempt to decommit an uncommitted page. This means that you can decommit a range of pages without first determining the current commitment state. The MEM_DECOMMIT value is not supported when the lpAddress parameter provides the base address for an enclave. Releases the specified region of pages, or placeholder (for a placeholder, the address space is released and available for other allocations). After this operation, the pages are in the free state. If you specify this value, dwSize must be 0 (zero), and lpAddress must point to the base address returned by the VirtualAlloc function when the region is reserved. The function fails if either of these conditions is not met. If any pages in the region are committed currently, the function first decommits, and then releases them. The function does not fail if you attempt to release pages that are in different states, some reserved and some committed. This means that you can release a range of pages without first determining the current commitment state. Indicates that data in the memory range specified by lpAddress and dwSize is no longer of interest. The pages should not be read from or written to the paging file. However, the memory block will be used again later, so it should not be decommitted. This value cannot be used with any other value. Using this value does not guarantee that the range operated on with MEM_RESET will contain zeros. If you want the range to contain zeros, decommit the memory and then recommit it. When you use MEM_RESET, the VirtualAllocEx function ignores the value of fProtect. However, you must still set fProtect to a valid protection value, such as PAGE_NOACCESS. VirtualAllocEx returns an error if you use MEM_RESET and the range of memory is mapped to a file. A shared view is only acceptable if it is mapped to a paging file. MEM_RESET_UNDO should only be called on an address range to which MEM_RESET was successfully applied earlier. It indicates that the data in the specified memory range specified by lpAddress and dwSize is of interest to the caller and attempts to reverse the effects of MEM_RESET. If the function succeeds, that means all data in the specified address range is intact. If the function fails, at least some of the data in the address range has been replaced with zeroes. This value cannot be used with any other value. If MEM_RESET_UNDO is called on an address range which was not MEM_RESET earlier, the behavior is undefined. When you specify MEM_RESET, the VirtualAllocEx function ignores the value of flProtect. However, you must still set flProtect to a valid protection value, such as PAGE_NOACCESS. Reserves an address range that can be used to map Address Windowing Extensions (AWE) pages. This value must be used with MEM_RESERVE and no other values. Allocates memory at the highest possible address. This can be slower than regular allocations, especially when there are many allocations. Causes the system to track pages that are written to in the allocated region. If you specify this value, you must also specify MEM_RESERVE. To retrieve the addresses of the pages that have been written to since the region was allocated or the write-tracking state was reset, call the GetWriteWatch function. To reset the write-tracking state, call GetWriteWatch or ResetWriteWatch. The write-tracking feature remains enabled for the memory region until the region is freed. Allocates memory using large page support. The size and alignment must be a multiple of the large-page minimum. To obtain this value, use the GetLargePageMinimum function. If you specify this value, you must also specify MEM_RESERVE and MEM_COMMIT. SEM_* from errhandlingapi. Use the system default, which is to display all error dialog boxes. The system does not display the critical-error-handler message box. Instead, the system sends the error to the calling process. Best practice is that all applications call the process-wide SetErrorMode function with a parameter of SEM_FAILCRITICALERRORS at startup. This is to prevent error mode dialogs from hanging the application. The system automatically fixes memory alignment faults and makes them invisible to the application. It does this for the calling process and any descendant processes. This feature is only supported by certain processor architectures. For more information, see the Remarks section. After this value is set for a process, subsequent attempts to clear the value are ignored. The system does not display the Windows Error Reporting dialog. The OpenFile function does not display a message box when it fails to find a file. Instead, the error is returned to the caller. This error mode overrides the OF_PROMPT flag. PAGE_* from memoryapi. Enables execute access to the committed region of pages. An attempt to write to the committed region results in an access violation. This flag is not supported by the CreateFileMapping function. Enables execute or read-only access to the committed region of pages. An attempt to write to the committed region results in an access violation. Enables execute, read-only, or read/write access to the committed region of pages. Enables execute, read-only, or copy-on-write access to a mapped view of a file mapping object. An attempt to write to a committed copy-on-write page results in a private copy of the page being made for the process. The private page is marked as PAGE_EXECUTE_READWRITE, and the change is written to the new page. This flag is not supported by the VirtualAlloc or VirtualAllocEx functions. Disables all access to the committed region of pages. An attempt to read from, write to, or execute the committed region results in an access violation. This flag is not supported by the CreateFileMapping function. Enables read-only access to the committed region of pages. An attempt to write to the committed region results in an access violation. If Data Execution Prevention is enabled, an attempt to execute code in the committed region results in an access violation. Enables read-only or read/write access to the committed region of pages. If Data Execution Prevention is enabled, attempting to execute code in the committed region results in an access violation. Enables read-only or copy-on-write access to a mapped view of a file mapping object. An attempt to write to a committed copy-on-write page results in a private copy of the page being made for the process. The private page is marked as PAGE_READWRITE, and the change is written to the new page. If Data Execution Prevention is enabled, attempting to execute code in the committed region results in an access violation. This flag is not supported by the VirtualAlloc or VirtualAllocEx functions. Sets all locations in the pages as invalid targets for CFG. Used along with any execute page protection like PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE and PAGE_EXECUTE_WRITECOPY. Any indirect call to locations in those pages will fail CFG checks and the process will be terminated. The default behavior for executable pages allocated is to be marked valid call targets for CFG. This flag is not supported by the VirtualProtect or CreateFileMapping functions. Pages in the region will not have their CFG information updated while the protection changes for VirtualProtect. For example, if the pages in the region was allocated using PAGE_TARGETS_INVALID, then the invalid information will be maintained while the page protection changes. This flag is only valid when the protection changes to an executable type like PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE and PAGE_EXECUTE_WRITECOPY. The default behavior for VirtualProtect protection change to executable is to mark all locations as valid call targets for CFG. Pages in the region become guard pages. Any attempt to access a guard page causes the system to raise a STATUS_GUARD_PAGE_VIOLATION exception and turn off the guard page status. Guard pages thus act as a one-time access alarm. For more information, see Creating Guard Pages. When an access attempt leads the system to turn off guard page status, the underlying page protection takes over. If a guard page exception occurs during a system service, the service typically returns a failure status indicator. This value cannot be used with PAGE_NOACCESS. This flag is not supported by the CreateFileMapping function. Sets all pages to be non-cachable. Applications should not use this attribute except when explicitly required for a device. Using the interlocked functions with memory that is mapped with SEC_NOCACHE can result in an EXCEPTION_ILLEGAL_INSTRUCTION exception. The PAGE_NOCACHE flag cannot be used with the PAGE_GUARD, PAGE_NOACCESS, or PAGE_WRITECOMBINE flags. The PAGE_NOCACHE flag can be used only when allocating private memory with the VirtualAlloc, VirtualAllocEx, or VirtualAllocExNuma functions. To enable non-cached memory access for shared memory, specify the SEC_NOCACHE flag when calling the CreateFileMapping function. Sets all pages to be write-combined. Applications should not use this attribute except when explicitly required for a device. Using the interlocked functions with memory that is mapped as write-combined can result in an EXCEPTION_ILLEGAL_INSTRUCTION exception. The PAGE_WRITECOMBINE flag cannot be specified with the PAGE_NOACCESS, PAGE_GUARD, and PAGE_NOCACHE flags. The PAGE_WRITECOMBINE flag can be used only when allocating private memory with the VirtualAlloc, VirtualAllocEx, or VirtualAllocExNuma functions. To enable write-combined memory access for shared memory, specify the SEC_WRITECOMBINE flag when calling the CreateFileMapping function. HEAP_* from heapapi. Serialized access is not used when the heap functions access this heap. This option applies to all subsequent heap function calls. Alternatively, you can specify this option on individual heap function calls. The low-fragmentation heap (LFH) cannot be enabled for a heap created with this option. A heap created with this option cannot be locked. The system raises an exception to indicate failure (for example, an out-of-memory condition) for calls to HeapAlloc and HeapReAlloc instead of returning NULL. The allocated memory will be initialized to zero. Otherwise, the memory is not initialized to zero. All memory blocks that are allocated from this heap allow code execution, if the hardware enforces data execution prevention. Use this flag heap in applications that run code from the heap. If HEAP_CREATE_ENABLE_EXECUTE is not specified and an application attempts to run code from a protected page, the application receives an exception with the status code STATUS_ACCESS_VIOLATION. See https://docs.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-setevent Sets the specified event object to the signaled state. A handle to the event object. The CreateEvent or OpenEvent function returns this handle. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. See https://docs.microsoft.com/en-us/windows/win32/api/libloaderapi/nf-libloaderapi-freelibrary. Frees the loaded dynamic-link library (DLL) module and, if necessary, decrements its reference count. When the reference count reaches zero, the module is unloaded from the address space of the calling process and the handle is no longer valid. A handle to the loaded library module. The LoadLibrary, LoadLibraryEx, GetModuleHandle, or GetModuleHandleEx function returns this handle. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call the GetLastError function. See https://docs.microsoft.com/en-us/windows/win32/api/libloaderapi/nf-libloaderapi-getmodulefilenamew. Retrieves the fully qualified path for the file that contains the specified module. The module must have been loaded by the current process. To locate the file for a module that was loaded by another process, use the GetModuleFileNameEx function. A handle to the loaded module whose path is being requested. If this parameter is NULL, GetModuleFileName retrieves the path of the executable file of the current process. The GetModuleFileName function does not retrieve the path for modules that were loaded using the LOAD_LIBRARY_AS_DATAFILE flag. For more information, see LoadLibraryEx. A pointer to a buffer that receives the fully qualified path of the module. If the length of the path is less than the size that the nSize parameter specifies, the function succeeds and the path is returned as a null-terminated string. If the length of the path exceeds the size that the nSize parameter specifies, the function succeeds and the string is truncated to nSize characters including the terminating null character. The size of the lpFilename buffer, in TCHARs. If the function succeeds, the return value is the length of the string that is copied to the buffer, in characters, not including the terminating null character. If the buffer is too small to hold the module name, the string is truncated to nSize characters including the terminating null character, the function returns nSize, and the function sets the last error to ERROR_INSUFFICIENT_BUFFER. If nSize is zero, the return value is zero and the last error code is ERROR_SUCCESS. If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError. See https://docs.microsoft.com/en-us/windows/win32/api/libloaderapi/nf-libloaderapi-getmodulehandlew. Retrieves a module handle for the specified module. The module must have been loaded by the calling process. To avoid the race conditions described in the Remarks section, use the GetModuleHandleEx function. The name of the loaded module (either a .dll or .exe file). If the file name extension is omitted, the default library extension .dll is appended. The file name string can include a trailing point character (.) to indicate that the module name has no extension. The string does not have to specify a path. When specifying a path, be sure to use backslashes (\), not forward slashes (/). The name is compared (case independently) to the names of modules currently mapped into the address space of the calling process. If this parameter is NULL, GetModuleHandle returns a handle to the file used to create the calling process (.exe file). The GetModuleHandle function does not retrieve handles for modules that were loaded using the LOAD_LIBRARY_AS_DATAFILE flag.For more information, see LoadLibraryEx. If the function succeeds, the return value is a handle to the specified module. If the function fails, the return value is NULL.To get extended error information, call GetLastError. Retrieves the address of an exported function or variable from the specified dynamic-link library (DLL). A handle to the DLL module that contains the function or variable. The LoadLibrary, LoadLibraryEx, LoadPackagedLibrary, or GetModuleHandle function returns this handle. The GetProcAddress function does not retrieve addresses from modules that were loaded using the LOAD_LIBRARY_AS_DATAFILE flag.For more information, see LoadLibraryEx. The function or variable name, or the function's ordinal value. If this parameter is an ordinal value, it must be in the low-order word; the high-order word must be zero. If the function succeeds, the return value is the address of the exported function or variable. If the function fails, the return value is NULL.To get extended error information, call GetLastError. See https://docs.microsoft.com/en-us/windows/win32/api/libloaderapi/nf-libloaderapi-loadlibraryw. Loads the specified module into the address space of the calling process. The specified module may cause other modules to be loaded. For additional load options, use the LoadLibraryEx function. The name of the module. This can be either a library module (a .dll file) or an executable module (an .exe file). The name specified is the file name of the module and is not related to the name stored in the library module itself, as specified by the LIBRARY keyword in the module-definition (.def) file. If the string specifies a full path, the function searches only that path for the module. If the string specifies a relative path or a module name without a path, the function uses a standard search strategy to find the module; for more information, see the Remarks. If the function cannot find the module, the function fails.When specifying a path, be sure to use backslashes (\), not forward slashes(/). For more information about paths, see Naming a File or Directory. If the string specifies a module name without a path and the file name extension is omitted, the function appends the default library extension .dll to the module name. To prevent the function from appending .dll to the module name, include a trailing point character (.) in the module name string. If the function succeeds, the return value is a handle to the module. If the function fails, the return value is NULL.To get extended error information, call GetLastError. ReadProcessMemory copies the data in the specified address range from the address space of the specified process into the specified buffer of the current process. Any process that has a handle with PROCESS_VM_READ access can call the function. The entire area to be read must be accessible, and if it is not accessible, the function fails. A handle to the process with memory that is being read. The handle must have PROCESS_VM_READ access to the process. A pointer to the base address in the specified process from which to read. Before any data transfer occurs, the system verifies that all data in the base address and memory of the specified size is accessible for read access, and if it is not accessible the function fails. A pointer to a buffer that receives the contents from the address space of the specified process. The number of bytes to be read from the specified process. A pointer to a variable that receives the number of bytes transferred into the specified buffer. If lpNumberOfBytesRead is NULL, the parameter is ignored. If the function succeeds, the return value is nonzero. If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError. The function fails if the requested read operation crosses into an area of the process that is inaccessible. ReadProcessMemory copies the data in the specified address range from the address space of the specified process into the specified buffer of the current process. Any process that has a handle with PROCESS_VM_READ access can call the function. The entire area to be read must be accessible, and if it is not accessible, the function fails. A handle to the process with memory that is being read. The handle must have PROCESS_VM_READ access to the process. A pointer to the base address in the specified process from which to read. Before any data transfer occurs, the system verifies that all data in the base address and memory of the specified size is accessible for read access, and if it is not accessible the function fails. A pointer to a buffer that receives the contents from the address space of the specified process. The number of bytes to be read from the specified process. A pointer to a variable that receives the number of bytes transferred into the specified buffer. If lpNumberOfBytesRead is NULL, the parameter is ignored. If the function succeeds, the return value is nonzero. If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError. The function fails if the requested read operation crosses into an area of the process that is inaccessible. See https://docs.microsoft.com/en-us/windows/win32/api/errhandlingapi/nf-errhandlingapi-seterrormode. Controls whether the system will handle the specified types of serious errors or whether the process will handle them. The process error mode. This parameter can be one or more of the ErrorMode enum values. The return value is the previous state of the error-mode bit flags. See https://docs.microsoft.com/en-us/windows/win32/api/errhandlingapi/nf-errhandlingapi-setunhandledexceptionfilter. Enables an application to supersede the top-level exception handler of each thread of a process. After calling this function, if an exception occurs in a process that is not being debugged, and the exception makes it to the unhandled exception filter, that filter will call the exception filter function specified by the lpTopLevelExceptionFilter parameter. A pointer to a top-level exception filter function that will be called whenever the UnhandledExceptionFilter function gets control, and the process is not being debugged. A value of NULL for this parameter specifies default handling within UnhandledExceptionFilter. The filter function has syntax similar to that of UnhandledExceptionFilter: It takes a single parameter of type LPEXCEPTION_POINTERS, has a WINAPI calling convention, and returns a value of type LONG. The filter function should return one of the EXCEPTION_* enum values. The SetUnhandledExceptionFilter function returns the address of the previous exception filter established with the function. A NULL return value means that there is no current top-level exception handler. HeapCreate - Creates a private heap object that can be used by the calling process. The function reserves space in the virtual address space of the process and allocates physical storage for a specified initial portion of this block. Ref: https://learn.microsoft.com/en-us/windows/win32/api/heapapi/nf-heapapi-heapcreate The heap allocation options. These options affect subsequent access to the new heap through calls to the heap functions. The initial size of the heap, in bytes. This value determines the initial amount of memory that is committed for the heap. The value is rounded up to a multiple of the system page size. The value must be smaller than dwMaximumSize. If this parameter is 0, the function commits one page. To determine the size of a page on the host computer, use the GetSystemInfo function. The maximum size of the heap, in bytes. The HeapCreate function rounds dwMaximumSize up to a multiple of the system page size and then reserves a block of that size in the process's virtual address space for the heap. If allocation requests made by the HeapAlloc or HeapReAlloc functions exceed the size specified by dwInitialSize, the system commits additional pages of memory for the heap, up to the heap's maximum size. If dwMaximumSize is not zero, the heap size is fixed and cannot grow beyond the maximum size. Also, the largest memory block that can be allocated from the heap is slightly less than 512 KB for a 32-bit process and slightly less than 1,024 KB for a 64-bit process. Requests to allocate larger blocks fail, even if the maximum size of the heap is large enough to contain the block. If dwMaximumSize is 0, the heap can grow in size. The heap's size is limited only by the available memory. Requests to allocate memory blocks larger than the limit for a fixed-size heap do not automatically fail; instead, the system calls the VirtualAlloc function to obtain the memory that is needed for large blocks. Applications that need to allocate large memory blocks should set dwMaximumSize to 0. If the function succeeds, the return value is a handle to the newly created heap. If the function fails, the return value is NULL. To get extended error information, call GetLastError. Allocates a block of memory from a heap. The allocated memory is not movable. A handle to the heap from which the memory will be allocated. This handle is returned by the HeapCreate or GetProcessHeap function. The heap allocation options. Specifying any of these values will override the corresponding value specified when the heap was created with HeapCreate. The number of bytes to be allocated. If the heap specified by the hHeap parameter is a "non-growable" heap, dwBytes must be less than 0x7FFF8. You create a non-growable heap by calling the HeapCreate function with a nonzero value. If the function succeeds, the return value is a pointer to the allocated memory block. If the function fails and you have not specified HEAP_GENERATE_EXCEPTIONS, the return value is NULL. If the function fails and you have specified HEAP_GENERATE_EXCEPTIONS, the function may generate either of the exceptions listed in the following table. The particular exception depends upon the nature of the heap corruption. For more information, see GetExceptionCode. See https://docs.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualalloc. Reserves, commits, or changes the state of a region of pages in the virtual address space of the calling process. Memory allocated by this function is automatically initialized to zero. To allocate memory in the address space of another process, use the VirtualAllocEx function. The starting address of the region to allocate. If the memory is being reserved, the specified address is rounded down to the nearest multiple of the allocation granularity. If the memory is already reserved and is being committed, the address is rounded down to the next page boundary. To determine the size of a page and the allocation granularity on the host computer, use the GetSystemInfo function. If this parameter is NULL, the system determines where to allocate the region. If this address is within an enclave that you have not initialized by calling InitializeEnclave, VirtualAlloc allocates a page of zeros for the enclave at that address. The page must be previously uncommitted, and will not be measured with the EEXTEND instruction of the Intel Software Guard Extensions programming model. If the address in within an enclave that you initialized, then the allocation operation fails with the ERROR_INVALID_ADDRESS error. The size of the region, in bytes. If the lpAddress parameter is NULL, this value is rounded up to the next page boundary. Otherwise, the allocated pages include all pages containing one or more bytes in the range from lpAddress to lpAddress+dwSize. This means that a 2-byte range straddling a page boundary causes both pages to be included in the allocated region. The type of memory allocation. This parameter must contain one of the MEM_* enum values. The memory protection for the region of pages to be allocated. If the pages are being committed, you can specify any one of the memory protection constants. If the function succeeds, the return value is the base address of the allocated region of pages. If the function fails, the return value is NULL.To get extended error information, call GetLastError. See https://docs.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualfree. Releases, decommits, or releases and decommits a region of pages within the virtual address space of the calling process. process. A pointer to the base address of the region of pages to be freed. If the dwFreeType parameter is MEM_RELEASE, this parameter must be the base address returned by the VirtualAlloc function when the region of pages is reserved. The size of the region of memory to be freed, in bytes. If the dwFreeType parameter is MEM_RELEASE, this parameter must be 0 (zero). The function frees the entire region that is reserved in the initial allocation call to VirtualAlloc. If the dwFreeType parameter is MEM_DECOMMIT, the function decommits all memory pages that contain one or more bytes in the range from the lpAddress parameter to (lpAddress+dwSize). This means, for example, that a 2-byte region of memory that straddles a page boundary causes both pages to be decommitted.If lpAddress is the base address returned by VirtualAlloc and dwSize is 0 (zero), the function decommits the entire region that is allocated by VirtualAlloc. After that, the entire region is in the reserved state. The type of free operation. This parameter must be one of the MEM_* enum values. If the function succeeds, the return value is a nonzero value. If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError. See https://docs.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualprotect. Changes the protection on a region of committed pages in the virtual address space of the calling process. The address of the starting page of the region of pages whose access protection attributes are to be changed. All pages in the specified region must be within the same reserved region allocated when calling the VirtualAlloc or VirtualAllocEx function using MEM_RESERVE. The pages cannot span adjacent reserved regions that were allocated by separate calls to VirtualAlloc or VirtualAllocEx using MEM_RESERVE. The size of the region whose access protection attributes are to be changed, in bytes. The region of affected pages includes all pages containing one or more bytes in the range from the lpAddress parameter to (lpAddress+dwSize). This means that a 2-byte range straddling a page boundary causes the protection attributes of both pages to be changed. The memory protection option. This parameter can be one of the memory protection constants. For mapped views, this value must be compatible with the access protection specified when the view was mapped (see MapViewOfFile, MapViewOfFileEx, and MapViewOfFileExNuma). A pointer to a variable that receives the previous access protection value of the first page in the specified region of pages. If this parameter is NULL or does not point to a valid variable, the function fails. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. Writes data to an area of memory in a specified process. The entire area to be written to must be accessible or the operation fails. A handle to the process memory to be modified. The handle must have PROCESS_VM_WRITE and PROCESS_VM_OPERATION access to the process. A pointer to the base address in the specified process to which data is written. Before data transfer occurs, the system verifies that all data in the base address and memory of the specified size is accessible for write access, and if it is not accessible, the function fails. A pointer to the buffer that contains data to be written in the address space of the specified process. The number of bytes to be written to the specified process. A pointer to a variable that receives the number of bytes transferred into the specified process. This parameter is optional. If lpNumberOfBytesWritten is NULL, the parameter is ignored. If the function succeeds, the return value is nonzero. If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError.The function fails if the requested write operation crosses into an area of the process that is inaccessible. Get a handle to the current process. Handle to the process. Get the current process ID. The process ID. Get the current thread ID. The thread ID. Type of minidump to create. Normal minidump. Minidump with data segments. Minidump with full memory. Initializes the symbol handler for a process. A handle that identifies the caller. This value should be unique and nonzero, but need not be a process handle. However, if you do use a process handle, be sure to use the correct handle. If the application is a debugger, use the process handle for the process being debugged. Do not use the handle returned by GetCurrentProcess when debugging another process, because calling functions like SymLoadModuleEx can have unexpected results. This parameter cannot be NULL. The path, or series of paths separated by a semicolon (;), that is used to search for symbol files. If this parameter is NULL, the library attempts to form a symbol path from the following sources: - The current working directory of the application - The _NT_SYMBOL_PATH environment variable - The _NT_ALTERNATE_SYMBOL_PATH environment variable Note that the search path can also be set using the SymSetSearchPath function. If this value is , enumerates the loaded modules for the process and effectively calls the SymLoadModule64 function for each module. Whether or not the function succeeded. Deallocates all resources associated with the process handle. A handle to the process that was originally passed to the function. Whether or not the function succeeded. Creates a minidump. Target process handle. Target process ID. Output file handle. Type of dump to take. Exception information. User information. Callback. Whether or not the minidump succeeded. Structure describing minidump exception information. ID of the thread that caused the exception. Pointer to the exception record. ClientPointers field. Finds window according to conditions. Handle to parent window. Window to search after. Name of class. Name of window. Found window, or null. See https://docs.microsoft.com/en-us/windows/win32/api/winsock/nf-winsock-setsockopt. The setsockopt function sets a socket option. A descriptor that identifies a socket. The level at which the option is defined (for example, SOL_SOCKET). The socket option for which the value is to be set (for example, SO_BROADCAST). The optname parameter must be a socket option defined within the specified level, or behavior is undefined. A pointer to the buffer in which the value for the requested option is specified. The size, in bytes, of the buffer pointed to by the optval parameter. If no error occurs, setsockopt returns zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific error code can be retrieved by calling WSAGetLastError. Attributes for use with DwmSetWindowAttribute. Allows the window frame for this window to be drawn in dark mode colors when the dark mode system setting is enabled. Sets the value of Desktop Window Manager (DWM) non-client rendering attributes for a window. The handle to the window for which the attribute value is to be set. The attribute to be set. The value of the attribute. The size of the attribute. HRESULT. A class to provide a method to implement a variant of the Happy Eyeballs algorithm for HTTP connections to dual-stack servers. Initializes a new instance of the class. Optional override to force a specific AddressFamily. Backoff time between concurrent connection attempts. The connection callback to provide to a . The context for an HTTP connection. The cancellation token to abort this request. Returns a Stream for consumption by HttpClient. A service to help build and manage HttpClients with some semblance of Happy Eyeballs (RFC 8305 - IPv4 fallback) awareness. Initializes a new instance of the class. A service to talk to the Smileton Loporrits to build an HTTP Client aware of Happy Eyeballs. Gets a meant to be shared across all (standard) requests made by the application, where custom configurations are not required. May or may not have been properly tested by the Loporrits. Gets a meant to be shared across any custom s that need to be made in other parts of the application. This should be used when shared callback state is desired across multiple clients, as sharing the SocketsHandler may lead to GC issues. This class acts as an interface to various objects needed to interact with Dalamud and the game. Initializes a new instance of the class. Set up the interface and populate all fields needed. The plugin this interface belongs to. The reason the plugin was loaded. Event that gets fired when loc is changed Event that is fired when the active list of plugins is changed. Gets the reason this plugin was loaded. Gets a value indicating whether or not auto-updates have already completed this session. Gets the repository from which this plugin was installed. If a plugin was installed from the official/main repository, this will return the value of . Developer plugins will return the value of . Gets the current internal plugin name. Gets the plugin's manifest. Gets a value indicating whether this is a dev plugin. Gets a value indicating whether this is a testing release of a plugin. Dev plugins have undefined behavior for this value, but can be expected to return false. Gets the time that this plugin was loaded. Gets the UTC time that this plugin was loaded. Gets the timespan delta from when this plugin was loaded. Gets the directory Dalamud assets are stored in. Gets the location of your plugin assembly. Gets the directory your plugin configurations are stored in. Gets the config file of your plugin. Gets the instance which allows you to draw UI into the game via ImGui draw calls. Gets a value indicating whether Dalamud is running in Debug mode or the /xldev menu is open. This can occur on release builds. Gets a value indicating whether a debugger is attached. Gets the current UI language in two-letter iso format. Gets serializer class with functions to remove special characters from strings. Gets the chat type used by default for plugin messages. Gets a list of installed plugins along with their current state. Gets the internal implementation. Opens the , with an optional search term. The page to open the installer to. Defaults to the "All Plugins" page. An optional search text to input in the search box. Returns false if the DalamudInterface was null. Opens the , with an optional search term. The tab to open the settings to. Defaults to the "General" tab. An optional search text to input in the search box. Returns false if the DalamudInterface was null. Opens the dev menu bar. Returns false if the DalamudInterface was null. Gets an IPC provider. The return type for funcs. Use object if this is unused. The name of the IPC registration. An IPC provider. This is thrown when the requested types do not match the previously registered types are different. Gets an IPC subscriber. The return type for funcs. Use object if this is unused. The name of the IPC registration. An IPC subscriber. Save a plugin configuration(inheriting IPluginConfiguration). The current configuration. Get a previously saved plugin configuration or null if none was saved before. A previously saved config or null if none was saved before. Get the config directory. directory with path of AppData/XIVLauncher/pluginConfig/PluginInternalName. Get the loc directory. directory with path of AppData/XIVLauncher/pluginConfig/PluginInternalName/loc. Register a chat link handler. The ID of the command. The action to be executed. Returns an SeString payload for the link. Remove a chat link handler. The ID of the command. Removes all chat link handlers registered by the plugin. Unregister the plugin and dispose all references. Dalamud internal use only. Dispatch the active plugins changed event. What action caused this event to be fired. If this plugin was affected by the change. This interface represents a basic Dalamud plugin. All plugins have to implement this interface. This interface acts as an interface to various objects needed to interact with Dalamud and the game. Delegate for localization change with two-letter iso lang code. The new language code. Delegate for events that listen to changes to the list of active plugins. What action caused this event to be fired. If this plugin was affected by the change. Event that gets fired when loc is changed Event that is fired when the active list of plugins is changed. Gets the reason this plugin was loaded. Gets a value indicating whether or not auto-updates have already completed this session. Gets the repository from which this plugin was installed. If a plugin was installed from the official/main repository, this will return the value of . Developer plugins will return the value of . Gets the current internal plugin name. Gets the plugin's manifest. Gets a value indicating whether this is a dev plugin. Gets a value indicating whether this is a testing release of a plugin. Dev plugins have undefined behavior for this value, but can be expected to return false. Gets the time that this plugin was loaded. Gets the UTC time that this plugin was loaded. Gets the timespan delta from when this plugin was loaded. Gets the directory Dalamud assets are stored in. Gets the location of your plugin assembly. Gets the directory your plugin configurations are stored in. Gets the config file of your plugin. Gets the instance which allows you to draw UI into the game via ImGui draw calls. Gets a value indicating whether Dalamud is running in Debug mode or the /xldev menu is open. This can occur on release builds. Gets a value indicating whether a debugger is attached. Gets the current UI language in two-letter iso format. Gets serializer class with functions to remove special characters from strings. Gets the chat type used by default for plugin messages. Gets a list of installed plugins along with their current state. Opens the , with an optional search term. The page to open the installer to. Defaults to the "All Plugins" page. An optional search text to input in the search box. Returns false if the DalamudInterface was null. Opens the , with an optional search term. The tab to open the settings to. Defaults to the "General" tab. An optional search text to input in the search box. Returns false if the DalamudInterface was null. Opens the dev menu bar. Returns false if the DalamudInterface was null. Gets an IPC provider. The return type for funcs. Use object if this is unused. The name of the IPC registration. An IPC provider. This is thrown when the requested types do not match the previously registered types are different. Gets an IPC subscriber. The return type for funcs. Use object if this is unused. The name of the IPC registration. An IPC subscriber. Save a plugin configuration(inheriting IPluginConfiguration). The current configuration. Get a previously saved plugin configuration or null if none was saved before. A previously saved config or null if none was saved before. Get the config directory. directory with path of AppData/XIVLauncher/pluginConfig/PluginInternalName. Get the loc directory. directory with path of AppData/XIVLauncher/pluginConfig/PluginInternalName/loc. Register a chat link handler. The ID of the command. The action to be executed. Returns an SeString payload for the link. Remove a chat link handler. The ID of the command. Removes all chat link handlers registered by the plugin. Create a new object of the provided type using its default constructor, then inject objects and properties. Objects to inject additionally. The type to create. The created and initialized type, or null on failure. Create a new object of the provided type using its default constructor, then inject objects and properties. Objects to inject additionally. The type to create. A task representing the created and initialized type. Inject services into properties on the provided object instance. The instance to inject services into. Objects to inject additionally. Whether the injection succeeded. Inject services into properties on the provided object instance. The instance to inject services into. Objects to inject additionally. A representing the status of the operation. Interface representing an installed plugin, to be exposed to other plugins. Gets the name of the plugin. Gets the internal name of the plugin. Gets a value indicating whether the plugin is loaded. Gets a value indicating whether this plugin's API level is out of date. Gets a value indicating whether the plugin is for testing use only. Gets a value indicating whether or not this plugin is orphaned(belongs to a repo) or not. Gets a value indicating whether or not this plugin is serviced(repo still exists, but plugin no longer does). Gets a value indicating whether this plugin has been banned. Gets a value indicating whether this plugin is dev plugin. Gets a value indicating whether this manifest is associated with a plugin that was installed from a third party repo. Gets the plugin manifest. Gets the version of the plugin. Gets a value indicating whether the plugin has a main UI. Gets a value indicating whether the plugin has a config UI. Opens the main UI of the plugin. Throws if is false. Opens the config UI of the plugin. Throws if is false. Internal representation of an installed plugin, to be exposed to other plugins. The plugin. Internal representation of an installed plugin, to be exposed to other plugins. The plugin. Enum describing how plugins should be auto-updated at startup-. Plugins should not be updated and the user should not be notified. The user should merely be notified about updates. Only plugins from the main repository should be updated. All plugins should be updated. Class to manage automatic updates for plugins. Time we should wait after login to update. Time we should wait between scheduled update checks. Time we should wait between scheduled update checks if the user has dismissed the notification, instead of updating. We don't want to spam the user with notifications. Time we should wait after unblocking to nag the user. Used to prevent spamming a nag, for example, right after an user leaves a duty. Initializes a new instance of the class. Console service. Gets a value indicating whether or not auto-updates have already completed this session. Gets the time of the next scheduled update check. Gets the time the auto-update was unblocked. This represents a banned plugin that attempted an operation. Initializes a new instance of the class. The message describing the invalid operation. This exception that is thrown when a plugin is instructed to load while another plugin with the same assembly name is already present and loaded. Initializes a new instance of the class. Name of the conflicting assembly. Gets the name of the conflicting assembly. An exception to be thrown when policy blocks a plugin from loading. Initializes a new instance of the class. The message to associate with this exception. This exception represents a file that does not implement IDalamudPlugin. Initializes a new instance of the class. The invalid file. Gets the invalid file. This represents an invalid plugin operation. Initializes a new instance of the class. The message describing the invalid operation. Gets the message describing the invalid operation. This represents the base Dalamud plugin exception. An exception to be thrown when policy blocks a plugin from loading. Initializes a new instance of the class. The message to associate with this exception. A builder for creating an instance of . Creates an assembly load context using settings specified on the builder. A new ManagedLoadContext. Set the file path to the main assembly for the context. This is used as the starting point for loading other assemblies. The directory that contains it is also known as the 'app local' directory. The file path. Must not be null or empty. Must be an absolute path. The builder. Replaces the default used by the . Use this feature if the of the is not the Runtime's default load context. i.e. (AssemblyLoadContext.GetLoadContext(Assembly.GetExecutingAssembly) != . The context to set. The builder. Instructs the load context to prefer a private version of this assembly, even if that version is different from the version used by the host application. Use this when you do not need to exchange types created from within the load context with other contexts or the default app context. This may mean the types loaded from this assembly will not match the types from an assembly with the same name, but different version, in the host application. For example, if the host application has a type named Foo from assembly Banana, Version=1.0.0.0 and the load context prefers a private version of Banan, Version=2.0.0.0, when comparing two objects, one created by the host (Foo1) and one created from within the load context (Foo2), they will not have the same type. Foo1.GetType() != Foo2.GetType(). The name of the assembly. The builder. Instructs the load context to first attempt to load assemblies by this name from the default app context, even if other assemblies in this load context express a dependency on a higher or lower version. Use this when you need to exchange types created from within the load context with other contexts or the default app context. The name of the assembly. Pull assmeblies recursively. The builder. Instructs the load context to first search for binaries from the default app context, even if other assemblies in this load context express a dependency on a higher or lower version. Use this when you need to exchange types created from within the load context with other contexts or the default app context. This may mean the types loaded from within the context are force-downgraded to the version provided by the host. can be used to selectively identify binaries which should not be loaded from the default load context. When true, first attemp to load binaries from the default load context. The builder. Add a managed library to the load context. The managed library. The builder. Add a native library to the load context. A native library. The builder. Add a that should be used to search for native and managed libraries. The file path. Must be a full file path. The builder. Add a that should be use to search for resource assemblies (aka satellite assemblies). The file path. Must be a full file path. The builder. Enable unloading the assembly load context. The builder. Read .dll files into memory to avoid locking the files. This is not as efficient, so is not enabled by default, but is required for scenarios like hot reloading. The builder. Shadow copy native libraries (unmanaged DLLs) to avoid locking of these files. This is not as efficient, so is not enabled by default, but is required for scenarios like hot reloading of plugins dependent on native libraries. The builder. Add a that should be use to search for resource assemblies (aka satellite assemblies) relative to any paths specified as . The file path. Must not be a full file path since it will be appended to additional probing path roots. The builder. Represents a managed, .NET assembly. Gets the name of the managed library. Gets the path to file within an additional probing path root. This is typically a combination of the NuGet package ID (lowercased), version, and path within the package. For example, microsoft.data.sqlite/1.0.0/lib/netstandard1.3/Microsoft.Data.Sqlite.dll. Gets the path to file within a deployed, framework-dependent application. For most managed libraries, this will be the file name. For example, MyPlugin1.dll. For runtime-specific managed implementations, this may include a sub folder path. For example, runtimes/win/lib/netcoreapp2.0/System.Diagnostics.EventLog.dll. Create an instance of from a NuGet package. The name of the package. The version of the package. The path within the NuGet package. A managed library. Represents an unmanaged library, such as `libsqlite3`, which may need to be loaded for P/Invoke to work. Gets the name of the native library. This should match the name of the P/Invoke call. For example, if specifying `[DllImport("sqlite3")]`, should be sqlite3. This may not match the exact file name as loading will attempt variations on the name according to OS convention. On Windows, P/Invoke will attempt to load `sqlite3.dll`. On macOS, it will attempt to find `sqlite3.dylib` and `libsqlite3.dylib`. On Linux, it will attempt to find `sqlite3.so` and `libsqlite3.so`. Gets the path to file within a deployed, framework-dependent application. For example, runtimes/linux-x64/native/libsqlite.so. Gets the path to file within an additional probing path root. This is typically a combination of the NuGet package ID (lowercased), version, and path within the package. For example, sqlite/3.13.3/runtimes/linux-x64/native/libsqlite.so. Create an instance of from a NuGet package. The name of the package. The version of the package. The path within the NuGet package. A native library. Represents the configuration for a plugin loader. Initializes a new instance of the class. The full file path to the main assembly for the plugin. Gets the file path to the main assembly. Gets a list of assemblies which should be treated as private. Gets a list of assemblies which should be unified between the host and the plugin. what-are-shared-types Gets or sets a value indicating whether attempt to unify all types from a plugin with the host. This does not guarantee types will unify. what-are-shared-types Gets or sets the default used by the . Use this feature if the of the is not the Runtime's default load context. i.e. (AssemblyLoadContext.GetLoadContext(Assembly.GetExecutingAssembly) != . Gets or sets a value indicating whether the plugin can be unloaded from memory. Gets or sets a value indicating whether to load assemblies into memory in order to not lock files. An implementation of which attempts to load managed and native binaries at runtime immitating some of the behaviors of corehost. Initializes a new instance of the class. Main assembly path. Managed assemblies. Native assemblies. Private assemblies. Default assemblies. Additional probing paths. Resource probing paths. Default load context. If the default load context should be prefered. If the dll is collectible. If the dll should be loaded in memory. If native libraries should be shadow copied. Load an assembly from a filepath. Assembly path. A loaded assembly. Load an assembly. Name of the assembly. Loaded assembly. Loads the unmanaged binary using configured list of native libraries. Unmanaged DLL name. The unmanaged dll handle. Platform specific information. Gets a list of native OS specific library extensions. Gets a list of native OS specific library prefixes. Gets a list of native OS specific managed assembly extensions. This loader attempts to load binaries for execution (both managed assemblies and native libraries) in the same way that .NET Core would if they were originally part of the .NET Core application. This loader reads configuration files produced by .NET Core (.deps.json and runtimeconfig.json) as well as a custom file (*.config files). These files describe a list of .dlls and a set of dependencies. The loader searches the plugin path, as well as any additionally specified paths, for binaries which satisfy the plugin's requirements. Initializes a new instance of the class. The configuration for the plugin. Gets a value indicating whether this plugin is capable of being unloaded. Gets the assembly load context. Create a plugin loader for an assembly file. The file path to the main assembly for the plugin. A function which can be used to configure advanced options for the plugin loader. A loader. The unloads and reloads the plugin assemblies. This method throws if is false. Load the main assembly for the plugin. The assembly. Sets the scope used by some System.Reflection APIs which might trigger assembly loading. See https://github.com/dotnet/coreclr/blob/v3.0.0/Documentation/design-docs/AssemblyLoadContext.ContextualReflection.md for more details. A contextual reflection scope. Disposes the plugin loader. This only does something if is true. When true, this will unload assemblies which which were loaded during the lifetime of the plugin. Class responsible for loading and unloading plugins. NOTE: ALL plugin exposed services are marked as dependencies for from . Default time to wait between plugin unload and plugin assembly unload. An event that fires when the installed plugins have changed. An event that fires when the available plugins have changed. Gets the current Dalamud API level, used to handle breaking changes. Only plugins with this level will be loaded. As of Dalamud 9.x, this always matches the major version number of Dalamud. Gets the number of loaded plugins. Gets a copy of the list of all loaded plugins. Gets a copy of the list of all available plugins. Gets a copy of the list of all plugins with an available update. Gets the main repository. Gets a list of all plugin repositories. The main repo should always be first. Gets a value indicating whether plugins are not still loading from boot. Gets a value indicating whether all added repos are not in progress. Gets or sets a value indicating whether the plugin manager started in safe mode. Gets the object used when initializing plugins. Gets or sets a value indicating whether plugins of all API levels will be loaded. Gets or sets a value indicating whether banned plugins will be loaded. Gets a tracker for plugins that are loading at startup, used to display information to the user. Gets a value indicating whether the given repo manifest should be visible to the user. Repo manifest. If the manifest is visible. Check if a manifest even has an available testing version. The manifest to test. Whether or not a testing version is available. Get a disposable that will lock plugin lists while it is not disposed. You must NEVER use this in async code. The aforementioned disposable. Print to chat any plugin updates and whether they were successful. The list of updated plugin metadata. The header text to send to chat prior to any update info. For a given manifest, determine if the user opted into testing this plugin. Manifest to check. A value indicating whether testing should be used. For a given manifest, determine if the testing version should be used over the normal version. The higher of the two versions is calculated after checking other settings. Manifest to check. A value indicating whether testing should be used. Set the list of repositories to use and downloads their contents. Should be called when the Settings window has been updated or at instantiation. Whether the available plugins changed event should be sent after. A representing the asynchronous operation. Load all plugins, sorted by priority. Any plugins with no explicit definition file or a negative priority are loaded asynchronously. This should only be called during Dalamud startup. The task. Reload the PluginMaster for each repo, filter, and event that the list has updated. Whether to notify that available plugins have changed afterwards. A representing the asynchronous operation. Apply visibility and eligibility filters to the available plugins, then event that the list has updated. Whether to notify that available plugins have changed afterwards. Scan the devPlugins folder for new DLL files that are not already loaded into the manager. They are not loaded, only shown as disabled in the installed plugins window. This is a modified version of LoadAllPlugins that works a little differently. Install a plugin from a repository and load it. The plugin definition. If the testing version should be used. The reason this plugin was loaded. WorkingPluginId this plugin should inherit. A representing the asynchronous operation. Remove a plugin. Plugin to remove. Cleanup disabled plugins. Does not target devPlugins. Update all non-dev plugins. List of plugins to update. Perform a dry run, don't install anything. If this action was performed as part of an auto-update. An implementation to receive progress updates about the installation status. Success or failure and a list of updated plugin metadata. Update a single plugin, provided a valid . The available plugin update. Whether to notify that installed plugins have changed afterwards. Whether or not to actually perform the update, or just indicate success. The status of the update. Delete the plugin configuration, unload/reload it if loaded. The plugin. Throws if the plugin is still loading/unloading. The task. Gets a value indicating whether the given manifest is eligible for ANYTHING. These are hard checks that should not allow installation or loading. Plugin manifest. If the manifest is eligible. Determine if a plugin has been banned by inspecting the manifest. Manifest to inspect. A value indicating whether the plugin/manifest has been banned. Get the reason of a banned plugin by inspecting the manifest. Manifest to inspect. The reason of the ban, if any. Get the plugin that called this method by walking the provided stack trace, or null, if it cannot be determined. At the time, this is naive and shouldn't be used for security-critical checks. The trace to walk. The calling plugin, or null. Get the plugin that called this method by walking the stack, or null, if it cannot be determined. At the time, this is naive and shouldn't be used for security-critical checks. The calling plugin, or null. Resolves the services that a plugin may have a dependency on.
This is required, as the lifetime of a plugin cannot be longer than PluginManager, and we want to ensure that dependency services to be kept alive at least until all the plugins, and thus PluginManager to be gone.
The dependency services.
Check if there are any inconsistencies with our plugins, their IDs, and our profiles. Install a plugin from a repository and load it. The plugin definition. If the testing version should be used. The reason this plugin was loaded. Stream of the ZIP archive containing the plugin that is about to be installed. WorkingPluginId this plugin should inherit. A representing the asynchronous operation. Load a plugin. The associated with the main assembly of this plugin. The already loaded definition, if available. The reason this plugin was loaded. If this plugin should support development features. If this plugin is being loaded at boot. Don't load the plugin, just don't do it. The loaded plugin. Class representing progress of an update operation. Class representing progress of an update operation. Simple class that tracks the internal names and public names of plugins that we are planning to load at startup, and are still actively loading. Gets a value indicating the total load progress. Calculate a set of internal names that are still pending. Set of pending InternalNames. Track a new plugin. The plugin's internal name. The plugin's public name. Mark a plugin as finished loading. The internal name of the plugin. Get the public name for a given internal name. The internal name to look up. The public name. Class responsible for validating a dev plugin. Represents the severity of a validation problem. The problem is informational. The problem is a warning. The problem is fatal. Represents a validation problem. Gets the severity of the validation. Compute the localized description of the problem. Localized string to be shown to the developer. Check for problems in a plugin. The plugin to validate. An list of problems. Thrown when the plugin is not loaded. A plugin must be loaded to validate it. Representing a problem where the plugin does not have a config UI callback. Representing a problem where the plugin does not have a main UI callback. Representing a problem where a command does not have a help text. Name of the command. Representing a problem where a command does not have a help text. Name of the command. Representing a problem where a plugin does not have any tags in its manifest. Representing a problem where a plugin does not have a description in its manifest. Representing a problem where a plugin has no punchline in its manifest. Representing a problem where a plugin has no name in its manifest. Representing a problem where a plugin has no author in its manifest. Representing a problem where a plugin has an outdated API level. Service responsible for profile-related chat commands. Initializes a new instance of the class. Command handler. Profile manager. Plugin manager. Chat handler. Framework. Class representing a single runtime profile. Initializes a new instance of the class. The manager this profile belongs to. The model this profile is tied to. Whether or not this profile is the default profile. Whether or not this profile was initialized during bootup. Gets or sets this profile's name. Gets or sets a value indicating whether this profile shall always be enabled at boot. Gets this profile's guid. Gets a value indicating whether or not this profile is currently enabled. Gets a value indicating whether or not this profile is the default profile. Gets all plugins declared in this profile. Gets this profile's underlying model. Get a disposable that will lock the plugin list while it is not disposed. You must NEVER use this in async code. The aforementioned disposable. Set this profile's state. This cannot be called for the default profile. This will block until all states have been applied. Whether or not the profile is enabled. Whether or not the current state should immediately be applied. Thrown when an untoggleable profile is toggled. A representing the asynchronous operation. Check if this profile contains a specific plugin, and if it is enabled. The ID of the plugin. Null if this profile does not declare the plugin, true if the profile declares the plugin and wants it enabled, false if the profile declares the plugin and does not want it enabled. Add a plugin to this profile with the desired state, or change the state of a plugin in this profile. This will block until all states have been applied. The ID of the plugin. The internal name of the plugin, if available. Whether or not the plugin should be enabled. Whether or not the current state should immediately be applied. A representing the asynchronous operation. Remove a plugin from this profile. This will block until all states have been applied. The ID of the plugin. Whether or not the current state should immediately be applied. Whether or not to throw when a plugin is removed from the default profile, without being in another profile. Used to prevent orphan plugins, but can be ignored when cleaning up old entries. A representing the asynchronous operation. This function tries to migrate all plugins with this internalName which do not have a GUID to the specified GUID. This is best-effort and will probably work well for anyone that only uses regular plugins. InternalName of the plugin to migrate. Guid to use. Exception indicating an issue during a profile operation. Initializes a new instance of the class. Message to pass on. Exception indicating that a plugin was not found in the default profile. Initializes a new instance of the class. The internal name of the plugin causing the error. Exception indicating that the plugin was not found. Initializes a new instance of the class. The internal name of the plugin causing the error. Initializes a new instance of the class. The ID of the plugin causing the error. Class responsible for managing plugin profiles. Initializes a new instance of the class. Dalamud config. Gets the default profile. Gets all profiles, including the default profile. Gets a value indicating whether or not the profile manager is busy enabling/disabling plugins. Get a disposable that will lock the profile list while it is not disposed. You must NEVER use this in async code. The aforementioned disposable. Check if any enabled profile wants a specific plugin enabled. The ID of the plugin. The internal name of the plugin, if available. The state the plugin shall be in, if it needs to be added. Whether or not the plugin should be added to the default preset, if it's not present in any preset. Whether or not the plugin shall be enabled. Check whether a plugin is declared in any profile. The ID of the plugin. Whether or not the plugin is in any profile. Check whether a plugin is only in the default profile. A plugin can never be in the default profile if it is in any other profile. The ID of the plugin. Whether or not the plugin is in the default profile. Add a new profile. The added profile. Clone a specified profile. The profile to clone. The newly cloned profile. Import a profile with a sharing string. The sharing string to import. The imported profile, or null, if the string was invalid. Go through all profiles and plugins, and enable/disable plugins they want active. This will block until all plugins have been loaded/reloaded. A representing the asynchronous operation. Delete a profile. You should definitely apply states after this. It doesn't do it for you. The profile to delete. A representing the asynchronous operation. This function tries to migrate all plugins with this internalName which do not have a GUID to the specified GUID. This is best-effort and will probably work well for anyone that only uses regular plugins. InternalName of the plugin to migrate. Guid to use. Validate profiles for errors. Thrown when a profile is not sane. Class representing a profile. Gets or sets the ID of the profile. Gets or sets the name of the profile. Deserialize a profile into a model. The string to decompress. The parsed model. Thrown when the parsed string is not a valid profile. Serialize this model into a string usable for sharing, without including GUIDs. The serialized representation of the model. Thrown when an unsupported model is serialized. Version 1 of the profile model. Gets the prefix of this version. Gets or sets a value indicating whether or not this profile should always be enabled at boot. Gets or sets a value indicating whether or not this profile is currently enabled. Gets or sets a value indicating this profile's color. Gets or sets the list of plugins in this profile. Class representing a single plugin in a profile. Gets or sets the internal name of the plugin. Gets or sets an ID uniquely identifying this specific instance of a plugin. Gets or sets a value indicating whether or not this entry is enabled. Class representing a single plugin in a profile. Initializes a new instance of the class. The internal name of the plugin. The ID of the plugin. A value indicating whether or not this entry is enabled. Gets the internal name of the plugin. Gets or sets an ID uniquely identifying this specific instance of a plugin. Gets a value indicating whether or not this entry is enabled. Information about an available plugin update. Initializes a new instance of the class. The installed plugin to update. The manifest to use for the update. If the testing version should be used for the update. Gets the currently installed plugin. Gets the available update manifest. Gets a value indicating whether the update should use the testing URL. Gets the effective version to use for the update. Banned plugin version that is blocked from installation. Gets plugin name. Gets plugin assembly version. Gets reason for the ban. This class represents a dev plugin and all facets of its lifecycle. The DLL on disk, dependencies, loaded assembly, etc. Initializes a new instance of the class. Path to the DLL file. The plugin manifest. Gets or sets a value indicating whether this dev plugin should start on boot. Gets or sets a value indicating whether this dev plugin should reload on change. Gets an ID uniquely identifying this specific instance of a devPlugin. Gets a list of validation problems that have been dismissed by the user. Configure this plugin for automatic reloading and enable it. Disable automatic reloading for this plugin. Reload the manifest if it exists, to update possible changes. Thrown if the manifest could not be loaded. This class represents a plugin and all facets of its lifecycle. The DLL on disk, dependencies, loaded assembly, etc. The underlying manifest for this plugin. Initializes a new instance of the class. Path to the DLL file. The plugin manifest. Gets the associated with this plugin. Gets the path to the plugin DLL. Gets the plugin manifest. Gets or sets the current state of the plugin. Gets the AssemblyName plugin, populated during . Plugin type. Gets the plugin name from the manifest. Gets the plugin internal name from the manifest. Gets an optional reason, if the plugin is banned. Gets a value indicating whether the plugin has ever started to load. Gets a value indicating whether the plugin is loaded and running. Gets a value indicating whether this plugin is wanted active by any profile. INCLUDES the default profile. Gets a value indicating whether this plugin's API level is out of date. Gets a value indicating whether the plugin is for testing use only. Gets a value indicating whether or not this plugin is orphaned(belongs to a repo) or not. Gets a value indicating whether or not this plugin is serviced(repo still exists, but plugin no longer does). Gets a value indicating whether this plugin has been banned. Gets a value indicating whether this plugin is dev plugin. Gets a value indicating whether this manifest is associated with a plugin that was installed from a third party repo. Gets a value indicating whether this plugin should be allowed to load. Gets the effective version of this plugin. Gets the effective working plugin ID for this plugin. Gets the service scope for this plugin. Load this plugin. The reason why this plugin is being loaded. Load while reloading. A task. Unload this plugin. This is the same as dispose, but without the "disposed" connotations. This object should stay in the plugin list until it has been actually disposed. How to dispose loader. The task. Reload this plugin. A task. Check if anything forbids this plugin from loading. Whether or not this plugin shouldn't load. Schedule the deletion of this plugin on next cleanup. Schedule or cancel the deletion. Get the repository this plugin was installed from. The plugin repository this plugin was installed from, or null if it is no longer there or if the plugin is a dev plugin. Save this plugin manifest. Why it should be saved. Called before a plugin is reloaded. Creates a new instance of the plugin. Plugin manifest. Service scope. Type of the plugin main class. Instance of . A new instance of the plugin. Clears and disposes all resources associated with the plugin instance. Whether to clear and dispose . Exceptions, if any occurred. Public interface for the local plugin manifest. Gets the 3rd party repo URL that this plugin was installed from. Used to display where the plugin was sourced from on the installed plugin view. This should not be included in the plugin master. This value is null when installed from the main repo. Gets a value indicating whether the plugin should be deleted during the next cleanup. Gets an ID uniquely identifying this specific installation of a plugin. Public interface for the base plugin manifest. Gets the internal name of the plugin, which should match the assembly name of the plugin. Gets the public name of the plugin. Gets a punchline of the plugins functions. Gets the author/s of the plugin. Gets a value indicating whether the plugin can be unloaded asynchronously. Gets the assembly version of the plugin. Gets the assembly version of the plugin's testing variant. Gets the DIP17 channel name. Gets the last time this plugin was updated. Gets a changelog, null if none exists. Gets a list of tags that apply to this plugin. Gets the API level of this plugin. For the current API level, please see for the currently used API level. Gets the API level of the plugin's testing variant. For the current API level, please see for the currently used API level. Gets the number of downloads this plugin has. Gets a value indicating whether the plugin supports profiles. Gets an URL to the website or source code of the plugin. Gets a description of the plugins functions. Gets a message that is shown to users when sending feedback. Gets a value indicating whether the plugin is only available for testing. Gets a list of screenshot image URLs to show in the plugin installer. Gets an URL for the plugin's icon. Information about a plugin, packaged in a json file with the DLL. This variant includes additional information such as if the plugin is disabled and if it was installed from a testing URL. This is designed for use with manifests on disk. Gets or sets a value indicating whether the plugin is disabled and should not be loaded. This value supersedes the ".disabled" file functionality and should not be included in the plugin master. Gets or sets a value indicating whether the plugin should only be loaded when testing is enabled. This value supersedes the ".testing" file functionality and should not be included in the plugin master. Gets a value indicating whether this manifest is associated with a plugin that was installed from a third party repo. Gets the effective version of this plugin. Gets the effective API level of this plugin. Save a plugin manifest to file. Path to save at. The reason the manifest was saved. Loads a plugin manifest from file. Path to the manifest. A object. A standardized way to get the plugin DLL name that should accompany a manifest file. May not exist. Manifest directory. The manifest. The file. A standardized way to get the manifest file that should accompany a plugin DLL. May not exist. The plugin DLL. The file. A standardized way to get the obsolete .disabled file that should accompany a plugin DLL. May not exist. The plugin DLL. The .disabled file. A standardized way to get the obsolete .testing file that should accompany a plugin DLL. May not exist. The plugin DLL. The .testing file. Information about a plugin, packaged in a json file with the DLL. This variant includes additional information such as if the plugin is disabled and if it was installed from a testing URL. This is designed for use with manifests on disk. Gets or sets the plugin repository this manifest came from. Used in reporting which third party repo a manifest may have come from in the plugins available view. This functionality should not be included in the plugin master. Gets or sets the changelog to be shown when obtaining the testing version of the plugin. Gets a value indicating whether this plugin is eligible for testing. A fake enum representing "special" sources for plugins. Indication that this plugin came from the official Dalamud repository. Indication that this plugin is loaded as a dev plugin. See also . Plugin Definition. Initializes a new instance of the struct. plugin dll file. plugin manifest. plugin dev indicator. Gets plugin DLL File. Gets plugin manifest. Gets a value indicating whether plugin is a dev plugin. Sort plugin definitions by priority. plugin definition 1 to compare. plugin definition 2 to compare. sort order. Specify how to dispose . Do not dispose the plugin loader. Whether to wait a few before disposing the loader, just in case there are s from the plugin that are still running. Immediately dispose the plugin loader. Information about a plugin, packaged in a json file with the DLL. Gets a list of category tags defined on the plugin. Gets or sets a value indicating whether or not the plugin is hidden in the plugin installer. This value comes from the plugin master and is in addition to the list of hidden names kept by Dalamud. Gets the version of the game this plugin works with. Gets the download link used to install the plugin. Gets the download link used to update the plugin. Gets the download link used to get testing versions of the plugin. Gets the required Dalamud load step for this plugin to load. Takes precedence over LoadPriority. Valid values are: 0. During Framework.Tick, when drawing facilities are available. 1. During Framework.Tick. 2. No requirement. Gets a value indicating whether Dalamud must load this plugin not at the same time with other plugins and the game. Gets the load priority for this plugin. Higher values means higher priority. 0 is default priority. Gets a value indicating whether this plugin accepts feedback. This class represents a single plugin repository. The URL of the official main repository. Initializes a new instance of the class. An instance of . The plugin master URL. Whether the plugin repo is enabled. Gets the pluginmaster.json URL. Gets a value indicating whether this plugin repository is from a third party. Gets a value indicating whether this repo is enabled. Gets the plugin master list of available plugins. Gets the initialization state of the plugin repository. Gets a new instance of the class for the main repo. An instance of . The new instance of main repository. Reload the plugin master asynchronously in a task. The new state. Values representing plugin repository state. State is unknown. Currently loading. Load was successful. Load failed. Values representing plugin load state. Plugin is defined, but unloaded. Plugin has thrown an error during unload. Currently unloading. Load is successful. Plugin has thrown an error during loading. Currently loading. This plugin couldn't load one of its dependencies. Plugin update status. Enum containing possible statuses of a plugin update. The update is pending. The update failed to download. The outdated plugin did not unload correctly. The updated plugin did not load correctly. The updated plugin is already up to date. The update succeeded. Gets the plugin internal name. Gets the plugin name. Gets the plugin version. Gets or sets a value indicating the status of the update. Gets a value indicating whether the plugin has a changelog if it was updated. Get a localized version of the update status. Status to localize. Localized text. This exception is thrown when a null value is provided for a data cache or it does not implement the expected type. Initializes a new instance of the class. Tag of the data cache. The assembly name of the caller. The type expected. The thrown exception. This exception is thrown when a data cache is accessed with the wrong type. Initializes a new instance of the class. Tag of the data cache. Assembly name of the plugin creating the cache. The requested type. The stored type. This exception is thrown when a null value is provided for a data cache or it does not implement the expected type. Initializes a new instance of the class. Tag of the data cache. The type expected. This exception is thrown when an IPC errors are encountered. Initializes a new instance of the class. Initializes a new instance of the class. The message that describes the error. Initializes a new instance of the class. The message that describes the error. The exception that is the cause of the current exception. This exception is thrown when an IPC method is invoked and the number of types does not match what was previously registered. Initializes a new instance of the class. Name of the IPC method. The amount of types requested when checking out the IPC. The amount of types registered by the IPC. This exception is thrown when an IPC method is invoked, but no actions or funcs have been registered yet. Initializes a new instance of the class. Name of the IPC method. This exception is thrown when an IPC method is checked out, but the type does not match what was previously registered. Initializes a new instance of the class. Name of the IPC method. The before type. The after type. The exception that is the cause of the current exception. This exception is thrown when a null value is passed to an IPC requiring a value type. Initializes a new instance of the class. Name of the IPC. The type expected. Index of the failing argument. The backing interface for the provider ("server") half of an IPC channel. This interface is used to expose methods to other plugins via RPC, as well as to allow other plugins to subscribe to notifications from this plugin. An interface for all IPC subscribers. : ICallGateSubscriber : ICallGateSubscriber : ICallGateSubscriber : ICallGateSubscriber This class facilitates inter-plugin communication. Gets the thread-safe view of the registered gates. Gets the provider associated with the specified name. Name of the IPC registration. A CallGate registered under the given name. Remove empty gates from . This class implements the channels and serialization needed for the typed gates to interact with each other. The actual storage. A copy of the actual storage, that will be cleared and populated depending on changes made to . Initializes a new instance of the class. The name of this IPC registration. Gets the name of the IPC registration. Gets a list of delegate subscriptions for when SendMessage is called. Gets or sets an action for when InvokeAction is called. Gets or sets a func for when InvokeFunc is called. Gets a value indicating whether this is not being used. Invoke all actions that have subscribed to this IPC. Message arguments. Invoke an action registered for inter-plugin communication. Action arguments. This is thrown when the IPC publisher has not registered a func for calling yet. Invoke a function registered for inter-plugin communication. Func arguments. The return value. The return type. This is thrown when the IPC publisher has not registered a func for calling yet. This class facilitates inter-plugin communication. Initializes a new instance of the class. The name of the IPC registration. Gets a value indicating whether this IPC call gate has an associated Action. Only exposed to s. Gets a value indicating whether this IPC call gate has an associated Function. Only exposed to s. Gets the count of subscribers listening for messages through this call gate. Only exposed to s, and can be used to determine if messages should be sent through the gate. Gets the underlying channel implementation. Removes the associated Action from this call gate, effectively disabling RPC calls. Removes the associated Function from this call gate. Registers a for use by other plugins via RPC. This Delegate must satisfy the constraints of an type as defined by the interface, meaning they may not return a value and must have the proper number of parameters. Action to register. Registers a for use by other plugins via RPC. This Delegate must satisfy the constraints of a type as defined by the interface, meaning its return type and parameters must match accordingly. Func to register. Registers a (of type ) that will be called when the providing plugin calls . This method can be used to receive notifications of events or data updates from a specific plugin. Action to subscribe. Removes a subscription created through . Note that the to be unsubscribed must be the same instance as the one passed in. Action to unsubscribe. Executes the Action registered for this IPC call gate via . This method is intended to be called by plugins wishing to access another plugin via RPC. The parameters passed to this method will be passed to the owning plugin, with appropriate serialization for complex data types. Primitive data types will be passed as-is. The target Action will be called on the same thread as the caller. Action arguments. This is thrown when the IPC publisher has not registered an action for calling yet. Executes the Function registered for this IPC call gate via . This method is intended to be called by plugins wishing to access another plugin via RPC. The parameters passed to this method will be passed to the owning plugin, with appropriate serialization for complex data types. Primitive data types will be passed as-is. The target Action will be called on the same thread as the caller. Parameter args. The return value. The return type. This is thrown when the IPC publisher has not registered a func for calling yet. Send the given arguments to all subscribers (through ) of this IPC call gate. This method is intended to be used by the provider plugin to notify all subscribers of an event or data update. The parameters passed to this method will be passed to all subscribers, with appropriate serialization for complex data types. Primitive data types will be passed as-is. The subscription actions will be called sequentially in order of registration on the same thread as the caller. Delegate arguments. JSON converter for IGameObject and its derived types. A helper struct for reference-counted, type-safe shared access across plugin boundaries. Name of the data. The assembly name of the initial creator. A not-necessarily distinct list of current users. Also used as a reference count tracker. The type the data was registered as. A reference to data. Initializes a new instance of the struct. Name of the data. The assembly name of the initial creator. A reference to data. The type of the data. Creates a new instance of the struct, using the given data generator function. The name for the data cache. The assembly name of the initial creator. The function that generates the data if it does not already exist. The type of the stored data - needs to be a reference type that is shared through Dalamud itself, not loaded by the plugin. The new instance of . Attempts to fetch the data. The name of the caller assembly. The value, if succeeded. The exception, if failed. Desired type of the data. true on success. This class facilitates sharing data-references of standard types between plugins without using more expensive IPC. Dictionary of cached values. Note that is being used, as it does its own locking, effectively preventing calling the data generator multiple times concurrently. If a data cache for exists, return the data. Otherwise, call the function to create data and store it as a new cache. In either case, the calling assembly will be added to the current consumers on success. The type of the stored data - needs to be a reference type that is shared through Dalamud itself, not loaded by the plugin. The name for the data cache. The function that generates the data if it does not already exist. Either the existing data for or the data generated by . Thrown if a cache for exists, but contains data of a type not assignable to . Thrown if the stored data for a cache is null. Thrown if throws an exception or returns null. Notifies the DataShare that the calling assembly no longer uses the data stored for (or uses it one time fewer). If no assembly uses the data anymore, the cache will be removed from the data share and if it is an IDisposable, Dispose will be called on it. The name for the data cache. Obtain the data for the given , if it exists and has the correct type. Add the calling assembly to the current consumers if true is returned. The type of the stored data - needs to be a reference type that is shared through Dalamud itself, not loaded by the plugin. The name for the data cache. The requested data on success, null otherwise. True if the requested data exists and is assignable to the requested type. Obtain the data for the given , if it exists and has the correct type. Add the calling assembly to the current consumers if non-null is returned. The type of the stored data - needs to be a reference type that is shared through Dalamud itself, not loaded by the plugin. The name for the data cache. The requested data. Thrown if is not registered. Thrown if a cache for exists, but contains data of a type not assignable to . Thrown if the stored data for a cache is null. Obtain a read-only list of data shares. All currently subscribed tags, their creator names and all their users. Obtain the last assembly name in the stack trace that is not a system or dalamud assembly. Causes for a change to the plugin list. An installer-initiated update reloaded plugins. An auto-update reloaded plugins. This enum reflects reasons for loading a plugin. We don't know why this plugin was loaded. This plugin was loaded because it was installed with the plugin installer. This plugin was loaded because it was just updated. This plugin was loaded because it was told to reload. This plugin was loaded because the game was started or Dalamud was reinjected. Service provider for addon event management. Delegate to be called when an event is received. Event type for this event handler. The parent addon for this event handler. The specific node that will trigger this event handler. Registers an event handler for the specified addon, node, and type. The parent addon for this event. The node that will trigger this event. The event type for this event. The handler to call when event is triggered. IAddonEventHandle used to remove the event. Null if no event was added. Unregisters an event handler with the specified event id and event type. Unique handle identifying this event. Force the game cursor to be the specified cursor. Which cursor to use. Un-forces the game cursor. This class provides events for in-game addon lifecycles. Delegate for receiving addon lifecycle event messages. The event type that triggered the message. Information about what addon triggered the message. Register a listener that will trigger on the specified event and any of the specified addons. Event type to trigger on. Addon names that will trigger the handler to be invoked. The handler to invoke. Register a listener that will trigger on the specified event only for the specified addon. Event type to trigger on. The addon name that will trigger the handler to be invoked. The handler to invoke. Register a listener that will trigger on the specified event for any addon. Event type to trigger on. The handler to invoke. Unregister listener from specified event type and specified addon names. If a specific handler is not provided, all handlers for the event type and addon names will be unregistered. Event type to deregister. Addon names to deregister. Optional specific handler to remove. Unregister all listeners for the specified event type and addon name. If a specific handler is not provided, all handlers for the event type and addons will be unregistered. Event type to deregister. Addon name to deregister. Optional specific handler to remove. Unregister an event type handler.
This will only remove a handler that is added via .
If a specific handler is not provided, all handlers for the event type and addons will be unregistered. Event type to deregister. Optional specific handler to remove.
Unregister all events that use the specified handlers. Handlers to remove. This collection represents the list of available Aetherytes in the Teleport window. Gets the amount of Aetherytes the local player has unlocked. Gets a Aetheryte Entry at the specified index. Index. A at the specified index. This collection represents the buddies present in your squadron or trust party. It does not include the local player. Gets the amount of battle buddies the local player has. Gets the active companion buddy. Gets the active pet buddy. Gets a battle buddy at the specified spawn index. Spawn index. A at the specified spawn index. Gets the address of the companion buddy. The memory address of the companion buddy. Gets the address of the pet buddy. The memory address of the pet buddy. Gets the address of the battle buddy at the specified index of the buddy list. The index of the battle buddy. The memory address of the battle buddy. Create a reference to a buddy. The address of the buddy in memory. object containing the requested data. This class handles interacting with the native chat UI. A delegate type used with the event. The type of chat. The timestamp of when the message was sent. The sender name. The message sent. A value indicating whether the message was handled or should be propagated. A delegate type used with the event. The type of chat. The timestamp of when the message was sent. The sender name. The message sent. A value indicating whether the message was handled or should be propagated. A delegate type used with the event. The type of chat. The timestamp of when the message was sent. The sender name. The message sent. A delegate type used with the event. The type of chat. The timestamp of when the message was sent. The sender name. The message sent. Event that will be fired when a chat message is sent to chat by the game. Event that allows you to stop messages from appearing in chat by setting the isHandled parameter to true. Event that will be fired when a chat message is handled by Dalamud or a Plugin. Event that will be fired when a chat message is not handled by Dalamud or a Plugin. Gets the ID of the last linked item. Gets the flags of the last linked item. Gets the dictionary of Dalamud Link Handlers. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. Queue a chat message. Dalamud will send queued messages on the next framework event. A message to send. String to prepend message with "[messageTag] ". Color to display the message tag with. This class represents the state of the game client at the time of access. A delegate type used for the event. The new ClassJob id. A delegate type used for the event. The ClassJob id. The level of the corresponding ClassJob. A delegate type used for the event. The type of logout. The success/failure code. Event that gets fired when the current Territory changes. Event that fires when a characters ClassJob changed. Event that fires when any character level changes, including levels for a not-currently-active ClassJob (e.g. PvP matches, DoH/DoL). Event that fires when a character is logging in, and the local character object is available. Event that fires when a character is logging out. Event that fires when a character is entering PvP. Event that fires when a character is leaving PvP. Event that gets fired when a duty is ready. Gets the language of the client. Gets the current Territory the player resides in. Gets the current Map the player resides in. Gets the local player character, if one is present. Gets the content ID of the local character. Gets a value indicating whether a character is logged in. Gets a value indicating whether or not the user is playing PvP. Gets a value indicating whether or not the user is playing PvP, excluding the Wolves' Den. Gets a value indicating whether the client is currently in Group Pose (GPose) mode. Check whether the client is currently "idle". This means a player is not logged in, or is notctively in combat or doing anything that we may not want to disrupt. An outvar containing the first observed condition blocking the "idle" state. 0 if idle. Returns true if the client is idle, false otherwise. Check whether the client is currently "idle". This means a player is not logged in, or is notctively in combat or doing anything that we may not want to disrupt. Returns true if the client is idle, false otherwise. This class manages registered in-game slash commands. Gets a read-only list of all registered commands. Process a command in full. The full command string. True if the command was found and dispatched. Dispatch the handling of a command. The command to dispatch. The provided arguments. A object describing this command. Add a command handler, which you can use to add your own custom commands to the in-game chat. The command to register. A object describing the command. If adding was successful. Remove a command from the command handlers. The command to remove. If the removal was successful. Provides access to conditions (generally player state). You can check whether a player is in combat, mounted, etc. A delegate type used with the event. The changed condition. The value the condition is set to. Event that gets fired when a condition is set. Should only get fired for actual changes, so the previous value will always be !value. Gets the current max number of conditions. Gets the condition array base pointer. Check the value of a specific condition/state flag. The condition flag to check. Convert the conditions array to a set of all set condition flags. Returns a set. Check if any condition flags are set. Whether any single flag is set. Check if any provided condition flags are set. Whether any single provided flag is set. The condition flags to check. Check that the specified condition flags are *not* present in the current conditions. The array of flags to check. Returns false if any of the listed conditions are present, true otherwise. Check that *only* any of the condition flags specified are set. The array of flags to check. Returns a bool. Check that *only* the specified flags are set. Unlike , this method requires that all the specified flags are set and no others are present. The array of flags to check. Returns a bool. Provides functions to register console commands and variables. Gets this plugin's namespace prefix, derived off its internal name. This is the prefix that all commands and variables registered by this plugin will have. If the internal name is "SamplePlugin", the prefix will be "sampleplugin.". Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The added command. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The first argument to the command. The added command. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The first argument to the command. The second argument to the command. The added command. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The first argument to the command. The second argument to the command. The third argument to the command. The added command. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The first argument to the command. The second argument to the command. The third argument to the command. The fourth argument to the command. The added command. Add a command to the console. The name of the command. A description of the command. Function to invoke when the command has been called. Must return a indicating success. The first argument to the command. The second argument to the command. The third argument to the command. The fourth argument to the command. The fifth argument to the command. The added command. Add a variable to the console. The name of the variable. A description of the variable. The default value of the variable. The type of the variable. The added variable. Add an alias to a console entry. The name of the entry to add an alias for. The alias to use. The added alias. Get the value of a variable. The name of the variable. The type of the variable. The value of the variable. Set the value of a variable. The name of the variable. The value to set. The type of the value to set. Remove an entry from the console. The entry to remove. This class provides methods for interacting with the game's context menu. A delegate type used for the event. Information about the currently opening menu. Event that gets fired whenever any context menu is opened. Use this event and then check if the triggering addon is the desired addon, then add custom context menu items to the provided args. Adds a menu item to a context menu. The type of context menu to add the item to. The item to add. Used to add a context menu entry to all context menus. Removes a menu item from a context menu. The type of context menu to remove the item from. The item to add. Used to remove a context menu entry from all context menus. if the item was removed, if it was not found. This class provides data for Dalamud-internal features, but can also be used by plugins if needed. Gets the current game client language. Gets a object which gives access to any excel/game data. Gets an object which gives access to any of the game's sheet data. Gets a value indicating whether the game data files have been modified by another third-party tool. Get an with the given Excel sheet row type. Language of the sheet to get. Leave or empty to use the default language. Explicitly provide the name of the sheet to get. Leave to use 's sheet name. Explicit names are necessary for quest/dungeon/cutscene sheets. The excel sheet type to get. The , giving access to game rows. If the sheet type you want has subrows, use instead. Sheet name was not specified neither via 's nor . does not have a valid . Sheet does not exist. Sheet had a mismatched column hash. Sheet does not support nor . Sheet was not a . Get a with the given Excel sheet row type. Language of the sheet to get. Leave or empty to use the default language. Explicitly provide the name of the sheet to get. Leave to use 's sheet name. Explicit names are necessary for quest/dungeon/cutscene sheets. The excel sheet type to get. The , giving access to game rows. If the sheet type you want has only rows, use instead. Sheet name was not specified neither via 's nor . does not have a valid . Sheet does not exist. Sheet had a mismatched column hash. Sheet does not support nor . Sheet was not a . Get a with the given path. The path inside of the game files. The of the file. Get a with the given path, of the given type. The type of resource. The path inside of the game files. The of the file. Get a with the given path, of the given type. The type of resource. The path inside of the game files. Cancellation token. A containing the of the file on success. Check if the file with the given path exists within the game's index files. The path inside of the game files. True if the file exists. Class used to interface with the server info bar. Gets a read-only copy of the list of all DTR bar entries. If the list changes due to changes in order or insertion/removal, then this property will return a completely new object on getter invocation. The returned object is safe to use from any thread, and will not change. Get a DTR bar entry. This allows you to add your own text, and users to sort it. A user-friendly name for sorting. The text the entry shows. The entry object used to update, hide and remove the entry. Thrown when an entry with the specified title exists. Removes a DTR bar entry from the system. Title of the entry to remove. Remove operation is not guaranteed to be immediately effective. Calls to may result in an entry marked to be remove being revived and used again. This class represents the state of the currently occupied duty. Event that gets fired when the duty starts. Triggers when the "Duty Start" message displays, and on the removal of the ring at duty's spawn. Does not trigger when loading into a duty that was in progress, or from loading in after a disconnect. Event that gets fired when everyone in the party dies and the screen fades to black. Event that gets fired when the "Duty Recommence" message displays, and on the removal of the ring at duty's spawn. Event that gets fired when the duty is completed successfully. Gets a value indicating whether the current duty has been started. This collection represents the currently available Fate events. Gets the address of the Fate table. Gets the amount of currently active Fates. Get an actor at the specified spawn index. Spawn index. A at the specified spawn index. Gets a value indicating whether this Fate is still valid in memory. The fate to check. True or false. Gets the address of the Fate at the specified index of the fate table. wo The index of the Fate. The memory address of the Fate. Create a reference to a FFXIV actor. The offset of the actor in memory. object containing requested data. This class facilitates interacting with and creating native in-game "fly text". The delegate defining the type for the FlyText event. The FlyTextKind. See . Value1 passed to the native flytext function. Value2 passed to the native flytext function. Seems unused. Text1 passed to the native flytext function. Text2 passed to the native flytext function. Color passed to the native flytext function. Changes flytext color. Icon ID passed to the native flytext function. Only displays with select FlyTextKind. Damage Type Icon ID passed to the native flytext function. Displayed next to damage values to denote damage type. The vertical offset to place the flytext at. 0 is default. Negative values result in text appearing higher on the screen. This does not change where the element begins to fade. Whether this flytext has been handled. If a subscriber sets this to true, the FlyText will not appear. The FlyText event that can be subscribed to. Displays a fly text in-game on the local player. The FlyTextKind. See . The index of the actor to place flytext on. Indexing unknown. 1 places flytext on local player. Value1 passed to the native flytext function. Value2 passed to the native flytext function. Seems unused. Text1 passed to the native flytext function. Text2 passed to the native flytext function. Color passed to the native flytext function. Changes flytext color. Icon ID passed to the native flytext function. Only displays with select FlyTextKind. Damage Type Icon ID passed to the native flytext function. Displayed next to damage values to denote damage type. This class represents the Framework of the native game client and grants access to various subsystems. Choosing between RunOnFrameworkThread and Run
  • If you do need to do use await and have your task keep executing on the main thread after waiting is done, use Run.
  • If you need to call or , use RunOnFrameworkThread. It also skips the task scheduler if invoked already from the framework thread.
The game is likely to completely lock up if you call above synchronous function and getter, because starting a new task by default runs on , which would make the task run on the framework thread if invoked via Run. This includes Task.Factory.StartNew and Task.ContinueWith. Use Task.Run if you need to start a new task from the callback specified to Run, as it will force your task to be run in the default thread pool. See to see the difference in behaviors, and how would a misuse of these functions result in a deadlock.
A delegate type used with the event. The Framework instance. Event that gets fired every time the game framework updates. Gets the last time that the Framework Update event was triggered. Gets the last time in UTC that the Framework Update event was triggered. Gets the delta between the last Framework Update and the currently executing one. Gets a value indicating whether currently executing code is running in the game's framework update thread. Gets a value indicating whether game Framework is unloading. Gets a that runs tasks during Framework Update event. The task factory. Returns a task that completes after the given number of ticks. Number of ticks to delay. The cancellation token. A new that gets resolved after specified number of ticks happen. The continuation will run on the framework thread by default. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Function to call. The cancellation token. Task representing the pending or already completed function. Starting new tasks and waiting on them synchronously from this callback will completely lock up the game. Use await if you need to wait on something from an async callback. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Return type. Function to call. The cancellation token. Task representing the pending or already completed function. Starting new tasks and waiting on them synchronously from this callback will completely lock up the game. Use await if you need to wait on something from an async callback. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Function to call. The cancellation token. Task representing the pending or already completed function. Starting new tasks and waiting on them synchronously from this callback will completely lock up the game. Use await if you need to wait on something from an async callback. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Return type. Function to call. The cancellation token. Task representing the pending or already completed function. Starting new tasks and waiting on them synchronously from this callback will completely lock up the game. Use await if you need to wait on something from an async callback. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Return type. Function to call. Task representing the pending or already completed function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Function to call. Task representing the pending or already completed function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Return type. Function to call. Task representing the pending or already completed function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function right away if this function has been called from game's Framework.Update thread, or otherwise run on next Framework.Update call. Function to call. Task representing the pending or already completed function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function in upcoming Framework.Tick call. Return type. Function to call. Wait for given timespan before calling this function. Count given number of Framework.Tick calls before calling this function. This takes precedence over delay parameter. Cancellation token which will prevent the execution of this function if wait conditions are not met. Task representing the pending function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function in upcoming Framework.Tick call. Function to call. Wait for given timespan before calling this function. Count given number of Framework.Tick calls before calling this function. This takes precedence over delay parameter. Cancellation token which will prevent the execution of this function if wait conditions are not met. Task representing the pending function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function in upcoming Framework.Tick call. Return type. Function to call. Wait for given timespan before calling this function. Count given number of Framework.Tick calls before calling this function. This takes precedence over delay parameter. Cancellation token which will prevent the execution of this function if wait conditions are not met. Task representing the pending function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. Run given function in upcoming Framework.Tick call. Function to call. Wait for given timespan before calling this function. Count given number of Framework.Tick calls before calling this function. This takes precedence over delay parameter. Cancellation token which will prevent the execution of this function if wait conditions are not met. Task representing the pending function. await, Task.Factory.StartNew or alike will continue off the framework thread. Awaiting on the returned from RunOnFrameworkThread, Run, or RunOnTick right away inside the callback specified to this function has a chance of locking up the game. Do not do await framework.RunOnFrameworkThread(...); directly or indirectly from the delegate passed to this function. See the remarks on if you need to choose which one to use, between Run and RunOnFrameworkThread. Note that RunOnTick is a fancy version of RunOnFrameworkThread. This class represents the game's configuration. Accessing -typed properties such as , directly or indirectly via , , or alike will block, if the game is not done loading.
Therefore, avoid accessing configuration from your plugin constructor, especially if your plugin sets to 2 and to true. If property access from the plugin constructor is desired, do the value retrieval asynchronously via ; do not wait for the result right away.
Event which is fired when any game config option is changed. Event which is fired when a system config option is changed. Event which is fired when a UiConfig option is changed. Event which is fired when a UiControl config option is changed. Gets the collection of config options that persist between characters. Gets the collection of config options that are character specific. Gets the collection of config options that are control mode specific. (Mouse and Keyboard / Gamepad). Attempts to get a boolean config value from the System section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a uint config value from the System section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a float config value from the System section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a string config value from the System section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get the properties of a UInt option from the System section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a Float option from the System section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get a string config value as a gamepad button enum value from the UiConfig section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get the properties of a String option from the System section. Option to get the properties of. Details of the option: Default Value. A value representing the success. Attempts to get a boolean config value from the UiConfig section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a uint config value from the UiConfig section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a float config value from the UiConfig section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a string config value from the UiConfig section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get the properties of a UInt option from the UiConfig section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a Float option from the UiConfig section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a String option from the UiConfig section. Option to get the properties of. Details of the option: Default Value. A value representing the success. Attempts to get a boolean config value from the UiControl section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a uint config value from the UiControl section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a float config value from the UiControl section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get a string config value from the UiControl section. Option to get the value of. The returned value of the config option. A value representing the success. Attempts to get the properties of a UInt option from the UiControl section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a Float option from the UiControl section. Option to get the properties of. Details of the option: Minimum, Maximum, and Default values. A value representing the success. Attempts to get the properties of a String option from the UiControl section. Option to get the properties of. Details of the option: Default Value. A value representing the success. Set a boolean config option in the System config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a unsigned integer config option in the System config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a float config option in the System config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a string config option in the System config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a boolean config option in the UiConfig section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a unsigned integer config option in the UiConfig section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a float config option in the UiConfig section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a string config option in the UiConfig section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a boolean config option in the UiControl config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a uint config option in the UiControl config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a float config option in the UiControl config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. Set a string config option in the UiControl config section. Note: Not all config options will be be immediately reflected in the game. Name of the config option. New value of the config option. Throw if the config option is not found. Thrown if the name of the config option is found, but the struct was not. A class handling many aspects of the in-game UI. Event which is fired when the game UI hiding is toggled. Event that is fired when the currently hovered item changes. Event that is fired when the currently hovered action changes. Gets a value indicating whether the game UI is hidden. Gets or sets the item ID that is currently hovered by the player. 0 when no item is hovered. If > 1.000.000, subtract 1.000.000 and treat it as HQ. Gets the action ID that is current hovered by the player. 0 when no action is hovered. Opens the in-game map with a flag on the location of the parameter. Link to the map to be opened. True if there were no errors and it could open the map. Converts in-world coordinates to screen coordinates (upper left corner origin). Coordinates in the world. Converted coordinates. True if worldPos corresponds to a position in front of the camera and screenPos is in the viewport. Converts in-world coordinates to screen coordinates (upper left corner origin). Coordinates in the world. Converted coordinates. True if screenPos corresponds to a position inside the camera viewport. True if worldPos corresponds to a position in front of the camera. Converts screen coordinates to in-world coordinates via raycasting. Screen coordinates. Converted coordinates. How far to search for a collision. True if successful. On false, worldPos's contents are undefined. Gets a pointer to the game's UI module. IntPtr pointing to UI module. Gets the pointer to the Addon with the given name and index. Name of addon to find. Index of addon to find (1-indexed). nint.Zero if unable to find UI, otherwise nint pointing to the start of the addon. Find the agent associated with an addon, if possible. The addon name. A pointer to the agent interface. Find the agent associated with an addon, if possible. The addon address. A pointer to the agent interface. Find the agent associated with an addon, if possible. The addon address. A pointer to the agent interface. Service responsible for the creation of hooks. Available hooking backends. Choose the best backend automatically. Use Reloaded hooks. Use MinHook. You should never have to use this without talking to us first. Initialize members decorated with the . Initialize any delegate members decorated with the . Fill out any IntPtr members decorated with the with the resolved address. Errors for fallible signatures will be logged. The object to initialize. Creates a hook by replacing the original address with an address pointing to a newly created jump to the detour. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. The hook with the supplied parameters. Delegate of detour. Creates a hook by rewriting import table address. Module to check for. Current process' main module if null. Name of the DLL, including the extension. Decorated name of the function. Hint or ordinal. 0 to unspecify. Callback function. Delegate must have a same original function prototype. The hook with the supplied parameters. Delegate of detour. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A name of the module currently loaded in the memory. (e.g. ws2_32.dll). A name of the exported function name (e.g. send). Callback function. Delegate must have a same original function prototype. Hooking library to use. The hook with the supplied parameters. Delegate of detour. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Hooking library to use. The hook with the supplied parameters. Delegate of detour. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Hooking library to use. The hook with the supplied parameters. Delegate of detour. Creates a hook. Hooking address is inferred by calling to GetProcAddress() function. The hook is not activated until Enable() method is called. Please do not use MinHook unless you have thoroughly troubleshot why Reloaded does not work. A memory address to install a hook. Callback function. Delegate must have a same original function prototype. Hooking library to use. The hook with the supplied parameters. Delegate of detour. Creates a hook from a signature into the Dalamud target module. Signature of function to hook. Callback function. Delegate must have a same original function prototype. Hooking library to use. The hook with the supplied parameters. Delegate of detour. This class provides events for the in-game inventory. Delegate function to be called when inventories have been changed. This delegate sends the entire set of changes recorded. The events. Delegate function to be called for each change to inventories. This delegate sends individual events for changes. The event try that triggered this message. Data for the triggered event. Delegate function to be called for each change to inventories. This delegate sends individual events for changes. The event arg type. Data for the triggered event. Event that is fired when the inventory has been changed.
Note that some events, such as , , and currently is subject to reinterpretation as , , and .
Use if you do not want such reinterpretation.
Event that is fired when the inventory has been changed, without trying to interpret two inventory slot changes as a move event as appropriate.
In other words, , , and currently do not fire in this event.
Event that is fired when an item is added to an inventory.
If this event is a part of multi-step event, then this event will not be called.
Use if you do not want such reinterpretation.
Event that is fired when an item is removed from an inventory.
If this event is a part of multi-step event, then this event will not be called.
Use if you do not want such reinterpretation.
Event that is fired when an items properties are changed.
If this event is a part of multi-step event, then this event will not be called.
Use if you do not want such reinterpretation.
Event that is fired when an item is moved from one inventory into another. Event that is fired when an item is split from one stack into two. Event that is fired when an item is merged from two stacks into one. Gets all item slots of the specified inventory type. The type of inventory to get the items for. A read-only span of all items in the specified inventory type. Class offering cancellation tokens for common gameplay events. Gets a token that is cancelled when Dalamud is unloading. Gets a token that is cancelled when the game is shutting down. Gets a token that is cancelled when a character is logging out. This class handles interacting with game network events. The delegate type of a network message event. The pointer to the raw data. The operation ID code. The source actor ID. The taret actor ID. The direction of the packed. Event that is called when a network message is sent/received. Exposes the game gamepad state to dalamud. Will block game's gamepad input if is set. Gets the pointer to the current instance of the GamepadInput struct. Gets the left analogue sticks tilt vector. Gets the right analogue sticks tilt vector. Gets whether has been pressed. Only true on first frame of the press. If ImGuiConfigFlags.NavEnableGamepad is set, this is unreliable. The button to check for. 1 if pressed, 0 otherwise. Gets whether is being pressed. True in intervals if button is held down. If ImGuiConfigFlags.NavEnableGamepad is set, this is unreliable. The button to check for. 1 if still pressed during interval, 0 otherwise or in between intervals. Gets whether has been released. Only true the frame after release. If ImGuiConfigFlags.NavEnableGamepad is set, this is unreliable. The button to check for. 1 if released, 0 otherwise. Gets the raw state of . Is set the entire time a button is pressed down. The button to check for. 1 the whole time button is pressed, 0 otherwise. This class converts in-memory Job gauge data to structs. Gets the address of the JobGauge data. Get the JobGauge for a given job. A JobGauge struct from ClientState.Structs.JobGauge. A JobGauge. Wrapper around the game keystate buffer, which contains the pressed state for all keyboard keys, indexed by virtual vkCode. The stored key state is actually a combination field, however the below ephemeral states are consumed each frame. Setting the value may be mildly useful, however retrieving the value is largely pointless. In testing, it wasn't possible without setting the statue manually. index & 0 = key pressed. index & 1 = key down (ephemeral). index & 2 = key up (ephemeral). index & 3 = short key press (ephemeral). Get or set the key-pressed state for a given vkCode. The virtual key to change. Whether the specified key is currently pressed. If the vkCode is not valid. Refer to or . If the set value is non-zero. Gets the value in the index array. The virtual key to change. The raw value stored in the index array. If the vkCode is not valid. Refer to or . Sets the value in the index array. The virtual key to change. The raw value to set in the index array. If the vkCode is not valid. Refer to or . If the set value is non-zero. Gets a value indicating whether the given VirtualKey code is regarded as valid input by the game. Virtual key code. If the code is valid. Gets an array of virtual keys the game considers valid input. An array of valid virtual keys. Clears the pressed state for all keys. Provides access to market board related events as the client receives/sends them. A delegate type used with the event. The historical listings for a particular item on the market board. A delegate type used with the event. The item that has been purchased. A delegate type used with the event. The current offerings for a particular item on the market board. A delegate type used with the event. The details about the item being purchased. A delegate type used with the event. The new tax rates. Event that fires when historical sale listings are received for a specific item on the market board. Event that fires when a item is purchased on the market board. Event that fires when current offerings are received for a specific item on the market board. Event that fires when a player requests to purchase an item from the market board. Event that fires when the client receives new tax rates. These events only occur when accessing a retainer vocate and requesting the tax rates. Class used to modify the data used when rendering nameplates. The delegate used for receiving nameplate update events. An object containing information about the pending data update. A list of handlers used for updating nameplate data. An event which fires when nameplate data is updated and at least one nameplate has important updates. The subscriber is provided with a list of handlers for nameplates with important updates. Fires after . An event which fires after nameplate data is updated and at least one nameplate had important updates. The subscriber is provided with a list of handlers for nameplates with important updates. Fires before . An event which fires when nameplate data is updated. The subscriber is provided with a list of handlers for all nameplates. This event is likely to fire every frame even when no nameplates are actually updated, so in most cases is preferred. Fires before . An event which fires after nameplate data is updated. The subscriber is provided with a list of handlers for all nameplates. This event is likely to fire every frame even when no nameplates are actually updated, so in most cases is preferred. Fires after . Requests that all nameplates should be redrawn on the following frame. This causes extra work for the game, and should not need to be called every frame. However, it is acceptable to call frequently when needed (e.g. in response to a manual settings change by the user) or when necessary (e.g. after a change of zone, party type, etc.). Manager for notifications provided by Dalamud using ImGui. Adds a notification. The new notification. The added notification. This collection represents the currently spawned FFXIV game objects. Gets the address of the object table. Gets the length of the object table. Get an object at the specified spawn index. Spawn index. An at the specified spawn index. Search for a game object by their Object ID. Object ID to find. A game object or null. Search for a game object by the Entity ID. Entity ID to find. A game object or null. Gets the address of the game object at the specified index of the object table. The index of the object. The memory address of the object. Create a reference to an FFXIV game object. The address of the object in memory. object or inheritor containing the requested data. This class handles interacting with the native PartyFinder window. Event type fired each time the game receives an individual Party Finder listing. Cannot modify listings but can hide them. The listings received. Additional arguments passed by the game. Event fired each time the game receives an individual Party Finder listing. Cannot modify listings but can hide them. This collection represents the actors present in your party or alliance. Gets the amount of party members the local player has. Gets the index of the party leader. Gets a value indicating whether this group is an alliance. Gets the address of the Group Manager. Gets the address of the party list within the group manager. Gets the address of the alliance member list within the group manager. Gets the ID of the party. Get a party member at the specified spawn index. Spawn index. A at the specified spawn index. Gets the address of the party member at the specified index of the party list. The index of the party member. The memory address of the party member. Create a reference to an FFXIV party member. The address of the party member in memory. The party member object containing the requested data. Gets the address of the alliance member at the specified index of the alliance list. The index of the alliance member. The memory address of the alliance member. Create a reference to an FFXIV alliance member. The address of the alliance member in memory. The party member object containing the requested data. An opinionated service to handle logging for plugins. Gets a Serilog ILogger instance for this plugin. This is the entrypoint for plugins that wish to use more advanced logging functionality. Gets or sets the minimum log level that will be recorded from this plugin to Dalamud's logs. This may be set by either the plugin or by Dalamud itself. Defaults to for downloaded plugins, and for dev plugins. Log a message to the Dalamud log for this plugin. This log level should be used primarily for unrecoverable errors or critical faults in a plugin. Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Log a message to the Dalamud log for this plugin. This log level should be used for recoverable errors or faults that impact plugin functionality. Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Log a message to the Dalamud log for this plugin. This log level should be used for user error, potential problems, or high-importance messages that should be logged. Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Log an message to the Dalamud log for this plugin. This log level should be used for general plugin operations and other relevant information to track a plugin's behavior. Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Log a message to the Dalamud log for this plugin. This log level should be used for messages or information that aid with debugging or tracing a plugin's operations, but should not be recorded unless requested. By default, this log level is below the default log level of Dalamud. Messages logged at this level will not be recorded unless the global log level is specifically set to Debug or lower. If information should be generally or easily accessible for support purposes without the user taking additional action, consider using the Information level instead. Developers should not use this log level where it can be triggered on a per-frame basis. Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Log a message to the Dalamud log for this plugin. This log level is intended almost primarily for development purposes and detailed tracing of a plugin's operations. Verbose logs should not be used to expose information useful for support purposes. By default, this log level is below the default log level of Dalamud. Messages logged at this level will not be recorded unless the global log level is specifically set to Verbose. Release plugins must also set the to to use this level, and should only do so upon specific user request (e.g. a "Enable Troubleshooting Logs" button). Message template describing the event. Objects positionally formatted into the message template. An (optional) exception that should be recorded alongside this event. Write a raw log event to the plugin's log. Used for interoperability with other log systems, as well as advanced use cases. The log level for this event. An (optional) exception that should be recorded alongside this event. Message template describing the event. Objects positionally formatted into the message template. Service that grants you access to textures you may render via ImGui. Create functions will return a new texture, and the returned instance of must be disposed after use. Get functions will return a shared texture, and the returnd instance of do not require calling , unless a new reference has been created by calling .
Use and alike to obtain a reference of that will stay valid for the rest of the frame.
debugName parameter can be used to name your textures, to aid debugging resource leaks using .
Creates an empty texture. Texture specifications. Whether to support reading from CPU, while disabling reading from GPU. Whether to support writing from CPU, while disabling writing from GPU. Name for debug display purposes. A new empty texture. Creates a texture from the given existing texture, cropping and converting pixel format as needed. The source texture wrap. The passed value may be disposed once this function returns, without having to wait for the completion of the returned . The texture modification arguments. Whether to leave non-disposed when the returned completes. Name for debug display purposes. The cancellation token. A containing the copied texture on success. Dispose after use. This function may throw an exception. Creates a texture from an ImGui viewport. The arguments for creating a texture. Name for debug display purposes. The cancellation token. A containing the copied texture on success. Dispose after use. Use ImGui.GetMainViewport().ID to capture the game screen with Dalamud rendered. This function may throw an exception. Gets a texture from the given bytes, trying to interpret it as a .tex file or other well-known image files, such as .png. The bytes to load. Name for debug display purposes. The cancellation token. A containing the loaded texture on success. Dispose after use. This function may throw an exception. Gets a texture from the given stream, trying to interpret it as a .tex file or other well-known image files, such as .png. The stream to load data from. Whether to leave the stream open once the task completes, sucessfully or not. Name for debug display purposes. The cancellation token. A containing the loaded texture on success. Dispose after use. will be closed or not only according to ; is irrelevant in closing the stream. This function may throw an exception. Gets a texture from the given bytes, interpreting it as a raw bitmap. The specifications for the raw bitmap. The bytes to load. Name for debug display purposes. The texture loaded from the supplied raw bitmap. Dispose after use. This function may throw an exception. Gets a texture from the given bytes, interpreting it as a raw bitmap. The specifications for the raw bitmap. The bytes to load. Name for debug display purposes. The cancellation token. A containing the loaded texture on success. Dispose after use. This function may throw an exception. Gets a texture from the given stream, interpreting the read data as a raw bitmap. The specifications for the raw bitmap. The stream to load data from. Whether to leave the stream open once the task completes, sucessfully or not. Name for debug display purposes. The cancellation token. A containing the loaded texture on success. Dispose after use. will be closed or not only according to ; is irrelevant in closing the stream. This function may throw an exception. Get a texture handle for the specified Lumina . Alias for fetching from . The texture to obtain a handle to. A texture wrap that can be used to render the texture. Dispose after use. This function may throw an exception. Get a texture handle for the specified Lumina . The texture to obtain a handle to. Name for debug display purposes. The cancellation token. A texture wrap that can be used to render the texture. Dispose after use. This function may throw an exception. Gets the supported bitmap decoders. The supported bitmap decoders. The following functions support the files of the container types pointed by yielded values.
  • and
This function may throw an exception.
Gets a shared texture corresponding to the given game resource icon specifier. A game icon specifier. The shared texture that you may use to obtain the loaded texture wrap and load states. This function is under the effect of . Caching the returned object is not recommended. Performance benefit will be minimal. Gets a shared texture corresponding to the given game resource icon specifier. This function does not throw exceptions. This function is under the effect of . Caching the returned object is not recommended. Performance benefit will be minimal. A game icon specifier. The resulting . Whether or not the lookup succeeded. Gets a shared texture corresponding to the given path to a game resource. A path to a game resource. The shared texture that you may use to obtain the loaded texture wrap and load states. This function is under the effect of . This function does not throw exceptions. Caching the returned object is not recommended. Performance benefit will be minimal. Gets a shared texture corresponding to the given file on the filesystem. A path to a file on the filesystem. The shared texture that you may use to obtain the loaded texture wrap and load states. This function does not throw exceptions. Caching the returned object is not recommended. Performance benefit will be minimal. Gets a shared texture corresponding to the given file on the filesystem. The file on the filesystem to load. The shared texture that you may use to obtain the loaded texture wrap and load states. This function does not throw exceptions. Caching the returned object is not recommended. Performance benefit will be minimal. Gets a shared texture corresponding to the given file on the filesystem. The file on the filesystem to load. Requires a full path. The shared texture that you may use to obtain the loaded texture wrap and load states. This function does not throw exceptions. Caching the returned object is not recommended. Performance benefit will be minimal. Gets a shared texture corresponding to the given file of the assembly manifest resources. The assembly containing manifest resources. The case-sensitive name of the manifest resource being requested. The shared texture that you may use to obtain the loaded texture wrap and load states. This function does not throw exceptions. Caching the returned object is not recommended. Performance benefit will be minimal. Get a path for a specific icon's .tex file. The icon lookup. The path to the icon. If a corresponding file could not be found. Gets the path of an icon. The icon lookup. The resolved path. true if the corresponding file exists and has been set. This function does not throw exceptions. Determines whether the system supports the given DXGI format. For use with . The DXGI format. true if supported. This function does not throw exceptions. Determines whether the system supports the given DXGI format for use with . The DXGI format. true if supported. This function does not throw exceptions. Converts an existing instance to a new instance of which can be used to supply a custom texture onto an in-game addon (UI element.) Instance of to convert. Whether to leave non-disposed when the returned completes. Address of the new . See PrintTextureInfo in for an example of replacing the texture of an image node. If the returned kernel texture is to be destroyed, call the fourth function in its vtable, by calling or ((delegate* unmanaged<nint, void>)(*(nint**)ptr)[3](ptr). Service that grants you to read instances of . Gets the raw data of a texture wrap. The source texture wrap. The texture modification arguments. Whether to leave non-disposed when the returned completes. The cancellation token. The raw data and its specifications. The length of the returned RawData may not match * . may not be the minimal value required to represent the texture bitmap data. For example, if a texture is 4x4 B8G8R8A8, the minimal pitch would be 32, but the function may return 64 instead. This function may throw an exception. Gets the supported bitmap encoders. The supported bitmap encoders. The following functions support the files of the container types pointed by yielded values.
This function may throw an exception.
Saves a texture wrap to a stream in an image file format. The texture wrap to save. The container GUID, obtained from . The stream to save to. Properties to pass to the encoder. See remarks for valid values. Whether to leave non-disposed when the returned completes. Whether to leave open when the returned completes. The cancellation token. A task representing the save process. must not be disposed until the task finishes. See the following webpages for the valid values for per . This function may throw an exception. Saves a texture wrap to a file as an image file. The texture wrap to save. The container GUID, obtained from . The target file path. The target file will be overwritten if it exist. Properties to pass to the encoder. See remarks for valid values. Whether to leave non-disposed when the returned completes. The cancellation token. A task representing the save process. must not be disposed until the task finishes. If the target file exists, it will be overwritten only if the save operation is successful. See the following webpages for the valid values for per . This function may throw an exception. Service that grants you the ability to replace texture data that is to be loaded by Dalamud. Delegate describing a function that may be used to intercept and replace texture data. The path assigned may point to another texture inside the game's dats, or a .tex file or image on the disk. The path to the texture that is to be loaded. The path that should be loaded instead. Event that will be called once Dalamud wants to load texture data. Get a path that may be substituted by a subscriber to ITextureSubstitutionProvider. The original path to substitute. The original path, if no subscriber is registered or there is no substitution, or the substituted path. Notify Dalamud about substitution status for files at the specified VFS paths changing. You should call this with all paths that were either previously substituted and are no longer, and paths that are newly substituted. The paths with a changed substitution status. This function will not invalidate the copies of the textures loaded from plugins. Interface for class responsible for managing elements in the title screen menu. Gets the list of read only entries in the title screen menu. Adds a new entry to the title screen menu. The text to show. The texture to show. The action to execute when the option is selected. A object that can be reference the entry. Thrown when the texture provided does not match the required resolution(64x64). Adds a new entry to the title screen menu. Priority of the entry. The text to show. The texture to show. The action to execute when the option is selected. A object that can be used to reference the entry. Thrown when the texture provided does not match the required resolution(64x64). Remove an entry from the title screen menu. The entry to remove. This class facilitates interacting with and creating native toast windows. A delegate type used when a normal toast window appears. The message displayed. Assorted toast options. Whether the toast has been handled or should be propagated. A delegate type used when a quest toast window appears. The message displayed. Assorted toast options. Whether the toast has been handled or should be propagated. A delegate type used when an error toast window appears. The message displayed. Whether the toast has been handled or should be propagated. Event that will be fired when a toast is sent by the game or a plugin. Event that will be fired when a quest toast is sent by the game or a plugin. Event that will be fired when an error toast is sent by the game or a plugin. Show a toast message with the given content. The message to be shown. Options for the toast. Show a toast message with the given content. The message to be shown. Options for the toast. Show a quest toast message with the given content. The message to be shown. Options for the toast. Show a quest toast message with the given content. The message to be shown. Options for the toast. Show an error toast message with the given content. The message to be shown. Show an error toast message with the given content. The message to be shown. Class facilitating safe memory access. Attention! The performance of these methods is severely worse than regular calls. Please consider using those instead in performance-critical code. Read a byte array from the current process. The address to read from. The amount of bytes to read. The result buffer. Whether or not the read succeeded. Write a byte array to the current process. The address to write to. The buffer to write. Whether or not the write succeeded. Read an object of the specified struct from the current process. The type of the struct. The address to read from. The resulting object. Whether or not the read succeeded. Read an array of objects of the specified struct from the current process. The type of the struct. The address to read from. The length of the array. An array of the read objects, or null if any entry of the array failed to read. Write a struct to the current process. The type of the struct. The address to write to. The object to write. Whether or not the write succeeded. Write an array of structs to the current process. The type of the structs. The address to write to. The array to write. Whether or not the write succeeded. Read a string from the current process(UTF-8). Attention! This will use the .NET Encoding.UTF8 class to decode the text. If you read a FFXIV string, please use ReadBytes and parse the string with the applicable class, since Encoding.UTF8 destroys the FFXIV payload structure. The address to read from. The maximum length of the string. The read string, or null in case the read was not successful. Read a string from the current process(UTF-8). Attention! This will use the .NET Encoding class to decode the text. If you read a FFXIV string, please use ReadBytes and parse the string with the applicable class, since Encoding may destroy the FFXIV payload structure. The address to read from. The encoding to use to decode the string. The maximum length of the string. The read string, or null in case the read was not successful. Write a string to the current process. Attention! This will use the .NET Encoding class to encode the text. If you read a FFXIV string, please use WriteBytes with the applicable encoded SeString, since Encoding may destroy the FFXIV payload structure. The address to write to. The string to write. Whether or not the write succeeded. Write a string to the current process. Attention! This will use the .NET Encoding class to encode the text. If you read a FFXIV string, please use WriteBytes with the applicable encoded SeString, since Encoding may destroy the FFXIV payload structure. The address to write to. The string to write. The encoding to use. Whether or not the write succeeded. Marshals data from an unmanaged block of memory to a managed object. The type to create. The address to read from. The read object, or null, if it could not be read. Marshals data from an unmanaged block of memory to a managed object. The address to read from. The type to create. The read object, or null, if it could not be read. Get the size of the passed type. The type to inspect. The size of the passed type. Marker class for service types. , but for . Use this to prevent services from accidentally being disposed by plugins or using clauses. Disposes the service. An which happens to be public and needs to expose . Marks that only should respond, while suppressing . Class providing an early-loading dialog. Enum representing the state of the dialog. Show a message stating that Dalamud is currently loading. Show a message stating that Dalamud is currently loading plugins. Show a message stating that Dalamud is currently updating plugins. Gets the queue where log entries that are not processed yet are stored. Gets a value indicating whether the initial Dalamud loading dialog will not show again until next game restart. Gets or sets the current state of the dialog. Gets or sets a value indicating whether the dialog can be hidden by the user. Thrown if called before the dialog has been created. Show the dialog. Hide the dialog. A representing the asynchronous operation. Class to initialize . Static log facility for Service{T}, to avoid duplicate instances for different types. Delegate for registering startup blocker task.
Do not use this delegate outside the constructor.
The blocker task. The justification for using this feature.
Delegate for registering services that should be unloaded before self.
Intended for use with . If you think you need to use this outside of that, consider having a discussion first.
Do not use this delegate outside the constructor.
Services that should be unloaded first. The justification for using this feature.
Kinds of services. Not a service. Service that is loaded manually. Service that is loaded asynchronously while the game starts. Service that is loaded before the game starts. Service that is only instantiable via scopes. Service that is loaded automatically when the game starts, synchronously or asynchronously. Gets task that gets completed when all blocking early loading services are done loading. Gets a cancellation token that will be cancelled once Dalamud needs to unload, be it due to a failure state during initialization or during regular operation. Initializes Provided Services and FFXIVClientStructs. Instance of . Instance of . Instance of . Instance of . Instance of . Gets the concrete types of services, i.e. the non-abstract non-interface types. The enumerable of service types, that may be enumerated only once per call. Kicks off construction of services that can handle early loading. Task for initializing all services. Unloads all services, in the reverse order of load. Wait until all services have been unloaded. Get the service type of this type. The type to check. The type of service this type is. Validate service type contracts, and throws exceptions accordingly. An instance of that is supposed to be a service type. Does nothing on non-debug builds. Indicates that this constructor will be called for early initialization. Indicates that the field is a service that should be loaded before constructing the class. Indicates that the class is a service. Initializes a new instance of the class. The kind of the service. Gets the kind of the service. Indicates that the class is a service, that is provided by some other source. Initializes a new instance of the class. Indicates that the class is a service, and will be instantiated automatically on startup. Initializes a new instance of the class. Initializes a new instance of the class. The service kind. Indicates that the class is a service, and will be instantiated automatically on startup, blocking game main thread until it completes. Initializes a new instance of the class. Reason of blocking the game startup. Gets the reason of blocking the startup of the game. Indicates that the class is a service that will be created specifically for a service scope, and that it cannot be created outside of a scope. Initializes a new instance of the class. Indicates that the method should be called when the services given in the marked method's parameters are ready. This will be executed immediately after the constructor has run, if all services specified as its parameters are already ready, or no parameter is given. Initializes a new instance of the class. Specify the reason here. Indicates that something is a candidate for being considered as an injected parameter for constructors. Basic service locator. Only used internally within Dalamud, if plugins need access to things it should be _only_ via DI. The class you want to store in the service locator. Specifies how to handle the cases of failed services when calling . Propagate all exceptions. Propagate all exceptions, except for . Treat all exceptions as null. Does nothing. Used to invoke the static ctor. Sets the type in the service locator to the given object. Object to set. Sets the service load state to failure. The exception. Pull the instance out of the service locator, waiting if necessary. The object. Pull the instance out of the service locator, waiting if necessary. The object. Attempt to pull the instance out of the service locator. Specifies which exceptions to propagate. The object if registered, null otherwise. Gets an enumerable containing s that are required for this Service to initialize without blocking. These are NOT returned as types; raw types will be returned. Whether to include the unload dependencies. List of dependency services. Starts the service loader. Only to be called from . Additional objects available to constructors. The loader task. Pull the instance out of the service locator, waiting if necessary. The object. Exception thrown when service is attempted to be retrieved when it's unloaded. Initializes a new instance of the class. Helper functions for services. Get a list of dependencies for a service. Only accepts types. These are NOT returned as types; raw types will be returned. The dependencies for this service. Whether to include the unload dependencies. A list of dependencies. Get the type for a given service type. This will throw if the service type is not a valid service. The type to obtain a for. The . Stores the basic information of a Dalamud asset. Initializes a new instance of the class. The purpose. The data. Whether the asset is required. Gets the purpose of the asset. Gets the data, if available. Gets a value indicating whether the asset is required. Extension methods for . Gets the purpose. The asset. The purpose. Gets the attribute. The asset. The attribute. A concrete class for . Marks that an asset can be download from online. Initializes a new instance of the class. The URL. Gets the source URL of the file. Downloads to the given stream. The client. The stream. The cancellation token. The task. File names to look up in Dalamud assets. Initializes a new instance of the class. The path components. Gets the file name. Purposes of a Dalamud asset. The asset has no purpose, and is not valid and/or not accessible. The asset is a .png file, and can be purposed as a . The asset is a raw texture, and can be purposed as a . The asset is a font file. Provide raw texture data directly. Initializes a new instance of the class. The width. The height. The format. The pitch. Gets the specification. Holds Dalamud Assets' handles hostage, so that they do not get closed while Dalamud is running.
Also, attempts to load optional assets.

Note on
It will help you get notified if you discard the result of functions, mostly likely because of a mistake. Think of C++ [[nodiscard]]. Also, like the intended meaning of the attribute, such methods will not have externally visible state changes.
Gets the shared texture wrap for . Gets the shared texture wrap for . Gets whether the stream for the asset is instantly available. The asset. Whether the stream of an asset is immediately available. Creates a stream backed by the specified asset, waiting as necessary.
Call after use.
The asset. The stream.
Creates a stream backed by the specified asset.
Call after use.
The asset. The stream, wrapped inside a .
Gets a shared instance of , after waiting as necessary.
Calls to is unnecessary; they will be ignored.
The texture asset. The texture wrap.
Gets a shared instance of if it is available instantly; if it is not ready, returns .
Calls to is unnecessary; they will be ignored.
The texture asset. The default return value, if the asset is not ready for whatever reason. The texture wrap. Can be null only if is null.
Gets a shared instance of in a .
Calls to is unnecessary; they will be ignored.
The texture asset. The new texture wrap, wrapped inside a .
Thrown if all read operations fail. Initializes a new instance of the class. Inner error that caused this exception. A service that provides a reliable file storage. Implements a VFS that writes files to the disk, and additionally keeps files in a SQLite database for journaling/backup purposes. Consumers can choose to receive a backup if they think that the file is corrupt. This is not an early-loaded service, as it is needed before they are initialized. Initializes a new instance of the class. Path to the VFS. Check if a file exists. This will return true if the file does not exist on the filesystem, but in the transparent backup. You must then use this instance to read the file to ensure consistency. The path to check. The container to check in. True if the file exists. Write all text to a file. Path to write to. The contents of the file. Container to write to. Write all text to a file. Path to write to. The contents of the file. The encoding to write with. Container to write to. Write all bytes to a file. Path to write to. The contents of the file. Container to write to. Read all text from a file. If the file does not exist on the filesystem, a read is attempted from the backup. The backup is not automatically written back to disk, however. The path to read from. Whether or not the backup of the file should take priority. The container to read from. All text stored in this file. Thrown if the file does not exist on the filesystem or in the backup. Read all text from a file. If the file does not exist on the filesystem, a read is attempted from the backup. The backup is not automatically written back to disk, however. The path to read from. The encoding to read with. Whether or not the backup of the file should take priority. The container to read from. All text stored in this file. Thrown if the file does not exist on the filesystem or in the backup. Read all text from a file, and automatically try again with the backup if the file does not exist or the function throws an exception. If the backup read also throws an exception, or the file does not exist in the backup, a is thrown. The path to read from. Lambda that reads the file. Throw here to automatically attempt a read from the backup. The container to read from. Thrown if the file does not exist on the filesystem or in the backup. Thrown here if the file and the backup fail their read. Read all text from a file, and automatically try again with the backup if the file does not exist or the function throws an exception. If the backup read also throws an exception, or the file does not exist in the backup, a is thrown. The path to read from. The encoding to read with. Lambda that reads the file. Throw here to automatically attempt a read from the backup. The container to read from. Thrown if the file does not exist on the filesystem or in the backup. Thrown here if the file and the backup fail their read. Read all bytes from a file. If the file does not exist on the filesystem, a read is attempted from the backup. The backup is not automatically written back to disk, however. The path to read from. Whether or not the backup of the file should take priority. The container to read from. All bytes stored in this file. Thrown if the file does not exist on the filesystem or in the backup. Replace possible non-portable parts of a path with portable versions. The path to normalize. The normalized path. Class responsible for sending feedback. Send feedback to Discord. The plugin to send feedback about. Whether or not the plugin is a testing plugin. The content of the feedback. The reporter name. Whether or not the most recent exception to occur should be included in the report. A representing the asynchronous operation. Tracks the loaded process modules. Gets all the loaded modules, up to date. Service for fetching Dalamud release information. Initializes a new instance of the class. The shared HTTP client. The Dalamud configuration. Get the latest version info for the current track. The version info for the current track. Class responsible for printing troubleshooting information to the log. Gets the most recent exception to occur. Log the last exception in a parseable format to serilog. The exception to log. Additional context. Log troubleshooting information in a parseable format to Serilog. Utility class for marking something to be changed for API 11, for ease of lookup. Marks that this should be made internal. Initializes a new instance of the class. The explanation. The explanation 2. Iterate over enumerables with additional index. Remove an added index from an indexed enumerable. Remove the value and only keep the index from an indexed enumerable. Interprets the given array as an , so that you can enumerate it multiple times, and know the number of elements within. The enumerable. The element type. casted as a if it is one; otherwise the result of . A set of utilities around and for better asynchronous behavior. Race a set of tasks, returning either the first to succeed or an aggregate of all exceptions. This helper does not perform any automatic cancellation of losing tasks, nor does it handle exceptions of losing tasks. Derived from this StackOverflow post. A list of tasks to race. The return type of all raced tasks. Thrown when all tasks given to this method fail. Returns the first task that completes, according to . Provide a that won't throw an exception when it's canceled. Extension methods for the class. Converts a Dalamud ClientLanguage to the corresponding Lumina variant. Language to convert. Converted language. Class containing fixes for culture-specific issues. Apply all fixes. Utility functions for and . Formats an instance of as a localized absolute time. When. The formatted string. The string will be formatted according to Square Enix Account region settings, if Dalamud default language is English. Formats an instance of as a localized relative time. When. The alignment unit of time span. The formatted string. Formats an instance of as a localized relative time. When. The alignment unit of time span. The formatted string. Formats an instance of as a localized relative time. When. The formatted string. Formats an instance of as a localized relative time. When. The formatted string. Formats an instance of as a localized string. The duration. The formatted string. A set of utilities for diagnostics. Gets a stack trace that filters out irrelevant frames. The source stacktrace to filter. Returns a stack trace with "extra" frames removed. Utilities for disposing stuff. Interface that marks a disposable that it can call back on dispose. Event to be fired before object dispose. First parameter is the object iself. Event to be fired after object dispose. First parameter is the object iself. Returns a proxy that on dispose will dispose the result of the given .
If any exception has occurred, it will be ignored.
The task. A disposable type. The proxy .
Transforms into a , disposing the content as necessary. The task. Ignore all exceptions. A disposable type. A wrapper for the task. Returns a proxy that on dispose will dispose all the elements of the given of s. The disposables. The disposable types. The proxy . Error. Utility class for managing finalizing stuff. The parameter. Queue all the given to be disposed later. Disposables. Queue all the given to be run later. Actions. Queue all the given returning to be run later. Func{Task}s. Queue all the given to be disposed later. GCHandles. Cancel all pending disposals. Use this after successful initialization of multiple disposables. This for method chaining. This for method chaining. This for method chaining. This for method chaining. This for method chaining. Base class for loading resources in dynamic order. Initializes a new instance of the class. Maximum number of concurrent load tasks. Provider for priority metrics. Gets a value indicating whether the resource is requested in an opportunistic way. Gets the first requested tick count from . Gets the latest requested tick count from . Loads a resource according to some order. The type of resource. The throttle basis. null may be used to create a new instance of that is not opportunistic with time values of now. The immediate load function. The cancellation token. Disposables to dispose when the task completes. The task. may throw immediately without returning anything, or the returned may complete in failure. Continuously transfers work items added from to , until all items are transferred and is called. Continuously processes work items in , until all items are processed and is called. Extracts the work item with the highest priority from , and removes cancelled items, if any. The order of items of is undefined after this function. A read-only implementation of . Represents a work item added from . Typed version of . Extension methods for enums. Gets attributes on an enum. The type of attribute to get. The enum value that has an attached attribute. The enumerable of the attached attributes. Gets an attribute on an enum. The type of attribute to get. The enum value that has an attached attribute. The attached attribute, if any. Gets an indicator if enum has been flagged as obsolete (deprecated). The enum value that has an attached attribute. Indicator if enum has been flagged as obsolete. Extensions for Events. Replacement for Invoke() on EventHandlers to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The EventHandler in question. Default sender for Invoke equivalent. Default EventArgs for Invoke equivalent. Replacement for Invoke() on generic EventHandlers to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The EventHandler in question. Default sender for Invoke equivalent. Default EventArgs for Invoke equivalent. Type of EventArgs. Replacement for Invoke() on event Actions to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The Action in question. Replacement for Invoke() on event Actions to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The Action in question. Templated argument for Action. Type of Action args. Replacement for Invoke() on OnUpdateDelegate to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The OnUpdateDelegate in question. Framework to be passed on to OnUpdateDelegate. Replacement for Invoke() on OnMenuOpenedDelegate to catch exceptions that stop event propagation in case of a thrown Exception inside of an invocation. The OnMenuOpenedDelegate in question. Templated argument for Action. Utility functions for hashing. Get the SHA-256 hash of a string. The string to hash. The computed hash. Get the SHA-256 hash of a byte array. The byte array to hash. The computed hash. Utility class to detect hitches. Initializes a new instance of the class. Name to log. Milliseconds to print a warning for. Start the time tracking. Stop the time tracking, and print a warning, if applicable. An extension of which makes queue to be called at a later time. Actually dispose the object. Not to be called from the code that uses the end object. Interface for reference counting. Result for . The object still has remaining references. No futher action should be done. The last reference to the object has been released. The object should be fully released. The object already has been disposed. may be thrown. Adds a reference to this reference counted object. The new number of references. Releases a reference from this reference counted object.
When all references are released, the object will be fully disposed.
The new number of references.
Alias for . Alters by . The delta to the reference count. The reference to the reference count. The new reference count. The followup action that should be done. Utility helper class for game maps and coordinate translations that don't require state. The conversion methods were found in 89 54 24 10 56 41 55 41 56 48 81 EC, which itself was found by looking for uses of AddonText 1631. Helper method to convert one of the game's Vector3 X/Z provided by the game to a map coordinate suitable for display to the player. The raw float of a game Vector3 X or Z coordinate to convert. The scale factor of the map, generally retrieved from Lumina. The dimension offset for either X or Z, generally retrieved from Lumina. Returns a converted float for display to the player. Helper method to convert a game Vector3 Y coordinate to a map coordinate suitable for display to the player. The raw float of a game Vector3 Y coordinate to convert. The zOffset for this map. Retrieved from TerritoryTypeTransient. Optionally enable Z offset correction. When a Z offset of -10,000 is set, replace it with 0 for calculation purposes to show a more sane Z coordinate. Returns a converted float for display to the player. All-in-one helper method to convert a World Coordinate (internal to the game) to a Map Coordinate (visible to players in the minimap/elsewhere). Note that this method will swap Y and Z in the resulting Vector3 to appropriately reflect the game's display. A Vector3 of raw World coordinates from the game. The offset to apply to the incoming X parameter, generally Lumina's Map.OffsetX. The offset to apply to the incoming Y parameter, generally Lumina's Map.OffsetY. The offset to apply to the incoming Z parameter, generally Lumina's TerritoryTypeTransient.OffsetZ. The global scale to apply to the incoming X and Y parameters, generally Lumina's Map.SizeFactor. An optional mode to "correct" a Z offset of -10000 to be a more human-friendly value. Returns a Vector3 representing visible map coordinates. All-in-one helper method to convert a World Coordinate (internal to the game) to a Map Coordinate (visible to players in the minimap/elsewhere). Note that this method will swap Y and Z to appropriately reflect the game's display. A Vector3 of raw World coordinates from the game. A Lumina map to use for offset/scale information. A TerritoryTypeTransient to use for Z offset information. An optional mode to "correct" a Z offset of -10000 to be a more human-friendly value. Returns a Vector3 representing visible map coordinates. All-in-one helper method to convert a World Coordinate (internal to the game) to a Map Coordinate (visible to players in the minimap/elsewhere). A Vector2 of raw World coordinates from the game. The offset to apply to the incoming X parameter, generally Lumina's Map.OffsetX. The offset to apply to the incoming Y parameter, generally Lumina's Map.OffsetY. The global scale to apply to the incoming X and Y parameters, generally Lumina's Map.SizeFactor. Returns a Vector2 representing visible map coordinates. All-in-one helper method to convert a World Coordinate (internal to the game) to a Map Coordinate (visible to players in the minimap/elsewhere). A Vector2 of raw World coordinates from the game. A Lumina map to use for offset/scale information. Returns a Vector2 representing visible map coordinates. Extension method to get the current position of a GameObject in Map Coordinates (visible to players in the minimap or chat). A Z (height) value will always be returned, even on maps that do not natively show one. Thrown if ClientState is unavailable. The GameObject to get the position for. Whether to "correct" a Z offset to sane values for maps that don't have one. A Vector3 that represents the X (east/west), Y (north/south), and Z (height) position of this object. Extension methods for vectors. A list with limited capacity holding items of type . Adding further items will result in the list rolling over. Item type. Implemented as a circular list using a internally. Insertions and Removals are not supported. Not thread-safe. Initializes a new instance of the class. size. Internal initial capacity. Initializes a new instance of the class. size. Initializes a new instance of the class. Collection where elements are copied from. size. Initializes a new instance of the class. Collection where elements are copied from. size. Internal initial capacity. Gets item count. Gets or sets the internal list capacity. Gets or sets rolling list size. Gets a value indicating whether the item is read only. Gets or sets an item by index. Item index. Item at specified index. Adds an item to this . Item to add. Add items to this . Items to add. Removes all elements from the . Find the index of a specific item. item to find. Index where is found. -1 if not found. Not supported. Not supported. Find wether an item exists. item to find. Wether is found. Copies the content of this list into an array. Array to copy into. index to start coping into. Not supported. Gets an enumerator for this . enumerator. Gets an enumerator for this . enumerator. Scope for plugin list locks. Initializes a new instance of the class. The object to lock. Extension methods for SeStrings. Convert a Lumina SeString into a Dalamud SeString. This conversion re-parses the string. The original Lumina SeString. The re-parsed Dalamud SeString. Convert a Lumina ReadOnlySeString into a Dalamud SeString. This conversion re-parses the string. The original Lumina ReadOnlySeString. The re-parsed Dalamud SeString. Convert a Lumina ReadOnlySeStringSpan into a Dalamud SeString. This conversion re-parses the string. The original Lumina ReadOnlySeStringSpan. The re-parsed Dalamud SeString. Compiles and appends a macro string. Target SeString builder. Macro string in UTF-8 to compile and append to . this for method chaining. Compiles and appends a macro string. Target SeString builder. Macro string in UTF-16 to compile and append to . this for method chaining. Compiles and appends a macro string. Target SeString builder. Macro string in UTF-8 to compile and append to . this for method chaining. Compiles and appends a macro string. Target SeString builder. Macro string in UTF-16 to compile and append to . this for method chaining. Validate if character name is valid. Both forename and surname must be between 2 and 15 characters and not total more than 20 characters combined. Only letters, hyphens, and apostrophes can be used. The first character of either name must be a letter. Hyphens cannot be used in succession or placed immediately before or after apostrophes. character name to validate. indicator if character is name is valid. The fallibility of a signature. The fallibility of the signature is determined by the field/property's nullability. The signature is fallible. The signature is infallible. Class providing info about field, property or parameter nullability. Check if the provided property is nullable. The property to check. Whether or not the property is nullable. Check if the provided field is nullable. The field to check. Whether or not the field is nullable. Check if the provided parameter is nullable. The parameter to check. Whether or not the parameter is nullable. The type of scan to perform with a signature. Scan the text section of the executable. Uses . Scans the text section of the executable in order to find a data section address. Uses . The main way to use SignatureHelper. Apply this attribute to any field/property that should make use of a signature. See the field documentation for more information. Initializes a new instance of the class. signature to scan for, see . Gets the memory signature for this field/property. Gets the way this signature should be used. By default, this is guessed using simple heuristics, but it can be manually specified if SignatureHelper can't figure it out. Gets the type of scan to perform. By default, this scans the text section of the executable, but this should be set to StaticAddress for static addresses. Gets the detour name if this signature is for a hook. SignatureHelper will search the type containing this field/property for a method that matches the hook's delegate type, but if it doesn't find one or finds more than one, it will fail. You can specify the name of the method here to avoid this. Gets the offset from the signature to read memory from, when is set to Offset. Gets the fallibility of the signature. When a signature is fallible, any errors while resolving it will be logged in the Dalamud log and the field/property will not have its value set. When a signature is not fallible, any errors will be thrown as exceptions instead. If fallibility is not specified, it is inferred based on if the field/property is nullable. An exception for signatures. Initializes a new instance of the class. Message. A utility class to help reduce signature boilerplate code. Initializes an object's fields and properties that are annotated with a . The object to initialize. If warnings should be logged. Collection of created IDalamudHooks. Use flags for a signature attribute. This tells SignatureHelper how to use the result of the signature. SignatureHelper will use simple heuristics to determine the best signature use for the field/property. The signature should be used as a plain pointer. This is correct for static addresses, functions, or anything else that's an at heart. The signature should be used as a hook. This is correct for fields/properties. The signature should be used to determine an offset. This is the default for all primitive types. SignatureHelper will read from the memory at this signature and store the result in the field/property. An offset from the signature can be specified in the . Class providing information about a field. Initializes a new instance of the class. FieldInfo to populate from. Interface providing information about a field or a property. Gets the name of the field or property. Gets the actual type of the field or property. Gets a value indicating whether or not the field or property is nullable. Set this field or property's value. The object instance. The value to set. Get a custom attribute. The type of the attribute. The attribute. Class providing information about a property. Initializes a new instance of the class. PropertyInfo. Extensions methods providing stable insertion sorts for IList. Perform a stable sort on a list. The list to sort. Selector to order by. Element type. Selected type. Perform a stable sort on a list. The list to sort. Comparer to use when comparing items. Element type. Extension methods for strings. An extension method to chain usage of string.Format. Format string. Format arguments. Formatted string. Indicates whether the specified string is null or an empty string (""). The string to test. true if the value parameter is null or an empty string (""); otherwise, false. Indicates whether a specified string is null, empty, or consists only of white-space characters. The string to test. true if the value parameter is null or an empty string (""), or if value consists exclusively of white-space characters. Validate if character name is valid using game check. character name to validate. include legacy names (combined can be 30 instead of 20). indicator if character is name is valid. Extension methods to make working with easier. Safe alternative to Task.Wait which ensures the calling thread is not a thread pool thread. The task to be awaited. Safe alternative to Task.Result which ensures the calling thread is not a thread pool thread. The target task. The type of the result. The result. Creates a new that resolves when completes, ignoring exceptions thrown from the task, if any. Task to await and ignore exceptions on failure. A that completes successfully when completes in any state. Awaiting the returned will always complete without exceptions, but awaiting will throw exceptions if it fails, even after this function is called. Wrong use of this function var task = TaskThrowingException(); task.SuppressException(); await TaskThrowingException(); // This line will throw. Correct use of this function, if waiting for the task await TaskThrowingException().SuppressException(); Fire-and-forget
If not interested in the execution state of Task (fire-and-forget), simply calling this function will do. This function consumes the task's exception, so that it won't bubble up on later garbage collection. TaskThrowingException().SuppressException();
Managed iterator for . The unknown type. Initializes a new instance of the class. An instance of . Ownership is transferred. Finalizes an instance of the class. An wrapper for . Creates a new instance of based on a managed . The inner stream. Whether to leave open on final release. The new instance of based on . Utilities for and its derivatives. Creates a new instance of from a file path. The file path. The file open mode. The file access mode. The file share mode. The file attributes. The new instance of . Calls . The property bag. The name of the item to be interpreted as a VARIANT. The new value, to be interpreted as a . Return value from . Calls . The object. The name of the metadata. The new value, to be interpreted as a . Return value from . Calls . The object. The name of the metadata. Return value from . Extension methods for D3D11 TerraFX objects. Creates a 2D texture with the given descriptor. Device to copy from and to. Resource descriptor. Optional initial data for the texture. New copied texture. Creates a shader resource view for a resource. Device to create the resource view into. Resource to create a view on. Resource view descriptor. Type of the resource. New shader resource view. Gets the descriptor for a . Texture. Texture descriptor. Extensions to . Returns the image data formatted for . The TexFile to format. The formatted image data. Determines if the given data is possibly a . The data. true if it should be attempted to be interpreted as a . A task scheduler that runs tasks on a specific thread. Initializes a new instance of the class. The thread to bind this task scheduelr to. Gets or sets the thread this task scheduler is bound to. Gets a value indicating whether we're on the bound thread. Runs queued tasks. Helpers for working with thread safety. Gets a value indicating whether the current thread is the main thread. Throws an exception when the current thread is not the main thread. Thrown when the current thread is not the main thread. Throws an exception when the current thread is the main thread. Thrown when the current thread is the main thread. , but only on debug compilation mode. Marks a thread as the main thread. Helper methods for throwing exceptions. Throws a with a specified . Message for the exception. Thrown by this method. Throws a with a specified for a specified . Parameter name. Message for the exception. Thrown by this method. Throws a if the specified is less than . value type. Parameter name. Value to compare from. Value to compare with. Thrown by this method if is less than . Throws a if the specified is greater than or equal to . value type. Parameter name. Value to compare from. Value to compare with. Thrown by this method if is greater than or equal to. Class representing a timing event. Id of this timing event. Initializes a new instance of the class. Name of the event. Gets the time this timing started. Gets the name of the timing. Gets the member that created this timing. Gets the file name that created this timing. Gets the line number that created this timing. Class used for tracking a time interval taken. Initializes a new instance of the class. The name of this timing. Gets the id chain. Gets the time this timing ended. Gets the duration of this timing. Gets the attached timing handle stack. Gets the parent timing. Gets a value indicating whether or not this timing was started on the main thread. Gets the number of child timings. Class for measuring time taken in various subsystems. Stopwatch used for timing. All concluded timings. List of all timing events. Gets or sets all active timings of current thread. Attaches timing handle to a Func{T}. Task to attach. Return type. Attached task. Attaches timing handle to an Action. Task to attach. Attached task. Start a new timing. The name of the timing. Name of the calling member. Name of the calling file. Name of the calling line number. Disposable that stops the timing once disposed. Record a one-time event. The name of the timing. Name of the calling member. Name of the calling file. Name of the calling line number. Class providing various helper methods for use in Dalamud and plugins. Gets the assembly version of Dalamud. Gets the SCM Version from the assembly, or null if it cannot be found. This method will generally return the git describe output for this build, which will be a raw version if this is a stable build or an appropriately-annotated version if this is *not* stable. Local builds will return a `Local Build` text string. The SCM version of the assembly. Gets the git commit hash value from the assembly or null if it cannot be found. Will be null for Debug builds, and will be suffixed with `-dirty` if in release with pending changes. The git hash of the assembly. Gets the git hash value from the assembly or null if it cannot be found. The git hash of the assembly. Describes a memory address relative to module, or allocation base. Address. Address description. Read memory from an offset and hexdump them via Serilog. The offset to read from. The length to read. Create a hexdump of the provided bytes. The bytes to hexdump. The offset in the byte array to start at. The amount of bytes to display per line. The generated hexdump in string form. Show a structure in an ImGui context. The structure to show. The address to the structure. Whether or not this structure should start out expanded. The already followed path. Show a structure in an ImGui context. The type of the structure. The pointer to the structure. Whether or not this structure should start out expanded. Show a GameObject's internal data in an ImGui-context. The GameObject to show. Whether or not the struct should start as expanded. Show all properties and fields of the provided object via ImGui. The object to show. Display an error MessageBox and exit the current process. MessageBox body. MessageBox caption (title). Specify whether to exit immediately. Transform byte count to human readable format. Number of bytes. Human readable version. Retrieve a UTF8 string from a null terminated byte array. A null terminated UTF8 byte array. A UTF8 encoded string. Compress a string using GZip. The input string. The compressed output bytes. Decompress a string using GZip. The input bytes. The compressed output string. Determine if Dalamud is currently running within a Wine context (e.g. either on macOS or Linux). This method will not return information about the host operating system. Returns true if Wine is detected, false otherwise. Gets the best guess for the current host's platform based on the XL_PLATFORM environment variable or heuristics. macOS users running without XL_PLATFORM being set will be reported as Linux users. Due to the way our Wines work, there isn't a great (consistent) way to split the two apart if we're not told. Returns the that Dalamud is currently running on. Heuristically determine if the Windows version is higher than Windows 11's first build. If Windows 11 has been detected. Open a link in the default browser. The link to open. Perform a "zipper merge" (A, 1, B, 2, C, 3) of multiple enumerables, allowing for lists to end early. A set of enumerable sources to combine. The resulting type of the merged list to return. A new enumerable, consisting of the final merge of all lists. Request that Windows flash the game window to grab the user's attention. Attempt to flash even if the game is currently focused. Overwrite text in a file by first writing it to a temporary file, and then moving that file to the path specified. The path of the file to write to. The text to write. Overwrite text in a file by first writing it to a temporary file, and then moving that file to the path specified. The path of the file to write to. The text to write. Encoding to use. Overwrite data in a file by first writing it to a temporary file, and then moving that file to the path specified. The path of the file to write to. The data to write. Gets a temporary file name, for use as the sourceFileName in . The target file. A temporary file name that should be usable with . No write operation is done on the filesystem. Gets a random, inoffensive, human-friendly string. A random human-friendly name. Throws a corresponding exception if is true. The result value. Determines if the specified instance of points to null. The pointer. The COM interface type from TerraFX. true if not empty. Calls if the task is incomplete. The task. The exception to set. Calls if the task is incomplete. The type of the result. The task. The exception to set. Print formatted IGameObject Information to ImGui. IGameObject to Display. Display Tag. If the IGameObjects data should be resolved. Print formatted GameObject Information to ImGui. Game Object to Display. Display Tag. If the GameObjects data should be resolved. Copy files to the clipboard as if they were copied in Explorer. Full paths to files to be copied. Returns true on success. Show a structure in an ImGui context. The structure to show. The address to the structure. Whether or not this structure should start out expanded. The already followed path. Do not print addresses. Use when displaying a copied value. Extension methods for System.Numerics.VectorN and SharpDX.VectorN. Converts a SharpDX vector to System.Numerics. Vector to convert. A converted vector. Converts a SharpDX vector to System.Numerics. Vector to convert. A converted vector. Converts a SharpDX vector to System.Numerics. Vector to convert. A converted vector. Converts a System.Numerics vector to SharpDX. Vector to convert. A converted vector. Converts a System.Numerics vector to SharpDX. Vector to convert. A converted vector. Converts a System.Numerics vector to SharpDX. Vector to convert. A converted vector. Places the window above all non-topmost windows. The window maintains its topmost position even when it is deactivated. Learn more about this API from docs.microsoft.com. Places the window above all non-topmost windows (that is, behind all topmost windows). This flag has no effect if the window is already a non-topmost window. Learn more about this API from docs.microsoft.com. A pointer to a null-terminated, constant character string. A pointer to the first character in the string. The content should be considered readonly, as it was typed as constant in the SDK. Gets the number of characters up to the first null character (exclusive). Returns a with a copy of this character array, up to the first null character (exclusive). A , or if is . Returns a span of the characters in this string, up to the first null character (exclusive). Defines the CF_HDROP clipboard format. The data that follows is a double null-terminated list of file names. Learn more about this API from docs.microsoft.com. Type: DWORD The offset of the file list from the beginning of this structure, in bytes. Read more on docs.microsoft.com. Type: POINT The drop point. The coordinates depend on fNC. Read more on docs.microsoft.com. Type: BOOL A nonclient area flag. If this member is TRUE, pt specifies the screen coordinates of a point in a window's nonclient area. If it is FALSE, pt specifies the client coordinates of a point in the client area. Read more on docs.microsoft.com. Type: BOOL A value that indicates whether the file contains ANSI or Unicode characters. If the value is zero, the file contains ANSI characters. Otherwise, it contains Unicode characters. Read more on docs.microsoft.com. Represents a Win32 handle that can be closed with . Contains extern methods from "KERNEL32.dll". Contains extern methods from "USER32.dll". Closes an open object handle. A valid handle to an open object. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. If the application is running under a debugger, the function will throw an exception if it receives either a handle value that is not valid or a pseudo-handle value. This can happen if you close a handle twice, or if you call CloseHandle on a handle returned by the FindFirstFile function instead of calling the FindClose function. The CloseHandle function closes handles to the following objects: This doc was truncated. Read more on docs.microsoft.com. Creates or opens a file or I/O device. The most commonly used I/O devices are as follows:\_file, file stream, directory, physical disk, volume, console buffer, tape drive, communications resource, mailslot, and pipe. (Unicode) The name of the file or device to be created or opened. You may use either forward slashes (/) or backslashes (\\) in this name. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, use this Unicode version of the function and prepend "\\\\?\\" to the path. For more information, see Naming Files, Paths, and Namespaces. For information on special device names, see Defining an MS-DOS Device Name. To create a file stream, specify the name of the file, a colon, and then the name of the stream. For more information, see File Streams.
Tip Starting with Windows 10, version 1607, for the unicode version of this function (CreateFileW), you can opt-in to remove the MAX_PATH limitation without prepending "\\?\". See the "Maximum Path Length Limitation" section of Naming Files, Paths, and Namespaces for details.
Read more on docs.microsoft.com. The requested access to the file or device, which can be summarized as read, write, both or neither zero). The most commonly used values are GENERIC_READ, GENERIC_WRITE, or both (GENERIC_READ | GENERIC_WRITE). For more information, see Generic Access Rights, File Security and Access Rights, File Access Rights Constants, and ACCESS_MASK. If this parameter is zero, the application can query certain metadata such as file, directory, or device attributes without accessing that file or device, even if GENERIC_READ access would have been denied. You cannot request an access mode that conflicts with the sharing mode that is specified by the dwShareMode parameter in an open request that already has an open handle. For more information, see the Remarks section of this topic and Creating and Opening Files. Read more on docs.microsoft.com. The requested sharing mode of the file or device, which can be read, write, both, delete, all of these, or none (refer to the following table). Access requests to attributes or extended attributes are not affected by this flag. If this parameter is zero and CreateFile succeeds, the file or device cannot be shared and cannot be opened again until the handle to the file or device is closed. For more information, see the Remarks section. You cannot request a sharing mode that conflicts with the access mode that is specified in an existing request that has an open handle. CreateFile would fail and the GetLastError function would return ERROR_SHARING_VIOLATION. To enable a process to share a file or device while another process has the file or device open, use a Read more on docs.microsoft.com. A pointer to a SECURITY_ATTRIBUTES structure that contains two separate but related data members: an optional security descriptor, and a Boolean value that determines whether the returned handle can be inherited by child processes. This parameter can be NULL. If this parameter is NULL, the handle returned by CreateFile cannot be inherited by any child processes the application may create and the file or device associated with the returned handle gets a default security descriptor. The lpSecurityDescriptor member of the structure specifies a SECURITY_DESCRIPTOR for a file or device. If this member is NULL, the file or device associated with the returned handle is assigned a default security descriptor. CreateFile ignores the lpSecurityDescriptor member when opening an existing file or device, but continues to use the bInheritHandle member. The bInheritHandle member of the structure specifies whether the returned handle can be inherited. For more information, see the Remarks section. Read more on docs.microsoft.com. An action to take on a file or device that exists or does not exist. For devices other than files, this parameter is usually set to OPEN_EXISTING. For more information, see the Remarks section. Read more on docs.microsoft.com. The file or device attributes and flags, FILE_ATTRIBUTE_NORMAL being the most common default value for files. This parameter can include any combination of the available file attributes (FILE_ATTRIBUTE_*). All other file attributes override FILE_ATTRIBUTE_NORMAL. This parameter can also contain combinations of flags (FILE_FLAG_*) for control of file or device caching behavior, access modes, and other special-purpose flags. These combine with any FILE_ATTRIBUTE_* values. This parameter can also contain Security Quality of Service (SQOS) information by specifying the SECURITY_SQOS_PRESENT flag. Additional SQOS-related flags information is presented in the table following the attributes and flags tables.
Note When CreateFile opens an existing file, it generally combines the file flags with the file attributes of the existing file, and ignores any file attributes supplied as part of dwFlagsAndAttributes. Special cases are detailed in Creating and Opening Files.
Some of the following file attributes and flags may only apply to files and not necessarily all other types of devices that CreateFile can open. For additional information, see the Remarks section of this topic and Creating and Opening Files. For more advanced access to file attributes, see SetFileAttributes. For a complete list of all file attributes with their values and descriptions, see File Attribute Constants.
This doc was truncated. Read more on docs.microsoft.com. A valid handle to a template file with the GENERIC_READ access right. The template file supplies file attributes and extended attributes for the file that is being created. This parameter can be NULL. When opening an existing file, CreateFile ignores this parameter. When opening a new encrypted file, the file inherits the discretionary access control list from its parent directory. For additional information, see File Encryption. Read more on docs.microsoft.com. If the function succeeds, the return value is an open handle to the specified file, device, named pipe, or mail slot. If the function fails, the return value is INVALID_HANDLE_VALUE. To get extended error information, call GetLastError. CreateFile was originally developed specifically for file interaction but has since been expanded and enhanced to include most other types of I/O devices and mechanisms available to Windows developers. This section attempts to cover the varied issues developers may experience when using CreateFile in different contexts and with different I/O types. The text attempts to use the word file only when referring specifically to data stored in an actual file on a file system. However, some uses of file may be referring more generally to an I/O object that supports file-like mechanisms. This liberal use of the term file is particularly prevalent in constant names and parameter names because of the previously mentioned historical reasons. When an application is finished using the object handle returned by CreateFile, use the CloseHandle function to close the handle. This not only frees up system resources, but can have wider influence on things like sharing the file or device and committing data to disk. Specifics are noted within this topic as appropriate. Windows Server 2003 and Windows XP: A sharing violation occurs if an attempt is made to open a file or directory for deletion on a remote computer when the value of the dwDesiredAccess parameter is the DELETE access flag (0x00010000) OR'ed with any other access flag, and the remote file or directory has not been opened with FILE_SHARE_DELETE. To avoid the sharing violation in this scenario, open the remote file or directory with the DELETE access right only, or call DeleteFile without first opening the file or directory for deletion. Some file systems, such as the NTFS file system, support compression or encryption for individual files and directories. On volumes that have a mounted file system with this support, a new file inherits the compression and encryption attributes of its directory. You cannot use CreateFile to control compression, decompression, or decryption on a file or directory. For more information, see Creating and Opening Files, File Compression and Decompression, and File Encryption. Windows Server 2003 and Windows XP: For backward compatibility purposes, CreateFile does not apply inheritance rules when you specify a security descriptor in lpSecurityAttributes. To support inheritance, functions that later query the security descriptor of this file may heuristically determine and report that inheritance is in effect. For more information, see Automatic Propagation of Inheritable ACEs. As stated previously, if the lpSecurityAttributes parameter is NULL, the handle returned by CreateFile cannot be inherited by any child processes your application may create. The following information regarding this parameter also applies: This doc was truncated. Read more on docs.microsoft.com.
Moves an existing file or directory, including its children, with various move options. (Unicode) The current name of the file or directory on the local computer. If dwFlags specifies MOVEFILE_DELAY_UNTIL_REBOOT, the file cannot exist on a remote share, because delayed operations are performed before the network is available. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "`\\?\`" to the path. For more information, see Naming a File
Tip  Starting with Windows 10, version 1607, for the unicode version of this function (MoveFileExW), you can opt-in to remove the MAX_PATH limitation without prepending "\\?\". See the "Maximum Path Length Limitation" section of Naming Files, Paths, and Namespaces for details.
 
Read more on docs.microsoft.com. The new name of the file or directory on the local computer. When moving a file, the destination can be on a different file system or volume. If the destination is on another drive, you must set the MOVEFILE_COPY_ALLOWED flag in dwFlags. When moving a directory, the destination must be on the same drive. If dwFlags specifies MOVEFILE_DELAY_UNTIL_REBOOT and lpNewFileName is NULL, MoveFileEx registers the lpExistingFileName file to be deleted when the system restarts. If lpExistingFileName refers to a directory, the system removes the directory at restart only if the directory is empty. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "`\\?\`" to the path. For more information, see Naming a File
Tip  Starting with Windows 10, version 1607, for the unicode version of this function (MoveFileExW), you can opt-in to remove the MAX_PATH limitation without prepending "\\?\". See the "Maximum Path Length Limitation" section of Naming Files, Paths, and Namespaces for details.
 
Read more on docs.microsoft.com. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero (0). To get extended error information, call GetLastError. If the dwFlags parameter specifies MOVEFILE_DELAY_UNTIL_REBOOT, MoveFileEx fails if it cannot access the registry. The function stores the locations of the files to be renamed at restart in the following registry value: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations This registry value is of type REG_MULTI_SZ. Each rename operation stores one of the following NULL-terminated strings, depending on whether the rename is a delete or not: This doc was truncated. Read more on docs.microsoft.com.
Flushes the buffers of a specified file and causes all buffered data to be written to a file. A handle to the open file. The file handle must have the GENERIC_WRITE access right. For more information, see File Security and Access Rights. If hFile is a handle to a communications device, the function only flushes the transmit buffer. If hFile is a handle to the server end of a named pipe, the function does not return until the client has read all buffered data from the pipe. Read more on docs.microsoft.com. If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. The function fails if hFile is a handle to the console output. That is because the console output is not buffered. The function returns FALSE, and GetLastError returns ERROR_INVALID_HANDLE. Typically the WriteFile and WriteFileEx functions write data to an internal buffer that the operating system writes to a disk or communication pipe on a regular basis. The FlushFileBuffers function writes all the buffered information for a specified file to the device or pipe. Due to disk caching interactions within the system, the FlushFileBuffers function can be inefficient when used after every write to a disk drive device when many writes are being performed separately. If an application is performing multiple writes to disk and also needs to ensure critical data is written to persistent media, the application should use unbuffered I/O instead of frequently calling FlushFileBuffers. To open a file for unbuffered I/O, call the CreateFile function with the FILE_FLAG_NO_BUFFERING and FILE_FLAG_WRITE_THROUGH flags. This prevents the file contents from being cached and flushes the metadata to disk with each write. For more information, see CreateFile. To flush all open files on a volume, call FlushFileBuffers with a handle to the volume. The caller must have administrative privileges. For more information, see Running with Special Privileges. When opening a volume with CreateFile, the lpFileName string should be the following form: \\.\x: or \\?\Volume{GUID}. Do not use a trailing backslash in the volume name, because that indicates the root directory of a drive. In Windows 8 and Windows Server 2012, this function is supported by the following technologies. This doc was truncated. Read more on docs.microsoft.com. Writes data to the specified file or input/output (I/O) device. A handle to the file or I/O device (for example, a file, file stream, physical disk, volume, console buffer, tape drive, socket, communications resource, mailslot, or pipe). The hFile parameter must have been created with the write access. For more information, see Generic Access Rights and File Security and Access Rights. For asynchronous write operations, hFile can be any handle opened with the CreateFile function using the FILE_FLAG_OVERLAPPED flag or a socket handle returned by the socket or accept function. Read more on docs.microsoft.com. A pointer to the buffer containing the data to be written to the file or device. This buffer must remain valid for the duration of the write operation. The caller must not use this buffer until the write operation is completed. Read more on docs.microsoft.com. The number of bytes to be written to the file or device. A value of zero specifies a null write operation. The behavior of a null write operation depends on the underlying file system or communications technology. Windows Server 2003 and Windows XP:  Pipe write operations across a network are limited in size per write. The amount varies per platform. For x86 platforms it's 63.97 MB. For x64 platforms it's 31.97 MB. For Itanium it's 63.95 MB. For more information regarding pipes, see the Remarks section. Read more on docs.microsoft.com. A pointer to the variable that receives the number of bytes written when using a synchronous hFile parameter. WriteFile sets this value to zero before doing any work or error checking. Use NULL for this parameter if this is an asynchronous operation to avoid potentially erroneous results. This parameter can be NULL only when the lpOverlapped parameter is not NULL. Windows 7:  This parameter can not be NULL. For more information, see the Remarks section. Read more on docs.microsoft.com. A pointer to an OVERLAPPED structure is required if the hFile parameter was opened with FILE_FLAG_OVERLAPPED, otherwise this parameter can be NULL. For an hFile that supports byte offsets, if you use this parameter you must specify a byte offset at which to start writing to the file or device. This offset is specified by setting the Offset and OffsetHigh members of the OVERLAPPED structure. For an hFile that does not support byte offsets, Offset and OffsetHigh are ignored. To write to the end of file, specify both the Offset and OffsetHigh members of the OVERLAPPED structure as 0xFFFFFFFF. This is functionally equivalent to previously calling the CreateFile function to open hFile using FILE_APPEND_DATA access. For more information about different combinations of lpOverlapped and FILE_FLAG_OVERLAPPED, see the Remarks section and the Synchronization and File Position section. Read more on docs.microsoft.com. If the function succeeds, the return value is nonzero (TRUE). If the function fails, or is completing asynchronously, the return value is zero (FALSE). To get extended error information, call the GetLastError function.
Note  The GetLastError code ERROR_IO_PENDING is not a failure; it designates the write operation is pending completion asynchronously. For more information, see Remarks.
 
The WriteFile function returns when one of the following conditions occur: This doc was truncated. Read more on docs.microsoft.com.
Frees the specified global memory object and invalidates its handle. A handle to the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function. It is not safe to free memory allocated with LocalAlloc. Read more on docs.microsoft.com. If the function succeeds, the return value is NULL. If the function fails, the return value is equal to a handle to the global memory object. To get extended error information, call GetLastError. If the process examines or modifies the memory after it has been freed, heap corruption may occur or an access violation exception (EXCEPTION_ACCESS_VIOLATION) may be generated. The GlobalFree function will free a locked memory object. A locked memory object has a lock count greater than zero. The GlobalLock function locks a global memory object and increments the lock count by one. The GlobalUnlock function unlocks it and decrements the lock count by one. To get the lock count of a global memory object, use the GlobalFlags function. If an application is running under a debug version of the system, GlobalFree will issue a message that tells you that a locked object is being freed. If you are debugging the application, GlobalFree will enter a breakpoint just before freeing a locked object. This allows you to verify the intended behavior, then continue execution. Read more on docs.microsoft.com. Allocates the specified number of bytes from the heap. (GlobalAlloc) The number of bytes to allocate. If this parameter is zero and the uFlags parameter specifies GMEM_MOVEABLE, the function returns a handle to a memory object that is marked as discarded. If the function succeeds, the return value is a handle to the newly allocated memory object. If the function fails, the return value is NULL. To get extended error information, call GetLastError. Windows memory management does not provide a separate local heap and global heap. Therefore, the GlobalAlloc and LocalAlloc functions are essentially the same. The movable-memory flags GHND and GMEM_MOVABLE add unnecessary overhead and require locking to be used safely. They should be avoided unless documentation specifically states that they should be used. New applications should use the heap functions to allocate and manage memory unless the documentation specifically states that a global function should be used. For example, the global functions are still used with Dynamic Data Exchange (DDE), the clipboard functions, and OLE data objects. If the GlobalAlloc function succeeds, it allocates at least the amount of memory requested. If the actual amount allocated is greater than the amount requested, the process can use the entire amount. To determine the actual number of bytes allocated, use the GlobalSize function. If the heap does not contain sufficient free space to satisfy the request, GlobalAlloc returns NULL. Because NULL is used to indicate an error, virtual address zero is never allocated. It is, therefore, easy to detect the use of a NULL pointer. Memory allocated with this function is guaranteed to be aligned on an 8-byte boundary. To execute dynamically generated code, use the VirtualAlloc function to allocate memory and the VirtualProtect function to grant PAGE_EXECUTE access. To free the memory, use the GlobalFree function. It is not safe to free memory allocated with GlobalAlloc using LocalFree. Read more on docs.microsoft.com. Locks a global memory object and returns a pointer to the first byte of the object's memory block. A handle to the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function. Read more on docs.microsoft.com. If the function succeeds, the return value is a pointer to the first byte of the memory block. If the function fails, the return value is NULL. To get extended error information, call GetLastError. The internal data structures for each memory object include a lock count that is initially zero. For movable memory objects, GlobalLock increments the count by one, and the GlobalUnlock function decrements the count by one. Each successful call that a process makes to GlobalLock for an object must be matched by a corresponding call to GlobalUnlock. Locked memory will not be moved or discarded, unless the memory object is reallocated by using the GlobalReAlloc function. The memory block of a locked memory object remains locked until its lock count is decremented to zero, at which time it can be moved or discarded. Memory objects allocated with GMEM_FIXED always have a lock count of zero. For these objects, the value of the returned pointer is equal to the value of the specified handle. If the specified memory block has been discarded or if the memory block has a zero-byte size, this function returns NULL. Discarded objects always have a lock count of zero. Read more on docs.microsoft.com. Decrements the lock count associated with a memory object that was allocated with GMEM_MOVEABLE. A handle to the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function. Read more on docs.microsoft.com. If the memory object is still locked after decrementing the lock count, the return value is a nonzero value. If the memory object is unlocked after decrementing the lock count, the function returns zero and GetLastError returns NO_ERROR. If the function fails, the return value is zero and GetLastError returns a value other than NO_ERROR. The internal data structures for each memory object include a lock count that is initially zero. For movable memory objects, the GlobalLock function increments the count by one, and GlobalUnlock decrements the count by one. For each call that a process makes to GlobalLock for an object, it must eventually call GlobalUnlock. Locked memory will not be moved or discarded, unless the memory object is reallocated by using the GlobalReAlloc function. The memory block of a locked memory object remains locked until its lock count is decremented to zero, at which time it can be moved or discarded. Memory objects allocated with GMEM_FIXED always have a lock count of zero. If the specified memory block is fixed memory, this function returns TRUE. If the memory object is already unlocked, GlobalUnlock returns FALSE and GetLastError reports ERROR_NOT_LOCKED. A process should not rely on the return value to determine the number of times it must subsequently call GlobalUnlock for a memory object. Read more on docs.microsoft.com. Changes the size, position, and Z order of a child, pop-up, or top-level window. These windows are ordered according to their appearance on the screen. The topmost window receives the highest rank and is the first window in the Z order. Type: HWND A handle to the window. Read more on docs.microsoft.com. Type: HWND Type: int The new position of the left side of the window, in client coordinates. Read more on docs.microsoft.com. Type: int The new position of the top of the window, in client coordinates. Read more on docs.microsoft.com. Type: int The new width of the window, in pixels. Read more on docs.microsoft.com. Type: int The new height of the window, in pixels. Read more on docs.microsoft.com. Type: UINT Type: BOOL If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. As part of the Vista re-architecture, all services were moved off the interactive desktop into Session 0. hwnd and window manager operations are only effective inside a session and cross-session attempts to manipulate the hwnd will fail. For more information, see The Windows Vista Developer Story: Application Compatibility Cookbook. If you have changed certain window data using SetWindowLong, you must call SetWindowPos for the changes to take effect. Use the following combination for uFlags: SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED. A window can be made a topmost window either by setting the hWndInsertAfter parameter to HWND_TOPMOST and ensuring that the SWP_NOZORDER flag is not set, or by setting a window's position in the Z order so that it is above any existing topmost windows. When a non-topmost window is made topmost, its owned windows are also made topmost. Its owners, however, are not changed. If neither the SWP_NOACTIVATE nor SWP_NOZORDER flag is specified (that is, when the application requests that a window be simultaneously activated and its position in the Z order changed), the value specified in hWndInsertAfter is used only in the following circumstances. This doc was truncated. Read more on docs.microsoft.com. Brings the thread that created the specified window into the foreground and activates the window. Type: HWND A handle to the window that should be activated and brought to the foreground. Read more on docs.microsoft.com. Type: BOOL If the window was brought to the foreground, the return value is nonzero. If the window was not brought to the foreground, the return value is zero. The system restricts which processes can set the foreground window. A process can set the foreground window by calling **SetForegroundWindow** only if: - All of the following conditions are true: - The calling process belongs to a desktop application, not a UWP app or a Windows Store app designed for Windows 8 or 8.1. - The foreground process has not disabled calls to **SetForegroundWindow** by a previous call to the [**LockSetForegroundWindow**](nf-winuser-locksetforegroundwindow.md) function. - The foreground lock time-out has expired (see [**SPI_GETFOREGROUNDLOCKTIMEOUT** in **SystemParametersInfo**](nf-winuser-systemparametersinfoa.md#SPI_GETFOREGROUNDLOCKTIMEOUT)). - No menus are active. - Additionally, at least one of the following conditions is true: - The calling process is the foreground process. - The calling process was started by the foreground process. - There is currently no foreground window, and thus no foreground process. - The calling process received the last input event. - Either the foreground process or the calling process is being debugged. It is possible for a process to be denied the right to set the foreground window even if it meets these conditions. An application cannot force a window to the foreground while the user is working with another window. Instead, Windows flashes the taskbar button of the window to notify the user. A process that can set the foreground window can enable another process to set the foreground window by calling the [**AllowSetForegroundWindow**](nf-winuser-allowsetforegroundwindow.md) function. The process specified by the *dwProcessId* parameter to **AllowSetForegroundWindow** loses the ability to set the foreground window the next time that either the user generates input, unless the input is directed at that process, or the next time a process calls **AllowSetForegroundWindow**, unless the same process is specified as in the previous call to **AllowSetForegroundWindow**. The foreground process can disable calls to SetForegroundWindow by calling the [**LockSetForegroundWindow**](nf-winuser-locksetforegroundwindow.md) function. Read more on docs.microsoft.com. Sets the keyboard focus to the specified window. The window must be attached to the calling thread's message queue. Type: **HWND** A handle to the window that will receive the keyboard input. If this parameter is NULL, keystrokes are ignored. Read more on docs.microsoft.com. Type: **HWND** If the function succeeds, the return value is the handle to the window that previously had the keyboard focus. If the *hWnd* parameter is invalid or the window is not attached to the calling thread's message queue, the return value is NULL. To get extended error information, call [GetLastError function](../errhandlingapi/nf-errhandlingapi-getlasterror.md). Extended error ERROR_INVALID_PARAMETER (0x57) means that window is in disabled state. This function sends a [WM_KILLFOCUS](/windows/desktop/inputdev/wm-killfocus) message to the window that loses the keyboard focus and a [WM_SETFOCUS](/windows/desktop/inputdev/wm-setfocus) message to the window that receives the keyboard focus. It also activates either the window that receives the focus or the parent of the window that receives the focus. If a window is active but does not have the focus, any key pressed produces the [WM_SYSCHAR](/windows/desktop/menurc/wm-syschar), [WM_SYSKEYDOWN](/windows/desktop/inputdev/wm-syskeydown), or [WM_SYSKEYUP](/windows/desktop/inputdev/wm-syskeyup) message. If the VK_MENU key is also pressed, bit 30 of the *lParam* parameter of the message is set. Otherwise, the messages produced do not have this bit set. By using the [AttachThreadInput function](nf-winuser-attachthreadinput.md), a thread can attach its input processing to another thread. This allows a thread to call SetFocus to set the keyboard focus to a window attached to another thread's message queue. Read more on docs.microsoft.com. Activates a window. The window must be attached to the calling thread's message queue. Type: HWND A handle to the top-level window to be activated. Read more on docs.microsoft.com. Type: HWND If the function succeeds, the return value is the handle to the window that was previously active. If the function fails, the return value is NULL. To get extended error information, call GetLastError. The SetActiveWindow function activates a window, but not if the application is in the background. The window will be brought into the foreground (top of Z-Order) if its application is in the foreground when the system activates the window. If the window identified by the hWnd parameter was created by the calling thread, the active window status of the calling thread is set to hWnd. Otherwise, the active window status of the calling thread is set to NULL. Read more on docs.microsoft.com. Opens the clipboard for examination and prevents other applications from modifying the clipboard content. Type: HWND A handle to the window to be associated with the open clipboard. If this parameter is NULL, the open clipboard is associated with the current task. Read more on docs.microsoft.com. Type: BOOL If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. OpenClipboard fails if another window has the clipboard open. An application should call the CloseClipboard function after every successful call to OpenClipboard. The window identified by the hWndNewOwner parameter does not become the clipboard owner unless the EmptyClipboard function is called. If an application calls OpenClipboard with hwnd set to NULL, EmptyClipboard sets the clipboard owner to NULL; this causes SetClipboardData to fail. Read more on docs.microsoft.com. Places data on the clipboard in a specified clipboard format. Type: UINT The clipboard format. This parameter can be a registered format or any of the standard clipboard formats. For more information, see Standard Clipboard Formats and Registered Clipboard Formats. Read more on docs.microsoft.com. Type: HANDLE A handle to the data in the specified format. This parameter can be NULL, indicating that the window provides data in the specified clipboard format (renders the format) upon request; this is known as [delayed rendering](/windows/win32/dataxchg/clipboard-operations#delayed-rendering). If a window delays rendering, it must process the [WM_RENDERFORMAT](/windows/win32/dataxchg/wm-renderformat) and [WM_RENDERALLFORMATS](/windows/win32/dataxchg/wm-renderallformats) messages. If SetClipboardData succeeds, the system owns the object identified by the hMem parameter. The application may not write to or free the data once ownership has been transferred to the system, but it can lock and read from the data until the CloseClipboard function is called. (The memory must be unlocked before the Clipboard is closed.) If the hMem parameter identifies a memory object, the object must have been allocated using the function with the GMEM_MOVEABLE flag. Read more on docs.microsoft.com. Type: HANDLE If the function succeeds, the return value is the handle to the data. If the function fails, the return value is NULL. To get extended error information, call GetLastError. Windows 8: Bitmaps to be shared with Windows Store app apps must be in the CF_BITMAP format (device-dependent bitmap). If an application calls SetClipboardData in response to WM_RENDERFORMAT or WM_RENDERALLFORMATS, the application should not use the handle after SetClipboardData has been called. If an application calls OpenClipboard with hwnd set to NULL, EmptyClipboard sets the clipboard owner to NULL; this causes SetClipboardData to fail. The system performs implicit data format conversions between certain clipboard formats when an application calls the GetClipboardData function. For example, if the CF_OEMTEXT format is on the clipboard, a window can retrieve data in the CF_TEXT format. The format on the clipboard is converted to the requested format on demand. For more information, see Synthesized Clipboard Formats. Read more on docs.microsoft.com. Closes the clipboard. Type: BOOL If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. When the window has finished examining or changing the clipboard, close the clipboard by calling CloseClipboard. This enables other windows to access the clipboard. Do not place an object on the clipboard after calling CloseClipboard. Read more on docs.microsoft.com. The SECURITY_ATTRIBUTES structure contains the security descriptor for an object and specifies whether the handle retrieved by specifying this structure is inheritable. The size, in bytes, of this structure. Set this value to the size of the **SECURITY\_ATTRIBUTES** structure. A pointer to a [**SECURITY\_DESCRIPTOR**](../winnt/ns-winnt-security_descriptor.md) structure that controls access to the object. If the value of this member is **NULL**, the object is assigned the default security descriptor associated with the [*access token*](/windows/win32/secauthz/access-tokens) of the calling process. This is not the same as granting access to everyone by assigning a **NULL** [*discretionary access control list*](/windows/win32/secauthz/dacls-and-aces) (DACL). By default, the default DACL in the access token of a process allows access only to the user represented by the access token. For information about creating a security descriptor, see [Creating a Security Descriptor](/windows/win32/secauthz/creating-a-security-descriptor-for-a-new-object-in-c--). Read more on docs.microsoft.com. A Boolean value that specifies whether the returned handle is inherited when a new process is created. If this member is **TRUE**, the new process inherits the handle. Custom -derived type for the GetCommandParsingRegex method. Cached, thread-safe singleton instance. Initializes the instance. Provides a factory for creating instances to be used by methods on . Creates an instance of a used by methods on . Provides the runner that contains the custom logic implementing the specified regular expression. Scan the starting from base.runtextstart for the next match. The text being scanned by the regular expression. Search starting from base.runtextpos for the next location a match could possibly start. The text being scanned by the regular expression. true if a possible match was found; false if no more matches are possible. Determine whether at base.runtextpos is a match for the regular expression. The text being scanned by the regular expression. true if the regular expression matches at the current position; otherwise, false. Custom -derived type for the NonAlphaRegex method. Cached, thread-safe singleton instance. Initializes the instance. Provides a factory for creating instances to be used by methods on . Creates an instance of a used by methods on . Provides the runner that contains the custom logic implementing the specified regular expression. Scan the starting from base.runtextstart for the next match. The text being scanned by the regular expression. Search starting from base.runtextpos for the next location a match could possibly start. The text being scanned by the regular expression. true if a possible match was found; false if no more matches are possible. Custom -derived type for the CompiledUrlRegex method. Cached, thread-safe singleton instance. Initializes the instance. Provides a factory for creating instances to be used by methods on . Creates an instance of a used by methods on . Provides the runner that contains the custom logic implementing the specified regular expression. Scan the starting from base.runtextstart for the next match. The text being scanned by the regular expression. Search starting from base.runtextpos for the next location a match could possibly start. The text being scanned by the regular expression. true if a possible match was found; false if no more matches are possible. Determine whether at base.runtextpos is a match for the regular expression. The text being scanned by the regular expression. true if the regular expression matches at the current position; otherwise, false. Helper methods used by generated -derived implementations. Default timeout value set in , or if none was set. Whether is non-infinite. Pops 2 values from the backtracking stack. Pushes 2 values onto the backtracking stack. Pushes 3 values onto the backtracking stack.