ResourceUID
Наследует: Object
Синглтон, управляющий уникальными идентификаторами всех ресурсов в проекте.
Описание
UID ресурсов (Уникальные Идентификаторы) позволяют движку сохранять ссылки между ресурсами нетронутыми, даже если файлы переименованы или перемещены. К ним можно получить доступ с помощью uid://.
ResourceUID отслеживает все зарегистрированные UID ресурсов в проекте, генерирует новые UID и преобразует их между строковыми и целочисленными представлениями.
Методы
void |
|
create_id_for_path(path: String) |
|
ensure_path(path_or_uid: String) static |
|
get_id_path(id: int) const |
|
id_to_text(id: int) const |
|
path_to_uid(path: String) static |
|
void |
|
void |
|
text_to_id(text_id: String) const |
|
uid_to_path(uid: String) static |
Константы
INVALID_ID = -1 🔗
Значение, которое следует использовать для недопустимого UID, например, если ресурс не удалось загрузить.
Его текстовое представление — uid://<invalid>.
Описания метода
void add_id(id: int, path: String) 🔗
Добавляет новое значение UID, которое сопоставляется с указанным путем ресурса.
Выполняется с ошибкой, если UID уже существует, поэтому обязательно проверьте has_id() заранее или используйте вместо него set_id().
Генерирует случайный UID ресурса, который гарантированно будет уникальным в списке загруженных в данный момент UID.
Чтобы зарегистрировать этот UID, необходимо вызвать add_id() или set_id().
int create_id_for_path(path: String) 🔗
Как и create_id(), но UID заполняется предоставленным path и именем проекта. UID сгенерированные для этого пути, всегда будут одинаковыми в текущем проекте.
String ensure_path(path_or_uid: String) static 🔗
Returns a path, converting path_or_uid if necessary. Fails and returns an empty string if an invalid UID is provided.
String get_id_path(id: int) const 🔗
Возвращает путь, на который ссылается заданное значение UID.
Выполняется с ошибкой, если UID не существует, поэтому обязательно проверьте has_id() заранее.
Возвращает, известно ли кэшу заданное значение UID.
String id_to_text(id: int) const 🔗
Преобразует заданный UID в строковое значение uid://.
String path_to_uid(path: String) static 🔗
Преобразует предоставленный ресурс path в UID. Возвращает неизмененный путь, если у него нет связанного UID.
Удаляет загруженное значение UID из кэша.
Выдает ошибку, если UID не существует, поэтому обязательно проверьте has_id() заранее.
void set_id(id: int, path: String) 🔗
Обновляет путь к ресурсу существующего UID.
Выполняется с ошибкой, если UID не существует, поэтому обязательно проверьте has_id() заранее или используйте вместо него add_id().
int text_to_id(text_id: String) const 🔗
Извлекает значение UID из заданной строки uid://.
String uid_to_path(uid: String) static 🔗
Преобразует предоставленный uid в путь. Выводит ошибку, если UID недействителен.