Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
EngineDebugger
Eredita: Object
Espone il debugger interno.
Descrizione
L'EngineDebugger gestisce la comunicazione tra l'editor e il gioco in esecuzione. È attivo nel gioco in esecuzione. I messaggi possono essere inviati e ricevuti tramite esso. Gestisce anche i profiler.
Metodi
void |
|
void |
debug(can_continue: bool = true, is_error_breakpoint: bool = false) |
get_depth() const |
|
get_lines_left() const |
|
has_capture(name: StringName) |
|
has_profiler(name: StringName) |
|
void |
insert_breakpoint(line: int, source: StringName) |
is_breakpoint(line: int, source: StringName) const |
|
is_profiling(name: StringName) |
|
is_skipping_breakpoints() const |
|
void |
|
void |
profiler_add_frame_data(name: StringName, data: Array) |
void |
profiler_enable(name: StringName, enable: bool, arguments: Array = []) |
void |
register_message_capture(name: StringName, callable: Callable) |
void |
register_profiler(name: StringName, profiler: EngineProfiler) |
void |
remove_breakpoint(line: int, source: StringName) |
void |
script_debug(language: ScriptLanguage, can_continue: bool = true, is_error_breakpoint: bool = false) |
void |
send_message(message: String, data: Array) |
void |
|
void |
set_lines_left(lines: int) |
void |
|
void |
unregister_profiler(name: StringName) |
Descrizioni dei metodi
void clear_breakpoints() 🔗
Cancella tutti i punti d'interruzione.
void debug(can_continue: bool = true, is_error_breakpoint: bool = false) 🔗
Avvia un'interruzione di debug nell'esecuzione dello script, specificando facoltativamente se il programma può continuare in base a can_continue e se l'interruzione è dovuta a un punto d'interruzione.
Sperimentale: Questo metodo potrebbe essere cambiato o rimosso in versioni future.
Restituisce la profondità di debug attuale.
Sperimentale: Questo metodo potrebbe essere cambiato o rimosso in versioni future.
Restituisce il numero di righe che rimangono.
bool has_capture(name: StringName) 🔗
Restituisce true se una cattura con il nome fornito è presente altrimenti false.
bool has_profiler(name: StringName) 🔗
Restituisce true se un profiler con il nome fornito è presente altrimenti false.
void insert_breakpoint(line: int, source: StringName) 🔗
Inserisce un nuovo punto d'interruzione con la sorgente (source) e righe (line) fornite.
Restituisce true se il debugger è attivo altrimenti false.
bool is_breakpoint(line: int, source: StringName) const 🔗
Restituisce true se la sorgente (source) e riga (line) rappresentano un punto d'interruzione esistente.
bool is_profiling(name: StringName) 🔗
Restituisce true se un profiler con il nome fornito è presente e attivo altrimenti false.
bool is_skipping_breakpoints() const 🔗
Restituisce true se il debugger sta saltando i punti d'interruzione altrimenti false.
void line_poll() 🔗
Forza un ciclo di elaborazione degli eventi del debugger. Lo scopo di questo metodo è di elaborare gli eventi ogni tanto quando lo script potrebbe essere troppo occupato, in modo che sia possibile individuare bug come i cicli infiniti.
void profiler_add_frame_data(name: StringName, data: Array) 🔗
Chiama il chiamabile add del profiler con il nome name e data specificati.
void profiler_enable(name: StringName, enable: bool, arguments: Array = []) 🔗
Chiama il chiamabile toggle del profiler con il nome name e arguments specificati. Abilita/disabilita lo stesso profiler in base all'argomento enable.
void register_message_capture(name: StringName, callable: Callable) 🔗
Registra una cattura di messaggio con il nome name. Se name è "my_message", i messaggi che iniziano con "my_message:" saranno chiamati con il chiamabile fornito.
Il chiamabile deve accettare una stringa di messaggio e un array di dati come argomenti. Il chiamabile deve restituire true se il messaggio viene riconosciuto.
Nota: Il chiamabile riceverà il messaggio con il prefisso rimosso, a differenza di EditorDebuggerPlugin._capture(). Consulta la descrizione di EditorDebuggerPlugin per un esempio.
void register_profiler(name: StringName, profiler: EngineProfiler) 🔗
Registra un profiler con il nome name specificato. Vedi EngineProfiler per ulteriori informazioni.
void remove_breakpoint(line: int, source: StringName) 🔗
Rimuove un punto d'interruzione con la sorgente (source) e riga (line) fornite.
void script_debug(language: ScriptLanguage, can_continue: bool = true, is_error_breakpoint: bool = false) 🔗
Avvia un'interruzione di debug nell'esecuzione dello script, specificando facoltativamente se il programma può continuare in base a can_continue e se l'interruzione è dovuta a un punto d'interruzione.
void send_message(message: String, data: Array) 🔗
Invia un messaggio con la stringa message e l'array data.
Sperimentale: Questo metodo potrebbe essere cambiato o rimosso in versioni future.
Imposta la profondità di debug attuale.
void set_lines_left(lines: int) 🔗
Sperimentale: Questo metodo potrebbe essere cambiato o rimosso in versioni future.
Imposta le righe di debug attuali che rimangono.
void unregister_message_capture(name: StringName) 🔗
Annulla la registrazione della cattura di messaggio con il nome name.
void unregister_profiler(name: StringName) 🔗
Annulla la registrazione di un profiler con il nome name.