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 🔗
Повертає шлях, за потреби перетворюючи path_or_uid. Виводить помилку, якщо вказано недійсний UID.
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.
String uid_to_path(uid: String) static 🔗
Перетворює наданий uid на шлях. Виводить помилку, якщо UID недійсний.