virtualx-engine/doc/classes/EngineDebugger.xml
simpu ea2eaf8c27 Added debugger plugin support
Changes:
* EngineDebugger is exposed to gdscript. Game side of communication can be implemented through it.
* EditorDebuggerPlugin is added which handles the editor side of communication.
2020-08-26 11:24:51 +05:30

132 lines
4.7 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="EngineDebugger" inherits="Object" version="4.0">
<brief_description>
Exposes the internal debugger.
</brief_description>
<description>
[EngineDebugger] handles the communication between the editor and the running game. It is active in the running game. Messages can be sent/received through it. It also manages the profilers.
</description>
<tutorials>
</tutorials>
<methods>
<method name="has_capture">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if a capture with the given name is present otherwise [code]false[/code].
</description>
</method>
<method name="has_profiler">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if a profiler with the given name is present otherwise [code]false[/code].
</description>
</method>
<method name="is_active">
<return type="bool">
</return>
<description>
Returns [code]true[/code] if the debugger is active otherwise [code]false[/code].
</description>
</method>
<method name="is_profiling">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if a profiler with the given name is present and active otherwise [code]false[/code].
</description>
</method>
<method name="profiler_add_frame_data">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="data" type="Array">
</argument>
<description>
Calls the [code]add[/code] callable of the profiler with given [code]name[/code] and [code]data[/code].
</description>
</method>
<method name="profiler_enable">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="enable" type="bool">
</argument>
<argument index="2" name="arguments" type="Array" default="[ ]">
</argument>
<description>
Calls the [code]toggle[/code] callable of the profiler with given [code]name[/code] and [code]arguments[/code]. Enables/Disables the same profiler depending on [code]enable[/code] argument.
</description>
</method>
<method name="register_message_capture">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="callable" type="Callable">
</argument>
<description>
Registers a message capture with given [code]name[/code]. If [code]name[/code] is "my_message" then messages starting with "my_message:" will be called with the given callable.
Callable must accept a message string and a data array as argument. If the message and data are valid then callable must return [code]true[/code] otherwise [code]false[/code].
</description>
</method>
<method name="register_profiler">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="toggle" type="Callable">
</argument>
<argument index="2" name="add" type="Callable">
</argument>
<argument index="3" name="tick" type="Callable">
</argument>
<description>
Registers a profiler with the given [code]name[/code].
[code]toggle[/code] callable is called when the profiler is enabled/disabled. It must take an argument array as an argument.
[code]add[/code] callable is called when data is added to profiler using [method EngineDebugger.profiler_add_frame_data]. It must take a data array as argument.
[code]tick[/code] callable is called at every active profiler iteration. It must take frame time, idle time, physics time, and physics idle time as arguments.
</description>
</method>
<method name="send_message">
<return type="void">
</return>
<argument index="0" name="message" type="String">
</argument>
<argument index="1" name="data" type="Array">
</argument>
<description>
Sends a message with given [code]message[/code] and [code]data[/code] array.
</description>
</method>
<method name="unregister_message_capture">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<description>
Unregisters the message capture with given [code]name[/code].
</description>
</method>
<method name="unregister_profiler">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
</argument>
<description>
Unregisters a profiler with given [code]name[/code].
</description>
</method>
</methods>
<constants>
</constants>
</class>