diff options
author | Jeroen Bakker <jbakker> | 2021-11-24 10:20:18 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2021-11-24 10:21:40 +0300 |
commit | dbeab82a89c4979b7e9e62e740938546394eca3e (patch) | |
tree | 63a168d16a825ed7f0b381367e10e4f128ca640d /source/blender/editors/space_file/filelist.h | |
parent | 16fc0da0e7d8286f17ba254213c6ba8c5a336f3a (diff) |
T91406: Asset Library Indexing
Asset library indexing would store indexes of asset files to speed up
asset library browsing.
* Indexes are read when they are up to date
** Index should exist
** Index last modify data should be later than the file it indexes
** Index version should match
* The index of a file containing no assets can be load without opening
the index file. The size of the file should be below a 32 bytes.
* Indexes are stored on a persistent cache folder.
* Unused index files are automatically removed.
The structure of the index files contains all data needed for browsing assets:
```
{
"version": <file version number>,
"entries": [{
"name": "<asset name>",
"catalog_id": "<catalog_id>",
"catalog_name": "<catalog_name>",
"description": "<description>",
"author": "<author>",
"tags": ["<tag>"]
}]
}
```
Reviewed By: sybren, Severin
Maniphest Tasks: T91406
Differential Revision: https://developer.blender.org/D12693
Diffstat (limited to 'source/blender/editors/space_file/filelist.h')
-rw-r--r-- | source/blender/editors/space_file/filelist.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/editors/space_file/filelist.h b/source/blender/editors/space_file/filelist.h index 0048a349dca..e7cda106224 100644 --- a/source/blender/editors/space_file/filelist.h +++ b/source/blender/editors/space_file/filelist.h @@ -29,6 +29,7 @@ extern "C" { struct AssetLibraryReference; struct BlendHandle; +struct FileIndexerType; struct FileList; struct FileSelection; struct bUUID; @@ -72,6 +73,7 @@ void filelist_setfilter_options(struct FileList *filelist, const bool filter_assets_only, const char *filter_glob, const char *filter_search); +void filelist_setindexer(struct FileList *filelist, const struct FileIndexerType *indexer); void filelist_set_asset_catalog_filter_options( struct FileList *filelist, eFileSel_Params_AssetCatalogVisibility catalog_visibility, |