Blender
V3.3
|
Classes | |
class | AbstractFile |
class | BlendFile |
Reference to a blend file that can be indexed. More... | |
struct | AssetEntryReader |
Single entry inside a #AssetIndexFile for reading. More... | |
struct | AssetEntryWriter |
struct | AssetLibraryIndex |
References the asset library directory. More... | |
struct | AssetIndex |
class | AssetIndexFile |
|
constexpr |
Definition at line 782 of file asset_indexer.cc.
References filelist_finished(), FileIndexerType::filelist_finished, free_user_data(), FileIndexerType::free_user_data, init_user_data(), FileIndexerType::init_user_data, read_index(), FileIndexerType::read_index, update_index(), and FileIndexerType::update_index.
|
constexpr |
Referenced by init_indexer_entries_from_value(), and init_value_from_file_indexer_entries().
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
Referenced by blender::ed::asset::index::AssetEntryWriter::add_id_name().
|
constexpr |
|
constexpr |
|
constexpr |
Indexer for asset libraries.
Indexes are stored per input file. Each index can contain zero to multiple asset entries. The indexes are grouped together per asset library. They are stored in BKE_appdir_folder_caches + /asset-library-indices/<asset-library-hash>/<asset-index-hash>_<asset_file>.index.json.
The structure of an index file is
NOTE: entries, author, description, tags and properties are optional attributes.
NOTE: File browser uses name and idcode separate. Inside the index they are joined together like ID.name. NOTE: File browser group name isn't stored in the index as it is a translatable name.
Referenced by blender::ed::asset::index::AssetIndex::AssetIndex(), and blender::ed::asset::index::AssetIndex::get_version().
Definition at line 773 of file asset_indexer.cc.
References CLOG_INFO, LOG, blender::ed::asset::index::AssetLibraryIndex::remove_unused_index_files(), and user_data.
Referenced by asset_indexer().
Definition at line 768 of file asset_indexer.cc.
References user_data.
Referenced by asset_indexer().
|
static |
Definition at line 385 of file asset_indexer.cc.
References ATTRIBUTE_ENTRIES(), BLI_assert, BLI_linklist_prepend(), blender::io::serialize::DictionaryValue::create_lookup(), element, FileIndexerEntries::entries, init_indexer_entry_from_value(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_ptr(), and MEM_callocN.
Referenced by blender::ed::asset::index::AssetIndex::extract_into().
|
static |
Definition at line 349 of file asset_indexer.cc.
References blender::ed::asset::index::AssetEntryReader::add_properties_to_meta_data(), blender::ed::asset::index::AssetEntryReader::add_tags_to_meta_data(), BLODataBlockInfo::asset_data, AssetMetaData::author, BKE_asset_metadata_create(), BLI_strncpy(), AssetMetaData::catalog_id, AssetMetaData::catalog_simple_name, FileIndexerEntry::datablock_info, AssetMetaData::description, blender::ed::asset::index::AssetEntryReader::get_author(), blender::ed::asset::index::AssetEntryReader::get_catalog_id(), blender::ed::asset::index::AssetEntryReader::get_catalog_name(), blender::ed::asset::index::AssetEntryReader::get_description(), blender::ed::asset::index::AssetEntryReader::get_idcode(), blender::ed::asset::index::AssetEntryReader::get_name(), blender::ed::asset::index::AssetEntryReader::has_author(), blender::ed::asset::index::AssetEntryReader::has_description(), FileIndexerEntry::idcode, MEM_mallocN, and BLODataBlockInfo::name.
Referenced by init_indexer_entries_from_value().
|
static |
Definition at line 760 of file asset_indexer.cc.
References BLI_strnlen(), and blender::ed::asset::index::AssetLibraryIndex::init_unused_index_files().
Referenced by asset_indexer().
|
static |
Definition at line 320 of file asset_indexer.cc.
References BLODataBlockInfo::asset_data, ATTRIBUTE_ENTRIES(), FileIndexerEntry::datablock_info, blender::io::serialize::ContainerValue< Container, V, ContainerItem >::elements(), FileIndexerEntries::entries, init_value_from_file_indexer_entry(), LinkNode::next, and result.
Referenced by blender::ed::asset::index::AssetIndex::AssetIndex().
|
static |
Definition at line 291 of file asset_indexer.cc.
References BLODataBlockInfo::asset_data, AssetMetaData::author, BLI_listbase_is_empty(), AssetMetaData::catalog_id, AssetMetaData::catalog_simple_name, FileIndexerEntry::datablock_info, AssetMetaData::description, FileIndexerEntry::idcode, BLODataBlockInfo::name, AssetMetaData::properties, result, and AssetMetaData::tags.
Referenced by init_value_from_file_indexer_entries().
|
static |
Definition at line 689 of file asset_indexer.cc.
References CLOG_INFO, blender::ed::asset::index::AssetIndexFile::constains_entries(), blender::ed::asset::index::AssetIndex::CURRENT_VERSION, blender::ed::asset::index::AbstractFile::exists(), FILE_INDEXER_ENTRIES_LOADED, FILE_INDEXER_NEEDS_UPDATE, blender::ed::asset::index::AssetIndexFile::filename, blender::ed::asset::index::AssetIndexFile::is_older_than(), LOG, blender::ed::asset::index::AssetIndexFile::mark_as_used(), blender::ed::asset::index::AssetIndexFile::read_contents(), and user_data.
Referenced by asset_indexer().
|
static |
Definition at line 745 of file asset_indexer.cc.
References CLOG_INFO, blender::ed::asset::index::BlendFile::get_file_path(), blender::ed::asset::index::AssetIndexFile::get_file_path(), LOG, user_data, and blender::ed::asset::index::AssetIndexFile::write_contents().
Referenced by asset_indexer(), and rna_def_mtex_common().