Redo how the remote filesystem works

Instead of reading files over the network, the new version uses a local file cache and only updates files when it changes.

The original remote filesystem was created 14 years ago, when ethernet was faster than hard drives or even flash. Also, mobile devices have a very small amount of storage.
Nowadays, this is no longer the case so the approach is changed to using a persistent cache in the target device.

Co-authored-by: m4gr3d
This commit is contained in:
Juan Linietsky
2023-04-28 13:15:36 +02:00
parent 352ebe9725
commit 273a6eeb66
22 changed files with 714 additions and 1039 deletions

View File

@ -193,10 +193,8 @@ void print_error(String p_string) {
_global_unlock();
}
void print_verbose(String p_string) {
if (OS::get_singleton()->is_stdout_verbose()) {
print_line(p_string);
}
bool is_print_verbose_enabled() {
return OS::get_singleton()->is_stdout_verbose();
}
String stringify_variants(Variant p_var) {

View File

@ -59,7 +59,15 @@ void remove_print_handler(const PrintHandlerList *p_handler);
extern void __print_line(String p_string);
extern void __print_line_rich(String p_string);
extern void print_error(String p_string);
extern void print_verbose(String p_string);
extern bool is_print_verbose_enabled();
// This version avoids processing the text to be printed until it actually has to be printed, saving some CPU usage.
#define print_verbose(m_text) \
{ \
if (is_print_verbose_enabled()) { \
print_line(m_text); \
} \
}
inline void print_line(Variant v) {
__print_line(stringify_variants(v));