ResourceUID¶
Inherits: Object
A singleton that manages the unique identifiers of all resources within a project.
Description¶
Resource UIDs (Unique IDentifiers) allow the engine to keep references between resources intact, even if files can renamed or moved. They can be accessed with uid://
.
ResourceUID keeps track of all registered resource UIDs in a project, generates new UIDs, and converts between their string and integer representations.
Methods¶
void |
|
create_id ( ) |
|
get_id_path ( int id ) const |
|
id_to_text ( int id ) const |
|
void |
|
void |
|
text_to_id ( String text_id ) const |
Constants¶
INVALID_ID = -1
The value to use for an invalid UID, for example if the resource could not be loaded.
Its text representation is uid://<invalid>
.
Method Descriptions¶
void add_id ( int id, String path )
Adds a new UID value which is mapped to the given resource path.
Fails with an error if the UID already exists, so be sure to check has_id beforehand, or use set_id instead.
int create_id ( )
Generates a random resource UID which is guaranteed to be unique within the list of currently loaded UIDs.
In order for this UID to be registered, you must call add_id or set_id.
String get_id_path ( int id ) const
Returns the path that the given UID value refers to.
Fails with an error if the UID does not exist, so be sure to check has_id beforehand.
Returns whether the given UID value is known to the cache.
String id_to_text ( int id ) const
Converts the given UID to a uid://
string value.
void remove_id ( int id )
Removes a loaded UID value from the cache.
Fails with an error if the UID does not exist, so be sure to check has_id beforehand.
void set_id ( int id, String path )
Updates the resource path of an existing UID.
Fails with an error if the UID does not exist, so be sure to check has_id beforehand, or use add_id instead.
int text_to_id ( String text_id ) const
Extracts the UID value from the given uid://
string.